Giter Site home page Giter Site logo

shellphish / ictf-framework Goto Github PK

View Code? Open in Web Editor NEW
330.0 330.0 90.0 21.67 MB

The iCTF Framework, presented by Shellphish!

License: Other

Shell 1.05% JavaScript 2.01% HTML 0.09% Python 86.68% Makefile 0.02% C++ 0.08% C 5.99% Smarty 0.01% HCL 1.78% Dockerfile 0.39% Sass 1.27% Jinja 0.56% TypeScript 0.08%
aws cloud ctf hacking

ictf-framework's People

Contributors

adamdoupe avatar degrigis avatar dependabot[bot] avatar giovannivigna avatar lukas-dresel avatar phat3 avatar robmcl4 avatar sidsenkumar11 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ictf-framework's Issues

Automatically generate the network configuration

Right now, everything is in the same network (samenet branch). The router/ folder documents an alternative setup with VPNs and randomization, but this needs to be automated.

We need to:

  • implement the creation of the Router VM in create_vms.py
  • idem for VPN VMs
  • change the network configurations generated by create_team() and create_org() in create_vms.py as needed

VM Base Not Open Source

Organization-base and iCTF-base, referenced in create-vms.py, are not released, so it is difficult to reproduce the create-vms.py functionality.

Perhaps we can have a better way of building these VMs, so that I could do it from scratch on a server (let's say in openstack)?

The basic idea is that I want to run a mock ictf framework on openstack infrastructure, so I'm setting up the VMs by hand. It's easy enough following create-vms.py, but the problem is in figuring out the installed software on the base images. So I had to create a game with bundles on the ictf website.

Modify VM disk image safely

At the moment we are using libguestfs to mount base VMs and modify them. However there have been cases of race conditions when trying to umount those images.
An example is explained in the guestmount man page (or here: http://libguestfs.org/guestmount.1.html)
A user reported to have FS corruption when he was trying to mount-modify-umount vdi images through a VirtualBox shared directory.
Soon we'll decide on a better strategy: either using libguestfs directly or switching to a disk format that doesn't need it.

Status of services

Currently there is no way to know if your services are accepting and giving back flags to the scorebot.

Extract services from this repository?

Does it go against the goals of this project to simply define an "interface" for services (which there might already be) but not provide any from within this repository (perhaps move them to ucsb-seclab/ictf-services and then pull them in when bootstrapping -- if desired)?

iscontinued?

Hello boys, is the project dead or you plan to make new changes?
Hints:

  • We played ictf 2015 on Decemeber/15 but last commit is about a year ago.
  • Box links are broken.

Thanks
Einar

Dashboard shows wrong service state

Hi,

we are currently using your framework and found a problem with the Service state on the dashboard. If a service is running the state shows "offline" and if the VM is not even online the state is either "online" or "online but disfunctional".

As state 2 is the starting state in the MySQL dbms the scorebot seems to enter wrong numbers into there.

Redis-server

Hey Jacopo,
I've set up caching and rate limiting on the website. To make it work, I need redis-server on the organization host.
Thanks!

document version

Hi, I want to use from iCTF platform. But when I go forward with your document in "Forging the machines" step I don't have "ictf-framework/basehost/scripts" directory and shell scripts (export_env_aws_us-west-1.sh, export_env_aws_us-west-2.sh, etc) inside it. I think previous steps are done successfully but I don't know where is the problem. Can you help me?

Getting flag-ids programatically

I'm sure people would figure out a way to scrape flag-ids from the website, but it might be better if there was some API or something they could use to get the flag-id for a particular service.

Not sure when the VMs are done

Refreshing constantly doesn't seem efficient. Some sort of status on the page or an email when it's done would be nice, but not required.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.