lanjelot / ctfpad

An OK way to manage CTFs for teams playing CTFs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CTFPad

What

A webapp for managing CTFs by teams playing CTFs. If you're looking for a platform for hosting CTFs use CTFd.

Build

For most people, this will suffice:

$ git clone https://github.com/hugsy/ctfpad
$ cd ctfpad
$ nano docker-compose.yml
### CHANGE THE CREDENTIALS IN docker-compose.yml ###
$ docker-compose up -d --build

Features

A non-exhaustive list of features:

  • Full Django + Python 3 code
  • Clean (Bootstrap) interface
  • Key-in-hands setup via docker-compose
  • Fully built on top of HedgeDoc: smart markdown note mechanism, with tons of features
  • Possibility to create and play private CTFs
  • Internal statistic system to track members' involment + basic ranking system
  • Jitsi integration: instantly jump on video chat with your team mate
  • CTFTime integration: import CTF (+ data) from CTFTime in 2 clicks
  • Dark mode (duh!)
  • Basic search engine
  • Whiteboard integration: draw & share ideas with your team mates
  • Discord notifications
  • ...and more to come...

Community

Discord

Gallery

Note: the development of CTFPad is very active, the screenshots below might not reflect the exact state of the tool.

Dashboard

dashboard

View CTF

ctf ctf2

Import CTFs from CTFtime

ctftime

Challenge

challenge1

Statistics

stats

Why

I was fed up of not finding a tool to my liking to manage CTFs for teams playing so I wrote one. You should probably not use it 😋 I wrote it quickly because I really couldn't find something that fitted my needs. Some other projects of the sort of collaboration during CTFs:

  • CTFPad: nice project but NodeJS, so yeah. Also etherpad-lite doesn't support MarkDown easily. I like the name, so I took it shamelessly
  • rizzoma: a horrible outdated collaborative platform, poorly suited for CTFs.

I discovered HedgeDoc (aka. old CodiMD), an awesome platform, 100% Markdown, easily integrable. This project is just an eye-candy around using HedgeDoc as a central platform when doing a challenge collaboratively.

It's a toy project, so there's a lot of TODOs, features will be added (slowly).

Notes

Flag images are downloaded from https://flagpedia.net/

About

An OK way to manage CTFs for teams playing CTFs


Languages

Language:HTML 52.9%Language:Python 43.6%Language:CSS 1.3%Language:Shell 1.2%Language:JavaScript 0.8%Language:Dockerfile 0.3%