
KI-geführtes CTF - Brechen Sie mit Claude Code als Trainer in einen echten Server ein
Ein CTF, bei dem du KI nutzt, um die Flagge zu erobern.
Keine Pentesting-Erfahrung? Kein Problem. Claude Code fungiert als dein persönlicher Trainer – es richtet die Umgebung ein, lehrt dich die Werkzeuge und führt dich Schritt für Schritt durch echte Angriffstechniken. Du tippst jeden Befehl selbst.
SNet ist eine angreifbare virtuelle Maschine, die aus einem echten Server erstellt wurde, der tatsächlich in Produktion war. Dies ist keine Lehrbuchübung – du wirst die Art von Chaos vorfinden, die echte Sysadmins hinterlassen: Konfigurationsdateien, übrig gebliebene Skripte, vergessene Anmeldedaten und schlechte Entscheidungen, die aufeinander aufbauen.
Es gibt 10 Angriffswege zu entdecken. Bei jedem Durchlauf nimmst du einen anderen Pfad und erhältst weniger Hinweise. Wenn du alle gefunden hast, wirst du sowohl wie ein Angreifer als auch wie ein Verteidiger denken.
Wenn du ein Terminal öffnen kannst, kannst du SNet spielen.
git clone https://github.com/hrmtz/SNet.git
cd SNet
vagrant up
Alle VMs (KI-Trainer, Kali, Ziel), Netzwerk und Portweiterleitung – ein Befehl.
WSL2-Benutzer: Installiere die Linux-Version von Vagrant in WSL, nicht die Windows-Version. Stelle sicher, dass diese Umgebungsvariablen gesetzt sind (füge sie deiner
~/.bashrcoder~/.zshrchinzu):export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1" export PATH="$PATH:/mnt/c/Program Files/Oracle/VirtualBox"
Hinweis: Die Ziel-VM zeigt während
vagrant upeine SSH-Authentifizierungs-Timeout an – das ist zu erwarten. Die Zielmaschine ist eine CTF-Maschine und erlaubt keinen Vagrant-SSH-Zugriff. Solangevagrant statussie alsrunninganzeigt, ist alles in Ordnung.
| VM | Befehl | Anmerkungen |
|---|
Beim ersten Login startet Claude Code automatisch und fragt dich, eine Authentifizierungsmethode zu wählen:
Sage "Please set up SNet" – der Trainer erledigt den Rest.
Recon → Exploit → Capture the flag
↑ ↓
← Fix it as a sysadmin ←
(repeat × 10)
Dieses Repository unterstützt mehrere CTF-Szenarien. Standardmäßig startet vagrant up SNet1 (Anfänger).
| Szenario | Befehl | Beschreibung |
|---|---|---|
| SNet1 | vagrant up | Einbruch in ein unverschlossenes Haus (Anfänger) |
| SNet2 | SNET=2 vagrant up | Versteckt vor den Wachen bleiben (Fortgeschritten) |
SNet2 fügt einen Zabbix-Überwachungsserver hinzu – du musst unter aktiver Überwachung agieren. Siehe SNet2 README für Details.
Um ein bestimmtes Szenario zu starten, wenn die VMs bereits laufen:
SNET=2 vagrant up snet2-target snet2-zabbix # add SNet2 VMs
SNET=2 vagrant provision claude # configure trainer for SNet2
Die Kali-VM ist mit vorinstallierten rlwrap und tmux ausgestattet, um Reverse Shells komfortabler zu machen.
Empfohlener Arbeitsablauf:
# 1. Start a tmux session
tmux new-session -t attack
# 2. Use rlwrap with nc for line editing and history
rlwrap nc -lvnp 4444
# 3. Scroll up/down in tmux: Ctrl+B, then [
# Exit scroll mode: q
Warum? Rohe Reverse Shells haben keine Pfeiltasten, Tab-Vervollständigung und Rückscrollen. rlwrap fügt Readline-Unterstützung hinzu (Verlauf, Bearbeitung), und tmux bietet Rückscrollen und Fensterverwaltung.
Neue Szenarien werden automatisch während der Provisionierung abgerufen. Um die neuesten zu erhalten:
vagrant provision claude
Dies zieht die neuesten Versionen aller verfügbaren Szenarien, ohne die gesamte VM erneut herunterzuladen.
Dieses Projekt wird nur zu Bildungszwecken bereitgestellt. Nutze es verantwortungsvoll.
| AI Trainer | vagrant ssh claude or ssh -p 2222 snet@localhost |
| Kali | vagrant ssh kali |
| Target | Kein SSH vom Host – greife es von Kali an (10.0.10.20) |