Ethical Hacking Academy · Lezione

Pass-the-Hash

Riutilizzo delle credenziali

Lezione 3 di 413 passaggi

Pass-the-Hash è una lezione Ethical Hacking Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Ethical Hacking Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Che cos'è Pass-the-Hash?

Pass-the-Hash (PtH) è una tecnica con cui un attaccante esegue l'autenticazione usando l'hash della password NTLM di un utente invece della password in chiaro.

Poiché l'autenticazione Windows NTLM utilizza l'hash stesso come segreto, non è necessario sottoporlo a cracking per accedere come quell'utente.

L'hash NTLM

Windows memorizza le password degli account come NTLM hashes (un MD4 della password in formato UTF-16). Durante l'autenticazione NTLM, è l'hash, non la password, a dimostrare l'identità.

Questo difetto di progettazione fa sì che sottrarre l'hash equivalga di fatto a sottrarre la password per gli accessi basati su NTLM.

Dove si trovano gli hash

Gli hash possono essere raccolti da diverse posizioni:

  • Il database SAM sui computer locali.
  • La memoria del processo LSASS per gli utenti che hanno effettuato l'accesso.
  • Il file NTDS.dit sui controller di dominio.

Ogni origine richiede privilegi diversi, ma tutte forniscono hash riutilizzabili.

Dump con Mimikatz

Mimikatz è lo strumento classico per estrarre credenziali dalla memoria di LSASS. Il comando sekurlsa::logonpasswords rivela gli hash NTLM degli utenti attualmente connessi.

Per leggere LSASS sono necessari privilegi di amministratore locale (e spesso SeDebugPrivilege).

mimikatz # sekurlsa::logonpasswords

Dump con secretsdump

secretsdump.py di Impacket estrae da remoto gli hash dal SAM e dal database del dominio utilizzando credenziali valide.

Può anche eseguire un DCSync per recuperare gli hash direttamente da un controller di dominio, se si dispone dei corretti diritti di replica.

secretsdump.py corp.local/admin:Pass@10.0.0.10

Passare l'hash

Una volta ottenuto un hash, gli strumenti consentono di autenticarsi direttamente con esso. psexec.py di Impacket accetta un hash con il flag -hashes e fornisce una shell remota.

Il formato è LMHASH:NTHASH; nei sistemi moderni la parte LM è solitamente composta da zeri vuoti.

psexec.py -hashes :a1b2c3d4... administrator@10.0.0.20

Passare l'hash con altri strumenti

Molti strumenti supportano PtH:

  • CrackMapExec / NetExec: prova gli hash su numerosi host.
  • evil-winrm: shell WinRM con un hash.
  • wmiexec.py / smbexec.py: metodi alternativi di esecuzione.

Provare l'hash di un singolo amministratore locale su una subnet può estendere rapidamente l'accesso.

netexec smb 10.0.0.0/24 -u admin -H a1b2c3d4... 

Movimento laterale

Pass-the-Hash è una tecnica fondamentale di movimento laterale. Riutilizzando l'hash di amministratore locale di una macchina su altre (un problema quando la stessa password di amministratore locale è condivisa), gli attaccanti passano da un host all'altro.

Ogni nuovo host può contenere in memoria gli hash di utenti con privilegi maggiori.

Difese

Le misure di mitigazione includono:

  • LAPS: password casuali univoche per l'amministratore locale di ogni macchina.
  • Credential Guard: isola i segreti di LSASS.
  • Limitare i luoghi da cui gli account privilegiati possono effettuare l'accesso (segmentazione a livelli).
  • Disabilitare NTLM a favore di Kerberos, ove possibile.

Attacchi correlati

Pass-the-Hash ha tecniche affini:

  • Pass-the-Ticket: riutilizzare un ticket Kerberos rubato.
  • Overpass-the-Hash: utilizzare un hash NTLM per richiedere un TGT Kerberos.

Queste tecniche estendono il riutilizzo delle credenziali al mondo Kerberos.

NTLM e Kerberos

Pass-the-Hash sfrutta in modo specifico l'autenticazione NTLM. Gli ambienti che impongono Kerberos e disabilitano NTLM riducono considerevolmente la superficie di attacco.

Tuttavia, NTLM è ancora presente nella maggior parte delle reti per motivi di compatibilità, quindi PtH resta ampiamente efficace. Per questo la disabilitazione di NTLM è una misura di hardening consigliata.

Verifica rapida

Richiami perché PtH non richiede il cracking.

Riepilogo

Ora comprende Pass-the-Hash:

  • L'autenticazione NTLM accetta l'hash come segreto, quindi non è necessario alcun cracking.
  • Gli hash vengono estratti da SAM, LSASS o NTDS.dit usando Mimikatz o secretsdump.
  • Strumenti come psexec.py, NetExec ed evil-winrm riutilizzano gli hash per il movimento laterale.
  • Si difenda con LAPS, Credential Guard e la segmentazione a livelli.

Nel prossimo argomento mapperà i percorsi di attacco con BloodHound.

Gratis per iniziare

Impara Ethical Hacking Academy con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
31
Lezioni
111

Domande Frequenti

La lezione «Pass-the-Hash» è gratuita?

Sì — il testo completo di «Pass-the-Hash» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Ethical Hacking Academy, passa a CoddyKit PRO. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Cosa imparerò in «Pass-the-Hash»?

Riutilizzo delle credenziali Eserciti Ethical Hacking Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Ethical Hacking Academy?

Non è richiesta alcuna esperienza precedente. Ethical Hacking Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Pass-the-Hash»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Ethical Hacking Academy?

Sì. Ogni lezione Ethical Hacking Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Fondamenti di AD
  2. Kerberoasting
  3. Pass-the-Hash
  4. BloodHound
← Torna a Ethical Hacking Academy