Tutorials

Windows Keylogging con Meterpreter

Durante un'attività di post-exploitation su macchine Windows, una delle tecniche utilizzate per raccogliere informazioni sensibili consiste nel keylogging, ovvero la registrazione degli input da tasti

#exploitation#windows#metasploit

Windows Keylogging con Meterpreter

Introduzione

Durante un'attività di post-exploitation su macchine Windows, una delle tecniche utilizzate per raccogliere informazioni sensibili consiste nel keylogging, ovvero la registrazione degli input da tastiera da parte della vittima. Metasploit Framework, tramite Meterpreter, fornisce una funzionalità nativa di keylogging, che tuttavia presenta alcune considerazioni operative.

Questa guida illustra come utilizzare correttamente questa funzionalità, con focus sulle best practice per massimizzare l'efficacia e la stabilità del keylogger.


Requisiti

  • Una sessione Meterpreter attiva sulla macchina vittima
  • Permessi sufficienti per effettuare la migrazione del processo

Considerazioni preliminari

La funzionalità di keylogging di Meterpreter è notoriamente stabile solo se eseguita all'interno del processo explorer.exe, il quale è il processo della shell grafica di Windows (Desktop Environment). L'esecuzione in altri processi potrebbe portare a risultati incompleti o instabili.


Step operativi

1. Identificare il PID di explorer.exe

bash
pgrep explorer

In alternativa, se pgrep non è disponibile:

bash
ps

E individuare manualmente il PID del processo explorer.exe.

2. Migrare al processo explorer.exe

bash
migrate <PID>

Assicurati che la migrazione sia avvenuta con successo. In caso contrario, valuta la presenza di protezioni EDR/AV o attiva una migrazione forzata con metodi alternativi.

3. Avviare il keylogger

bash
keyscan_start

Questo comando inizia la registrazione di tutti i tasti premuti dall'utente.

4. Dump dei tasti registrati

bash
keyscan_dump

Questo comando mostra i tasti premuti registrati fino a quel momento.

⚠️ Nota: il keylogger non esegue dump automatici. Devi richiamare manualmente keyscan_dump a intervalli regolari per visualizzare il contenuto registrato.

Tecniche avanzate e alternative

Persistenza del keylogger

Il keylogger di Meterpreter non è persistente: se la sessione viene chiusa o persa, il processo termina. Per ottenere un keylogging persistente puoi:

  • Integrare il modulo in un servizio di persistenza (exploit/windows/local/persistence_service)
  • Scrivere uno script custom in PowerShell da far eseguire alla vittima
  • Utilizzare software esterni per il keylogging (es. LogKext, Winlogbeat, etc.)

Evasione e anti-detection

  • Migrare subito in explorer.exe riduce la visibilità del keylogger rispetto a processi insoliti
  • Eseguire il keylogger solo per brevi sessioni per limitare il rischio di detection
  • Usare post/windows/manage/migrate per gestire in maniera automatizzata le migrazioni

Considerazioni Etiche e Legali

L'uso del keylogging è considerato una forma intrusiva di sorveglianza. Deve essere eseguito solo in ambienti controllati (es. laboratori, CTF o penetration test autorizzati) e nel rispetto delle normative sulla privacy e del contratto con il cliente.


Conclusione

Il modulo di keylogging di Meterpreter può rivelarsi uno strumento estremamente utile in fase di raccolta di credenziali e informazioni sensibili. Tuttavia, è fondamentale eseguire la migrazione in explorer.exe per garantirne l'efficacia. Con l'integrazione di tecniche avanzate è possibile estendere la sua durata e aggirare contromisure di sicurezza più sofisticate.