
Containerisiertes Lehr-CTF-Lab zur Emulation von CVE-2026-80428 (CWE-502 Deserialisierung) für sicheres, isoliertes Üben von Studierenden und Forschenden.
Bildungsemulator der in CVE-2026-80428 (CWE-502: Deserialisierung nicht vertrauenswürdiger Daten) beschriebenen Schwachstellenmechanik.
Dies ist keine echte ILIAS-Installation und kein weaponisiertes Exploit-Paket. Es ist ein vollständig containerisiertes, isoliertes Labor für Studierende, Praktikanten und Sicherheitsforscher.
__destruct() ┌──────────────────────┐
│ CTF HOST │
└──────────┬───────────┘
│ 127.0.0.1:8080
Docker Network (ctfnet)
│
┌───────────────────────┼────────────────────────┐
│ │ │
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ ATTACKER │ │ TARGET │ │ OBSERVER │
│ Python/curl │ │ PHP/Apache │ │ Logs/Evidence│
│ PHP CLI │ │ Vulnerable │ │ │
└──────────────┘ │ Emulator │ └──────────────┘
└──────────────┘
Optionales gepatchtes Ziel auf 127.0.0.1:8081 über das Compose-Profil patched.
git clone https://github.com/shivammittal2403/cve-2026-80428-ctf.git
cd cve-2026-80428-ctf
cp .env.example .env
docker compose build
docker compose up -d
docker compose ps
Öffnen: http://127.0.0.1:8080/
Angreifer-Shell:
docker exec -it cve80428-attacker bash
| Stufe | Schwerpunkt | Punkte |
|---|---|---|
| 1 | Aufklärung | 100 |
| 2 | Sitzungsermittlung | 150 |
| 3 | PHP-Serialisierung | 150 |
| 4 | Objektlebenszyklus / Destruktor | 200 |
| 5 | Vollständige Kette | 250 |
| 6 | Behebung (gepatchtes Ziel) | 150 |
Unauthenticated Request → LTI (/lti.php) → Session Storage
→ Logout (/logout.php) → unserialize() → Object → __destruct()
→ Controlled write (/drop/) → CTF Flag
Siehe docs/ATTACK_FLOW.md.
/var/www/html/drop/ mittels basename()system() / exec() / Reverse Shellsmake build && make up
make attacker
make health && make test
make reset
| Dokument | Zielgruppe |
|---|---|
docs/STUDENT.md | Studierende |
docs/INSTRUCTOR.md | Dozierende |
docs/VULNERABILITY.md | Zuordnung echter CVE ↔ Lab |
docs/ATTACK_FLOW.md | Angriffskettendiagramme |
docs/REMEDIATION.md | Patch-Muster |
docs/SOLUTIONS.md | Nur für Dozierende |
MIT — nur für Bildungszwecke. Siehe SECURITY.md.