
CTFd v3.8.7
CTFs, wann immer du sie brauchst
Was ist CTFd?
CTFd ist ein Capture-The-Flag-Framework, das auf Benutzerfreundlichkeit und Anpassbarkeit ausgelegt ist. Es enthält alles, was du für die Durchführung eines CTFs benötigst, und lässt sich einfach mit Plugins und Themes anpassen.

Funktionen
- Erstelle deine eigenen Challenges, Kategorien, Hinweise und Flags über die Admin-Oberfläche
- Challenges mit dynamischer Punktevergabe
- Unterstützung für freischaltbare Challenges
- Challenge-Plugin-Architektur zur Erstellung eigener benutzerdefinierter Challenges
- Statische und Regex-basierte Flags
- Benutzerdefinierte Flag-Plugins
- Freischaltbare Hinweise
- Datei-Uploads auf den Server oder ein Amazon-S3-kompatibles Backend
- Challenge-Versuche begrenzen & Challenges ausblenden
- Automatischer Brute-Force-Schutz
- Wettbewerbe für Einzelpersonen und Teams
- Benutzer können alleine spielen oder Teams bilden, um gemeinsam zu spielen
- Scoreboard mit automatischer Gleichstandsauflösung
- Punktestände vor der Öffentlichkeit verbergen
- Punktestände zu einem bestimmten Zeitpunkt einfrieren
- Punktediagramme, die die Top-10-Teams vergleichen, und Teamfortschrittsdiagramme
- Markdown-Content-Management-System
- SMTP- und Mailgun-E-Mail-Support
- Unterstützung für E-Mail-Bestätigung
- Unterstützung für „Passwort vergessen“
- Automatischer Start und automatisches Ende des Wettbewerbs
- Verwaltung, Ausblenden und Sperren von Teams
- Passe alles mithilfe der Plugin- und Theme-Schnittstellen an
- Importieren und Exportieren von CTF-Daten für die Archivierung
- Und vieles mehr ...
Installation
Der einfachste Weg, loszulegen, ist die Nutzung einer gehosteten CTFd-Instanz.
Für selbst gehostete Installationen wirf einen Blick in die CTFd-Dokumentation mit Bereitstellungsoptionen und dem Erste-Schritte-Leitfaden.
Nachfolgend findest du eine Zusammenfassung einiger Optionen für das Selbst-Hosten von CTFd:
Docker
Du kannst Docker Compose mit dem folgenden Befehl aus dem Quellrepository verwenden:
docker compose up
Um die automatisch generierten Docker-Images direkt zu verwenden:
docker run -p 8000:8000 -it ctfd/ctfd
Entwicklung
- Installiere uv und führe
uv syncaus, um eine Virtualenv mit installierten Abhängigkeiten zu erstellen.- Du kannst auch in eine bestehende Umgebung mit
pip install -r requirements.txtinstallieren, das ausuv.lockgeneriert wird.
- Du kannst auch in eine bestehende Umgebung mit
- Passe CTFd/config.ini nach deinen Wünschen an.
- Verwende in einem Terminal
uv run serve.pyoderuv run flask run, um in den Debug-Modus zu wechseln.
Live Demo
Support
Für grundlegenden Support kannst du der MajorLeagueCyber-Community beitreten:
Wenn du kommerziellen Support bevorzugst oder ein besonderes Projekt hast, zögere nicht, uns zu kontaktieren.
Verwaltetes Hosting
Du möchtest CTFd nutzen, dich aber nicht um die Verwaltung der Infrastruktur kümmern? Schau dir die CTFd-Website für verwaltete CTFd-Bereitstellungen an.
MajorLeagueCyber
CTFd ist eng mit MajorLeagueCyber integriert. MajorLeagueCyber (MLC) ist ein CTF-Statistik-Tracker, der Eventplanung, Team-Tracking und Single Sign-on für Events bietet.
Wenn du dein CTF-Event bei MajorLeagueCyber registrierst, können Benutzer automatisch einloggen, ihre Einzel- und Teamergebnisse verfolgen, Writeups einreichen und Benachrichtigungen über wichtige Ereignisse erhalten.
Für die Integration mit MajorLeagueCyber registriere einfach ein Konto, erstelle ein Event und hinterlege die Client-ID und das Client-Secret im entsprechenden Abschnitt in CTFd/config.py oder im Admin-Panel:
OAUTH_CLIENT_ID = None
OAUTH_CLIENT_SECRET = None
Danksagungen
- Logo von Laura Barbera
- Theme von Christopher Thompson
- Benachrichtigungston von Terrence Martin
