tags: XML mRemoteNG ConfigXML_Cracking


Quando in una macchina troviamo un file config.xml possiamo provare a craccarlo per ottenere delle credenziali valide:

Il file confCons.xml (Password Vault)

Questo file si comporta come una cassaforte digitale (un password manager). Il suo scopo è immagazzinare credenziali tradizionali in modo che l’utente non debba ricordarle o digitarle ogni volta.

  • Meccanismo: Quando mRemoteNG avvia la connessione verso il server RDP, legge il file confCons.xml, decifra l’hash AES per ottenere la password in chiaro originale e la invia al server di destinazione per effettuare il login.

  • Gestione del segreto: Il segreto (la password) viene protetto tramite crittografia simmetrica (AES). Se un attaccante ottiene il file e la chiave di decifratura (o sfrutta il default di mRemoteNG), ottiene l’accesso alle credenziali in chiaro.

Di default, mRemoteNG salva il database delle connessioni all’interno della cartella AppData dell’utente che ha installato o eseguito il software. I percorsi standard da interrogare durante una fase di enumeration sono:

 
C:\Users\<NomeUtente>\AppData\Roaming\mRemoteNG\confCons.xml
 
C:\Users\<NomeUtente>\AppData\Local\mRemoteNG\confCons.xml
 
C:\Tools\mRemoteNG\confCons.xml
 

Comandi di ricerca rapida:

 
Get-ChildItem -Path C:\Users\ -Filter confCons.xml -Recurse -ErrorAction SilentlyContinue
 
Get-ChildItem -Path C:\Users\ -Filter *.xml -Recurse -ErrorAction SilentlyContinue | Select-String -Pattern "mrng:Connections"
 

Una volta trovato il file puoi provare a craccarlo tramite questo programma python.

Una volta scaricato il programma puoi utilizzarlo nella seguente maniera:

python3 mrmoteng_decript.py confCons.xml

Se tutto va bene ti appariranno le credenziali:

python3 mrmoteng_decript.py config.xml 
Name: RDP/Gale
Hostname: Lock
Username: Gale.Dekarios
Password: ty8wnW9qCKDosXo6