
Autorisiertes Kali-Metasploitable2-Lab unter Verwendung von Python und Nmap NSE zur Validierung von CVE-2011-2523 in vsFTPd 2.3.4.
⚠️ Nur autorisiertes Labor — durchgeführt in einem isolierten VirtualBox-Host-Only-Netzwerk mit Kali Linux und Metasploitable2. Es wurden zu keinem Zeitpunkt nicht autorisierte Systeme gescannt oder aufgerufen.
CVE-2011-2523 ist eine der bekanntesten Supply-Chain-Kompromittierungen in der Geschichte der Open-Source-Software. Im Jahr 2011 wurde der offizielle Quellcode von vsFTPd 2.3.4 auf dem Download-Server des Projekts mit einer Backdoor versehen — ein Angreifer modifizierte die Binärdatei so, dass die Eingabe eines Benutzernamens mit :) eine Backdoor-Shell auf TCP-Port 6200 auslöste und jedem entfernten Angreifer Root-Zugriff gewährte.
Dieses Labor validiert CVE-2011-2523 anhand einer strukturierten Methodik zur Schwachstellenbewertung:
ftp-vsftpd-backdoorDies ist echte Arbeit zur Schwachstellenbewertung — dieselbe Methodik, die Penetrationstester und SOC-Analysten bei autorisierten Sicherheitsbewertungen anwenden.
| Komponente | Details |
|---|---|
| Angriffsmaschine | Kali Linux |
| Zielmaschine | Metasploitable2 (absichtlich verwundbar) |
| Hypervisor | Oracle VirtualBox |
| Netzwerk | Host-Only-Adapter — isoliert, kein Internetzugang |
| Werkzeuge | Python 3, Nmap, NSE, python-nmap-Bibliothek |
| Ziel-IP | 192.168.56.103 |
| Feld | Details |
|---|---|
| CVE-ID | CVE-2011-2523 |
| Betroffene Software | vsFTPd 2.3.4 |
| CVSS-Score | 10.0 — Kritisch |
| Schwachstellentyp | Backdoor / Supply-Chain-Kompromittierung |
| Angriffsvektor | Netzwerk — keine Authentifizierung erforderlich |
| Auswirkung | Entfernte Root-Shell (uid=0) |
| Entdeckt | Juli 2011 |
| MITRE ATT&CK | T1195.002 (Compromise Software Supply Chain) |
Funktionsweise der Backdoor:
Wenn ein Client eine Verbindung zu vsFTPd 2.3.4 herstellt und einen Benutzernamen sendet, der die Zeichen :) (Smiley) enthält, wird der Backdoor-Code ausgelöst — es öffnet sich eine Listener-Shell auf TCP-Port 6200. Eine Verbindung zu Port 6200 gewährt eine interaktive Root-Shell ohne weitere Authentifizierung.
Step 1: Confirm target IP on Host-Only network
└── ifconfig / ip addr on Metasploitable2
Step 2: Verify connectivity
└── ping 192.168.56.103 from Kali
Step 3: Service & version detection
└── nmap -sV -p 21 192.168.56.103
└── Confirm: vsftpd 2.3.4
Step 4: Python-automated NSE scan
└── python3 pythonnmap.py --host 192.168.56.103 --ports 21
└── NSE scripts executed:
ftp-anon
ftp-bounce
ftp-libopie
ftp-proftpd-backdoor
ftp-vsftpd-backdoor ← CVE-2011-2523 validation
Step 5: Document findings & remediation
sudo nmap -sV -p 21 192.168.56.103
Ausgabe:
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
sudo python3 pythonnmap.py --host 192.168.56.103 --ports 21
sudo nmap --script ftp-vsftpd-backdoor -p 21 192.168.56.103
| Dienst | Port | Ergebnis | Nachweis |
|---|---|---|---|
| FTP | TCP 21 | vsFTPd 2.3.4 identifiziert — bekannte Version mit Backdoor | Nmap-Dienst-/Versionsscan |
| FTP | TCP 21 | Anonymer FTP-Login erlaubt | ftp-anon-NSE-Ausgabe |
| FTP | TCP 21 | Ziel als anfällig für CVE-2011-2523 bestätigt | ftp-vsftpd-backdoor-NSE-Ausgabe |
| CVE-2011-2523 | TCP 6200 | Backdoor-Shell gab uid=0(root) gid=0(root) zurück | NSE-Validierungsausgabe |



In einer echten Produktionsumgebung würde die Behebung Folgendes umfassen:
| Maßnahme | Priorität |
|---|---|
| vsFTPd 2.3.4 sofort entfernen und durch eine gepatchte Version ersetzen | 🔴 Kritisch |
| Softwareintegrität vor der Installation anhand von SHA-256-Prüfsummen gegen offizielle Hersteller-Hashes verifizieren | 🔴 Kritisch |
| Anonymen FTP-Zugriff deaktivieren, sofern nicht ausdrücklich erforderlich | 🟠 Hoch |
| FTP-Dienstoffenlegung durch Firewall-Regeln und Netzwerksegmentierung einschränken | 🟠 Hoch |
FTP-Authentifizierungsprotokolle auf verdächtige Benutzernamen mit :) überwachen | 🟡 Mittel |
| Erwägen, FTP vollständig durch SFTP (SSH File Transfer Protocol) zu ersetzen | 🟡 Mittel |
| Kontrolle | Framework | Relevanz |
|---|---|---|
| T1195.002 | MITRE ATT&CK | Compromise Software Supply Chain — Backdoor in vsFTPd-Quellcode eingeschleust |
| T1133 | MITRE ATT&CK | External Remote Services — Backdoor öffnet entfernte Root-Shell |
| T1190 | MITRE ATT&CK | Exploit Public-Facing Application — FTP-Dienst aus der Ferne ausgenutzt |
| SI-2 | NIST SP 800-53 | Flaw Remediation — anfällige Software patchen und entfernen |
| SI-7 | NIST SP 800-53 | Software Integrity — Software-Prüfsummen vor dem Deployment verifizieren |
| RA-5 | NIST SP 800-53 | Vulnerability Monitoring and Scanning |
| A.12.6 | ISO 27001 | Management of Technical Vulnerabilities |
Das Skript pythonnmap.py automatisiert den Nmap-NSE-Scan mithilfe der Bibliothek python-nmap:
# Key functionality
import nmap
scanner = nmap.PortScanner()
scanner.scan(
hosts=target_host,
ports=target_ports,
arguments='-sV --script ftp-anon,ftp-bounce,ftp-libopie,ftp-proftpd-backdoor,ftp-vsftpd-backdoor'
)
Vorteile der Python-Automatisierung: