
Ein erweiterter Proof-of-Concept-Exploit für CVE-2025-52691 (SmarterMail Arbitrary File Upload RCE) mit Funktionen auf APT-Niveau wie Stealth-Verschleierung, Persistenz, Exfiltration und interaktivem Modus. Nur für Bildungszwecke und autorisierte Tests. Credits an das ursprüngliche PoC von yt2w/CVE-2025-52691.
Dies ist ein erweiterter Proof-of-Concept-Exploit (PoC) für CVE-2025-52691, eine kritische Schwachstelle in der E-Mail-Server-Software SmarterTools SmarterMail, die nicht authentifizierten Benutzern das Hochladen beliebiger Dateien ermöglicht und potenziell zu Remote-Code-Ausführung (RCE) führt. Diese Version integriert Techniken auf APT-Ebene für verbesserte Tarnung, Persistenz und operative Fähigkeiten und eignet sich daher für fortgeschrittene Penetrationstests und Red-Teaming-Szenarien.
WARNUNG: Dieses Tool dient ausschließlich Bildungs- und autorisierten Testzwecken. Die unbefugte Verwendung gegen Systeme ohne ausdrückliche Genehmigung ist illegal und unethisch. Der Autor übernimmt keine Haftung für Missbrauch.
requests, uuid, base64, random, time, logging, re
pip install requestsÜber die Standardbibliotheken hinaus sind keine weiteren Abhängigkeiten erforderlich.
Klonen Sie das Repository und führen Sie das Skript mit Python aus.
python exploit.py <target_url> [options]
<target_url>: Die Basis-URL des SmarterMail-Servers (z. B. https://mail.example.com).--targets-file <file>: Pfad zu einer Datei, die eine Liste von Ziel-URLs enthält (eine pro Zeile).-c, --command <cmd>: Befehl, der nach dem Shell-Upload ausgeführt werden soll (z. B. whoami).-t, --timeout <seconds>: Anfrage-Timeout (Standard: 30).--proxy <url>: Proxy-URL (z. B. http://127.0.0.1:8080).--no-verify: SSL-Zertifikatsprüfung deaktivieren.--check-only: Nur prüfen, ob das Ziel erreichbar ist und offenbar SmarterMail ist.--persistence: Persistenz über eine geplante Aufgabe einrichten.--exfil <remote:local>: Eine Datei exfiltrieren (z. B. C:\\path\\to\\file.txt:local_copy.txt).--interactive: Interaktiven Befehlsausführungsmodus starten.--cleanup: Die hochgeladene Shell nach der Verwendung entfernen.--log-level <level>: Protokollierungsstufe festlegen (DEBUG, INFO, WARNING, ERROR; Standard: INFO).Basis-Exploit:
python exploit.py https://mail.vulnerable.com
Einen Befehl ausführen:
python exploit.py https://mail.vulnerable.com -c "systeminfo"
Mit Proxy und Persistenz:
python exploit.py https://mail.vulnerable.com --proxy http://127.0.0.1:8080 --persistence
Interaktiver Modus mit Bereinigung:
python exploit.py https://mail.vulnerable.com --interactive --cleanup
Stapel-Exploit aus Datei:
python exploit.py --targets-file targets.txt
Eine erfolgreiche Ausnutzung zeigt den Shell-Pfad, die Zugriffs-URL (mit Auth-Passwort) und alle Befehlsausgaben an. Protokolle werden auf der Konsole ausgegeben; für die Protokollierung in Dateien passen Sie bei Bedarf das setup_logging des Skripts an.
Diese erweiterte Version basiert auf dem ursprünglichen PoC von yt2w. Wesentliche Änderungen umfassen Funktionen auf APT-Ebene, Verschleierung und Verbesserungen der Benutzerfreundlichkeit. Dank an den ursprünglichen Autor für die grundlegende Arbeit.
Dieses Tool demonstriert eine Schwachstelle zu Bildungszwecken. Verwenden Sie es verantwortungsbewusst und nur auf Systemen, die Sie besitzen oder für die Sie eine ausdrückliche Testgenehmigung haben. Stellen Sie die Einhaltung aller geltenden Gesetze und ethischen Richtlinien sicher. Die Entwickler lehnen jede Verantwortung für Missbrauch ab.
Wenn Sie auf Probleme stoßen oder Vorschläge haben, eröffnen Sie ein Issue auf GitHub.
MIT-Lizenz. Siehe LICENSE für Details.