Tutorials

Dumping Hashes with Hashdump

--- Il dump degli hash delle password è una tecnica utilizzata durante la fase di post-exploitation per ottenere gli hash delle password degli utenti di un sistema compromesso. Questi hash possono poi

#exploitation#linux#metasploit

🧠 Dumping Hashes con Hashdump (Linux)

Tecniche di raccolta degli hash delle password in ambienti Linux


📌 Definizione

Il dump degli hash delle password è una tecnica utilizzata durante la fase di post-exploitation per ottenere gli hash delle password degli utenti di un sistema compromesso. Questi hash possono poi essere craccati offline per ottenere le credenziali in chiaro o riutilizzati in attacchi pass-the-hash.


⚙️ Modulo di Metasploit: post/linux/gather/hashdump

#### ✅ Funzionalità

  • Questo modulo permette di estrarre gli hash delle password dal file /etc/shadow, dove sono salvate le password in forma cifrata.

#### 🛠️ Requisiti

  • Accesso root o sudo: il file /etc/shadow è leggibile solo da root. Quindi è necessario aver già effettuato una privilege escalation.
  • Sessione di Meterpreter attiva: il modulo agisce su una sessione attiva.

#### 📚 Utilizzo del modulo

bash
use post/linux/gather/hashdump
set SESSION <ID sessione>
run

#### 💡 Output atteso:

Una lista di utenti con gli hash delle password, ad esempio:

perl
root:$6$1kQo9z...$eTjDsOcDfFeR:18953:0:99999:7::: user1:$6$s8dFOa...$KpqRLaQkUy0gYt:18953:0:99999:7:::

🧪 Cosa fare con gli hash dumpati

Una volta ottenuti, puoi:

#### 🔐 Crackare gli hash

Utilizza un dizionario o attacco brute-force con John the Ripper o Hashcat:

John the Ripper
bash
john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt
Hashcat
bash
hashcat -m 1800 hash.txt rockyou.txt

Il tipo di hash più comune in Linux è SHA-512 crypt, che in Hashcat è identificato con l’ID 1800.


🔍 Approfondimenti: dove si trovano realmente gli hash

#### 📄 /etc/passwd:

  • Contiene una lista di tutti gli utenti del sistema.
  • Le password non sono più memorizzate qui, ma puntano al file /etc/shadow.

#### 📄 /etc/shadow:

  • Contiene gli hash cifrati delle password.
  • Accessibile solo da root.

Esempio riga:

swift
utente:$6$salt$hash:...
  • $6$ indica l'algoritmo di hash SHA-512.
  • salt è il sale crittografico.
  • hash è l’hash della password.

🧰 Altre tecniche per il Dump degli Hash

#### 📌 Manuale (dopo escalation a root):

Se hai già root, puoi semplicemente dumpare il contenuto:

bash
cat /etc/shadow > hash.txt

#### 📌 Utilizzo di LinPEAS:

LinPEAS può evidenziare la presenza di /etc/shadow leggibile o accessibile.


🔁 Hash Reuse & Pass-the-Hash

Una volta ottenuti gli hash:

  • Non è sempre necessario craccarli: in certi contesti è possibile usarli direttamente per autenticarsi (es. SSH o RDP con moduli custom o attacchi pass-the-hash, più comuni in Windows ma applicabili in casi speciali anche su Linux con PAM vulnerabile).

🛡️ Contromisure & Mitigazioni

  • Imposta permessi restrittivi su /etc/shadow.
  • Usa autenticazione a due fattori (2FA).
  • Implementa logging e auditing sugli accessi root.
  • Applica il principio del minimo privilegio agli utenti.

📎 Checklist Operativa (Post-Exploitation Hashdump)

PassaggioComando / Azione
Verifica accesso rootwhoami
Dump con metasploitpost/linux/gather/hashdump
Dump manualecat /etc/shadow
Identifica algoritmoOsserva $id$ (es. $6$)
Salva gli hash> hash.txt
Crack hashJohn / Hashcat
Analizza accessilast, auth.log

📌 Nota strategica per l’eJPT

Per l’esame eJPT, saper:

  • Identificare dove risiedono gli hash.
  • Usare strumenti Metasploit per estrarli.
  • Riconoscere l’algoritmo di hashing.
  • Sapere i passaggi per il cracking offline.

È fondamentale per dimostrare competenze pratiche di post-exploitation.