All Projects → shellphish → Ictf Framework

shellphish / Ictf Framework

Licence: other
The iCTF Framework, presented by Shellphish!

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ictf Framework

Aws Ssh Config
Generate SSH config files from AWS EC2 inventory
Stars: ✭ 229 (-18.51%)
Mutual labels:  aws, cloud
Cloudscraper
CloudScraper: Tool to enumerate targets in search of cloud resources. S3 Buckets, Azure Blobs, Digital Ocean Storage Space.
Stars: ✭ 276 (-1.78%)
Mutual labels:  aws, hacking
Ec2 Plugin
Jenkins ec2 plugin
Stars: ✭ 246 (-12.46%)
Mutual labels:  aws, cloud
Aws Auto Remediate
Open source application to instantly remediate common security issues through the use of AWS Config
Stars: ✭ 191 (-32.03%)
Mutual labels:  aws, cloud
Arvados
An open source platform for managing and analyzing biomedical big data
Stars: ✭ 274 (-2.49%)
Mutual labels:  aws, cloud
Firecamp
Serverless Platform for the stateful services
Stars: ✭ 194 (-30.96%)
Mutual labels:  aws, cloud
Infracost
Cloud cost estimates for Terraform in pull requests💰📉 Love your cloud bill!
Stars: ✭ 4,505 (+1503.2%)
Mutual labels:  aws, cloud
Smogcloud
Find cloud assets that no one wants exposed 🔎 ☁️
Stars: ✭ 168 (-40.21%)
Mutual labels:  aws, cloud
Aws Auto Cleanup
Open-source application to programmatically clean your AWS resources based on a whitelist and time to live (TTL) settings
Stars: ✭ 276 (-1.78%)
Mutual labels:  aws, cloud
Cloudblock
Cloudblock automates deployment of secure ad-blocking for all of your devices - even when mobile. Step-by-step text and video guides included! Compatible clouds include AWS, Azure, Google Cloud, and Oracle Cloud. Cloudblock deploys Wireguard VPN, Pi-Hole DNS Ad-blocking, and DNS over HTTPS in a cloud provider - or locally - using Terraform and Ansible.
Stars: ✭ 257 (-8.54%)
Mutual labels:  aws, cloud
Opencspm
Open Cloud Security Posture Management Engine
Stars: ✭ 191 (-32.03%)
Mutual labels:  aws, cloud
Cloudbrute
Awesome cloud enumerator
Stars: ✭ 268 (-4.63%)
Mutual labels:  cloud, hacking
Aws Lambda Fastify
Insipired by aws-serverless-express to work with Fastify with inject functionality.
Stars: ✭ 190 (-32.38%)
Mutual labels:  aws, cloud
Cluster Lifecycle Manager
Cluster Lifecycle Manager (CLM) to provision and update multiple Kubernetes clusters
Stars: ✭ 200 (-28.83%)
Mutual labels:  aws, cloud
Externalsecret Operator
An operator to fetch secrets from cloud services and inject them in Kubernetes
Stars: ✭ 177 (-37.01%)
Mutual labels:  aws, cloud
Engine
Deploy your apps on any Cloud provider in just a few seconds
Stars: ✭ 1,132 (+302.85%)
Mutual labels:  aws, cloud
Diagram Maker
A library to display an interactive editor for any graph-like data.
Stars: ✭ 2,086 (+642.35%)
Mutual labels:  aws, cloud
Pulumi Aws
An Amazon Web Services (AWS) Pulumi resource package, providing multi-language access to AWS
Stars: ✭ 169 (-39.86%)
Mutual labels:  aws, cloud
Cloud Reports
Scans your AWS cloud resources and generates reports. Check out free hosted version:
Stars: ✭ 255 (-9.25%)
Mutual labels:  aws, cloud
Serverlessbydesign
A visual approach to serverless development. Think. Build. Repeat.
Stars: ✭ 254 (-9.61%)
Mutual labels:  aws, cloud

The iCTF Framework 3.0

This is the framework that Shellphish uses to host the iCTF.

The iCTF Framework is described in a paper presented at the Usenix 3GSE workshop in 2014.

We released this in the hope that it allows educators and trainers to host their own A/D CTFs. This framework is free for commercial use, but the support that we can provide is limited.

We are planning to release more technical documentation regarding each components in the future; as for now you can find instruction on how to create a game here.

If you have questions, please send an email to [email protected].

DISCLAIMER: This framework is still a work in progress and this release have to be considered a BETA version. New pull requests and new issues are welcome :)

TODOs and known issues

  • The codebase needs to be cleaned from old pieces of unused code.
  • Finish to port every component to python 3.
  • Finish to document the various components.
  • Extend the framework to support multiple cloud providers other than AWS.
  • The CTF cannot be run for more than 12 hours because the credentials we use to login to the docker registry will expire after such time and we currently don't have a way to renew them when the game is running.

Database

This is the central database that tracks the state of the game. It runs on the Database VM and exposes a RESTful API.
Note that this database should not be directly accessed by the teams, which instead should go through the team services component.

Gamebot

The Gamebot is the component responsible for advancing the competition. The competition is divided into ticks. At the beginning of each tick, the gamebot decides which scripts need to be executed by the scriptbot (e.g., scripts to set flags, retrieve flags, or test services) and writes the schedule in the central database. Then, it extracts from the database the data about the previous tick (e.g., flag submitted and the status of service checks) and computes the points to be assigned to each team. The new scores are stored in the database, so that they can be displayed by the dashboard component.

Scriptbot

The scriptbot is responsible for the execution of the scripts scheduled by the gamebot. The scriptbot extracts the scripts scheduled for execution from the central database, and then runs them. For example, the scripts retrieve flags that have been set in the previous tick, or check if the services are up and functional.

Router

The router component is responsible for routing the traffic between the teams in the competition. The component implements an OpenVPN service. Each team is given a VM that acts as the router for the team. The traffic among teams needs to be anonymized to prevent teams from distinguishing scriptbot-generate traffic from team traffic.

Creating a CTF competition

For more information visit our wiki page about running a class CTF

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].