Skip to content

hugsy/ctfhub

Repository files navigation

Logo

CTFHub

Where CTFs happen

Code style: black Licence MIT Python-Version 3.10 CTFHub on Discord

What is it?

A collaborative environment for teams playing CTFs. It provides out-of-the-box everything to manage and collaborate on the CTFs and challenges you and your team are working on.

Note: If you're looking for a platform for hosting CTFs use CTFd.

Features

A non-exhaustive list of features:

  • Django 4 running on Python 3.10, with a clean Bootstrap 5 interface
  • Key-in-hands setup via docker-compose
  • Fully integrated around HedgeDoc: smart markdown note mechanism, with tons of features
  • Possibility to create and play private CTFs for one player only, making it easy to track your progress on learning platforms like Root-Me, PicoCTF, PentesterLab and others.
  • Add "guests" to specific CTFs, allowing non team members to have a limited view of the context
  • View CTF stats, and track members' involment through a cool podium ranking
  • CTFTime API integration: CTF information from CTFTime in one click
  • CTFd/rCTF challenge(s) can optionally be pre-populated locally
  • Basic search engine
  • Easily export your challenge notes to create a blog post on Github Pages
  • Jitsi integration: instantly jump on video chat with your team mate
  • Public & Self-hosted Excalidraw integration: draw & share ideas with your team mates
  • Discord notifications on events (CTF registration, challenge scoring, etc.)
  • and of course, a Dark mode to save your eyes during those painful sleepless nights

Build

For most people, this will suffice:

$ git clone https://github.com/hugsy/ctfhub && cd ctfhub
$ cp .env.example .env
### CHANGE THE CREDENTIALS IN .env ###
$ nano .env
### BUILD EXCALIDRAW USING .env VARIABLES ###
$ docker compose up -d --build

For more advanced building cases, refer to the Build page in the documentation.

Gallery

Check out the docs

Contribution

CTFHub was created and maintained by @_hugsy_, but kept fresh thanks to all the contributors.

contributors-img

If you just like the tool, consider dropping on Discord (or Twitter or other) a simple "thanks", it is always very appreciated.

And if you can, consider sponsoring me - it really helps dedicating time and resources to the projects!

Credits and Links