GithubHelp home page GithubHelp logo

harite / picoctf-platform-2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rvantonder/picoctf-platform-2

0.0 3.0 0.0 2.25 MB

A genericized version of picoCTF 2014 that can be easily adapted to host CTF or programming competitions.

License: MIT License

Python 66.90% Shell 0.78% HTML 15.44% CoffeeScript 15.06% CSS 1.81%

picoctf-platform-2's Introduction

picoCTF-Platform 2

The picoCTF Platform 2 is the infrastructure on which picoCTF runs. The platform is designed to be easily adapted to other CTF or programming competitions.

picoCTF Platform 2 targets Ubuntu 14.04 LTS but should work on just about any "standard" Linux distribution. It would probably even work on Windows. MongoDB must be installed; all default configurations should work.

Setting Up

  1. Download VirtualBox (easiest, though others can work)
  2. Download Vagrant (vagrantup.com)
  3. vagrant up inside the repo
  4. Wait 20 minutes
  5. vagrant ssh to connect to the VM
  6. Run devploy to deploy the development version of the site
  7. Go to port 8080 on the Host Machine
  8. Remember to always use 127.0.0.1:8080 not localhost:8080

Note: The competition has two modes: competition active and competition inactive. In inactive mode, there are no problems and only registration is available. To change what mode the competition is in, edit api/api/config.py and change the competition dates such that the current date is either inside or outside the range of the competition dates.

Loading the Example Problems (In the vagrant VM)

  1. Run cd ~/api
  2. Run python3 api_manager.py -v problems load /vagrant/example_problems/ graders/ ../problem_static/
  3. Run python3 api_manager.py autogen build 100
  4. Run devploy

Running the Regression Tests

The platform comes with a series of regression tests that should be run before any change is committed to the API. To run the tests:

  1. vagrant ssh into your virtual machine.
  2. Run devploy to bring up an instance from your latest code.
  3. To be able to import the API, cd api and run the tests with ./run_tests.sh

All tests should pass with your changes.

Getting Started

A detailed explanation of the basics of the picoCTF Platform 2 can be found in our Getting Started Guide.

Contact

We are happy to help but no support is guaranteed.

Authors: Jonathan Burket, Tim Becker, Chris Ganas

Copyright: Carnegie Mellon University

License: MIT

Credits: David Brumley, Tim Becker, Chris Ganas, Peter Chapman, Jonathan Burket

Email: [email protected]

picoctf-platform-2's People

Contributors

cganas avatar jburket avatar tim-becker avatar percontation avatar royragsdale avatar groundpound avatar dbrumley avatar casperdcl avatar carlislemc avatar mserrano avatar coreymason avatar rvantonder avatar snurilov avatar

Watchers

harite avatar James Cloos avatar  avatar

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.