Token Forgery: Make and Impersonate Token (T1134.003)

La creazione e impersonificazione di token rappresenta una tecnica sofisticata per ottenere privilegi elevati senza possedere credenziali valide di un utente attualmente connesso. Gli attaccanti che dispongono di username e password possono generare nuove sessioni di accesso attraverso funzioni come LogonUser, ottenendo token di sicurezza completamente nuovi invece di rubare quelli esistenti.

Questa metodologia si colloca nelle tattiche TA0004 (Privilege Escalation) e TA0005 (Defense Evasion) della kill chain. L'attaccante sfrutta la capacità di Windows di creare sessioni legittime per mascherare le proprie azioni e scalare i privilegi verso livelli SYSTEM o amministrativi locali.

La tecnica è stata documentata nell'utilizzo operativo da 2 gruppi APT e integrata in 3 software offensivi, rendendola una minaccia concreta per le organizzazioni che non implementano controlli adeguati sulla gestione dei token di sicurezza.

Per replicare questa tecnica in laboratorio, il primo passo consiste nel creare un nuovo token utilizzando credenziali note. Il comando PowerShell seguente dimostra l'approccio base:

$SecPassword = ConvertTo-SecureString 'Password123!' -AsPlainText -Force $Credential = New-Object System.Management.Automation.PSCredential('DOMAIN\targetuser', $SecPassword) Start-Process cmd.exe -Credential $Credential

Un approccio più sofisticato prevede l'utilizzo diretto delle API Windows. Cobalt Strike implementa questa funzionalità attraverso il comando make_token, che internamente chiama LogonUser con tipo di logon 9 (NewCredentials):

make_token DOMAIN\administrator Password123!

Per un controllo granulare, puoi utilizzare Incognito V2 (strumento preferito da FIN13) che permette di creare token con specifici privilegi:

incognito.exe add_user admin_token DOMAIN\targetuser Password123! incognito.exe impersonate_token "DOMAIN\targetuser"

SILENTTRINITY offre un modulo dedicato che automatizza l'intero processo. Il modulo ipy/maketoken crea il token e lo assegna automaticamente al thread corrente:

use ipy/maketoken set USERNAME targetuser set DOMAIN CORP set PASSWORD Password123! execute

Per verificare il successo dell'operazione, controlla l'identità corrente del processo:

whoami /all

L'output mostrerà il nuovo contesto di sicurezza con i privilegi associati al token creato. Mafalda implementa una variante che permette di specificare il tipo di logon, utile per bypassare specifiche policy di sicurezza.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.