
Pädagogische Analyse von CVE-2023-4863 (libwebp Heap-Pufferüberlauf) mit Blue-Team-Erkennungstools, statischem WebP-Scanner, defensivem Java-Validator und isoliertem Docker-Lab mit Valgrind-Speicheranalyse.
| Name | GitHub | Webseite | ||
|---|---|---|---|---|
| Keyvan Arasteh | @keyvanarasteh | [email protected] | keyvanarasteh | qline.tech |
| Name | Matrikelnummer |
|---|---|
| Batuhan Seydi Çelik | 2520****1006 |
| Kursname | Kurscode | Kreditpunkte | Voraussetzungen | Semester |
|---|---|---|---|---|
| Penetrationstest und Schwachstellenanalyse | BGT006 | 3 ECTS | Netzwerkgrundlagen, Linux CLI | 2025-2026 Frühjahr |
Dieses Projekt wurde erstellt, um die Schwachstelle CVE-2023-4863 (libwebp Heap Buffer Overflow) zu Bildungszwecken zu analysieren und praktisch zu zeigen, wie solche Anomalien auf Systemen von der Verteidigungsseite (Blue Team) erkannt werden können.
Diese Schwachstelle hat viele Ökosysteme der Webwelt direkt betroffen:
ReadHuffmanCodes im Speicher weniger Platz für die Tabelle zu als benötigt.BuildHuffmanTable) kommt es zu einem Schreibvorgang über den zugewiesenen Speicherbereich hinaus (Out-Of-Bounds Write).Aus Sicherheitsgründen wird im System kein echter und bewaffneter Red-Team-Code (Exploit) bereitgehalten. Die Schwachstelle wird strukturell getestet.
src/blue_team/webp_scanner.py: Untersucht WebP-Chunk-Strukturen statisch und erkennt anormale Größen.src/blue_team/WebpValidator.java: Ein defensives Java-Codebeispiel, das Datei-Upload-Szenarien simuliert, Größenmanipulation mit Fail-Fast-Logik verhindert und bei beschädigten Dateien ohne Absturz arbeitet (keine Exception wirft).src/red_team/poc.py: Ein zu Bildungszwecken dienender Testgenerator, der keinen echten Payload enthält, aber absichtlich eine gefälschte Chunk-Größe von 60 MB meldet, um zu testen, ob die Analysewerkzeuge des Blue Teams ansprechen.libwebp-1.3.1. Dynamische Analyse mit Valgrind über das Skript analyze_memory.sh zur Untersuchung von Speicherfehlern (Invalid Write).Die Sicherheitsergebnisse werden mit der erstellten JSON-Logger-Infrastruktur protokolliert und über das Blue Team Dashboard (HTML/JS/CSS) im Verzeichnis src/public asynchron und live visualisiert.
