Giter Club home page Giter Club logo

ctf_platform's Introduction

Sieberrsec CTF Platform

Sieberrsec CTF platform. A Jeopardy CTF platform designed with various neat features to aid in training and learning. Written in ReactJS and NodeJS

The platform is still currently in early alpha and in active development. There is unfortunately no easy way to deploy the platform at the moment, but we welcome any contributions to change this ๐Ÿ˜„.

You can find a working copy of the platform here used by our club, but we are unfortunately unable to provide a demo account.

Feel free to take a look at the screenshots below for a peek at what the platform can do!

Features

  • "Categories" for better organization of challenges into different "events"
  • Sorting of challenges by their tags
  • Announcements with markdown support
  • Markdown supported Challenge Descriptions that allow you to add code blocks with syntax highlighting, math and more
  • Writeup links per challenge (along with the option to only release writeups after submitting the flag)
  • Challenge Creator Role so as to allow challenge authors to submit challenges without having full admin access
  • Links to each challenge so that individual challenges can be shared
  • Easy management of challenges and users
    • Disable registration, change permissions etc.
  • Juicy React-Spring transitions

Rough Usage Guide

  • Clone the /client and /api directories to the places where you want to host the client and API. You can use something like nginx to host and serve the files

Client

  • Install NodeJS
  • Run npm i inside /client to install the dependencies
  • Modify window.ipAddress inside /client/src/app.js to wherever your API is hosted at
  • Make any other modifications you want in src and then npm run build to compile the client.
  • The resulting client files will be located in /client/build. Copy them into a place where you can serve them to the web.

Server

  • Install MongoDB by following this and NodeJS (if you haven't)
  • Run npm i inside /api to install the dependencies
  • Use pm2 or anything else to run api.js in the background (E.g pm2 start api.js)

Screenshots

image

Challenges page. Includes "Categories" to better sort challenges into various events and more

In each category, challenges are automatically sorted according to the tags assigned to each challenge by default. You can also all the challenges in a category by switching to "Sort by Category" mode and sort them using various sort options such as in Ascending Amount of Points

Modal for a challenge

Scoreboard of the platform

Admin panel showing the list of challenges. Here you can create, edit and delete challenges.

Create a new challenge page

Profile page of a user

Home page with announcements

Challenge creation page for challenge authors without access to the admin panel

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.