Bildungs-Repository, das die Analyse und Ausnutzung von CVE-2025-5548 (FreeFloat FTP Server Pufferüberlauf) dokumentiert. Enthält eine wiederverwendbare Schwachstellenanalysemethodik, statisches Reverse Engineering, schrittweise Exploitation und einen 0-Day-Ansatz-Leitfaden mit Fuzzing- und Debugging-Techniken.

Anderson Steven — Master in Cybersicherheit, Modul 6 (Sicherheitslücken) Einzelabgabe: Methodik zur Analyse und Exploitation von Sicherheitslücken
Ich wollte nicht einfach nur "hier ist der funktionierende Exploit" abgeben. Dieses Repository zeigt, wie ich arbeite, wenn ich auf eine Speicherkorruptions-Schwachstelle stoße: Was ich zuerst untersuche, in welcher Reihenfolge ich Hypothesen ausschließe, welche Tools ich in jeder Phase verwende und warum. Ich verwende CVE-2025-5548 als roten Faden, da es ein kleiner, handhabbarer Fall ist, aber das Kerndokument dieses Repos – METHODOLOGY.md – ist kein Tutorial "wie man FreeFloat FTP ausnutzt", sondern meine Denkweise für jede Binärdatei, anpassbar auf andere Fälle.
FreeFloat FTP Server 1.0 ist ein über ein Jahrzehnt alter FTP-Server für Windows, der nicht mehr gewartet wird und trotzdem noch in Exploitationslaboren verwendet wird, weil sein Fehler lehrbuchhaft ist: Bei der Verarbeitung bestimmter Protokollbefehle (NOOP ist der, den ich hier behandle, obwohl es nicht der einzige ist) kopiert er die vom Client gesendeten Daten mit in einen festen Puffer auf dem Stack, ohne die Länge der Eingabe zu prüfen. Wenn man mehr Daten sendet, als hineinpassen, überschreibt man die gespeicherte Rücksprungadresse auf dem Stack und kontrolliert EIP.
strcpyEtwas, das mir bei der Recherche zur Geschichte dieses Bugs auffiel: Derselbe Programmierfehler, ausgelöst durch verschiedene FTP-Befehle (USER, PASS, HOST, NOOP...), wurde als mehrere verschiedene CVEs registriert (CVE-2025-5548, CVE-2025-5667, CVE-2025-5220, CVE-2025-5075...).
METHODOLOGY.md – Kerndokument: meine Methodik zur Analyse und Exploitation, Phase für Phase, mit den Tools und der Denkweise, die ich in jeder anwende, und meine Herangehensweise an eine unbekannte Schwachstelle (0-Day).00-Environment/ – wie ich das Labor aufgebaut habe (Windows-Opfer, Linux-Angreifer, installierte Software, Netzwerk); enthält die anfällige Binärdatei in Binaries/.01-Vulnerability-Analysis/ – Diagnose der Binärdatei: wo der Fehler liegt und warum er auftritt, mit statischem Reverse Engineering.02-Exploitation/ – der vollständige Exploitationsprozess Schritt für Schritt dokumentiert, mit den Skripten, die ich in jeder Phase verwendet habe.03-0day-Approach/ – wie ich die Suche nach einer noch unentdeckten Sicherheitslücke angehen würde: Fuzzing, Diffing, Reversing, Umgebung.images/ – Screenshots des Labors, ein Unterordner pro Abschnitt.Alle Tests wurden in einer isolierten Laborumgebung durchgeführt (virtuelle Maschinen im internen Netzwerk, ohne Zugang zu Systemen Dritter). Der Inhalt dient ausschließlich zu Bildungszwecken; er ist nicht für die Verwendung gegen Infrastrukturen ohne Autorisierung gedacht.
Ich habe das Repository TheMalwareGuardian/CVE-2025-5548 als Grundlage verwendet.