Coder Social home page Coder Social logo

solertis / picoctf-platform Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jedav/picoctf-platform

0.0 3.0 0.0 221 KB

A generalized version of picoCTF that can be easily adapted to host CTF or programming competitions

License: MIT License

Shell 79.45% Python 20.55%

picoctf-platform's Introduction

picoCTF-platform

The picoCTF-platform is the infrastructure which is used to run picoCTF. The platform is designed to be easily adapted to other CTF or programming competitions.

Additional documentation can be found on the wiki. Quick Start

  1. git clone --recursive https://github.com/picoCTF/picoCTF-platform.git
  2. cd picoCTF-platform
  3. vagrant up
  4. Navigate to http://192.168.2.2/
  5. Register an account (this user will be the site administrator)

Current Development

The picoCTF-platform is actively being developed towards version 3 and additional documentation on significant platform changes are located on the wiki.

Project Overview

The picoCTF-platform is a superproject composed of three distinct git submodules (this is why you must use --recursive when you clone the project). The submodules are picoCTF-web, picoCTF-shell-manager, and picoCTF-problems. This repository (picoCTF-platform) consists of the necessary scripts and configurations to pull these three components together into a fully functional deployment for demonstration or development. In order to achieve this reproducible environment the project leverages Vagrant.

The picoCTF-web project consists of the competitor facing web site, the api for running a CTF, as well as management functionality for CTF organizers. This is deployed (via the Vagrantfile) as a virtual machine (web) at http://192.168.2.2/. For more information on this component of the picoCTF-platform please consult the documentation in the repository or on the wiki.

The picoCTF-shell-manager project consists of the hacksport library and the shell_manager utility which are used to create, package, and deploy challenges for use in a CTF. The Vagrantfile uses this to deploy a second virtual machine (shell) at 192.168.2.3. This shell-server is where challenge instances will be deployed and is also where competitors are provided an account for use in solving the challenges. For more information on this component of the picoCTF-platform please consult the documentation in the repository or on the wiki.

The picoCTF-problems project consists of CTF challenges that are compatible with picoCTF-platform. These challenges can be easily shared and deployed, or adapted for use in a CTF. When deployed the picoCTF-platform loads some example problems to demonstrate the features of both the web server and the shell-server. For more information on this component of the picoCTF-platform please consult the documentation in the repository or on the wiki.

Contact

We are happy to help but no support is guaranteed.

Authors: Tim Becker, Chris Ganas

Copyright: Carnegie Mellon University

License: MIT

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

Email: [email protected]

Additional Credits

v1 Credits: Collin Petty, Tyler Nighswander, Garrett Barboza

picoctf-platform's People

Contributors

cganas avatar royragsdale avatar keenlooks avatar alpire avatar williamparks avatar

Watchers

James Cloos avatar  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.