Falsificazione Token SAML: Forge Web Credentials - SAML Tokens (T1606.002)

La tecnica T1606.002 descrive la falsificazione di token SAML da parte di un avversario che ha ottenuto il possesso di un certificato di firma valido. Un token SAML forgiato consente di autenticarsi verso qualsiasi servizio che utilizzi SAML 2.0 come meccanismo di Single Sign-On, con la possibilità di dichiarare qualsiasi claim di permessi e qualsiasi durata di validità.

Dal punto di vista tattico la tecnica ricade sotto TA0006 (Credential Access), ma il suo impatto reale attraversa più fasi della kill chain: una volta forgiato un token che rappresenti un account altamente privilegiato in Entra ID, l'attaccante ottiene un accesso persistente che bypassa MFA e altri controlli di autenticazione, aprendo la strada a Use Alternate Authentication Material.

La durata predefinita di un token SAML è di un'ora, controllata dal valore NotOnOrAfter nell'elemento conditions, ma può essere estesa arbitrariamente tramite il parametro AccessTokenLifetime in una LifetimeTokenPolicy. Se l'attaccante ha privilegi sufficienti per stabilire una nuova federation trust con un proprio server AD FS, può addirittura generare il proprio certificato di firma legittimo. Il caso più noto è la SolarWinds Compromise (C0024), in cui APT29 ha utilizzato certificati di firma SAML compromessi per creare token arbitrari, ottenendo accesso persistente a servizi cloud di migliaia di vittime tra agenzie governative e aziende Fortune 500.

In un esercizio red team autorizzato, la simulazione di T1606.002 parte dal presupposto di aver già compromesso il server AD FS o di aver estratto il certificato di firma dal Distributed Key Manager (DKM) in Active Directory. Il tool di riferimento è AADInternals (open source), un modulo PowerShell mantenuto da Nestori Syynimaa che replica fedelmente le operazioni descritte in S0677.

L'estrazione del certificato di firma richiede accesso amministrativo sul server AD FS. Il comando tipico in AADInternals è Export-AADIntADFSSigningCertificate, che salva chiave privata e certificato in formato PFX. In alternativa, con accesso al DKM in AD, si utilizza Export-AADIntADFSCertificates per recuperare la chiave master e derivare il certificato senza toccare il server AD FS, tecnica nota come Golden SAML.

Una volta ottenuto il materiale crittografico, la forgiatura del token avviene con New-AADIntSAMLToken, che accetta parametri come -ImmutableID, -Issuer e -PfxFileName. Il token risultante può dichiarare qualsiasi UPN, inclusi Global Administrator di Entra ID. L'iniezione avviene poi tramite Get-AADIntAccessTokenForAADGraph -SAMLToken $token, ottenendo un OAuth access token spendibile su Microsoft Graph.

Una catena d'attacco tipica in laboratorio prevede:

  • Compromissione iniziale del dominio con credenziali di Domain Admin (simulata via Mimikatz open source o Rubeus open source).
  • Enumerazione del server AD FS con Get-AADIntADFSConfiguration.
  • Esfiltrazione della chiave DKM tramite accesso LDAP al container CN=ADFS,CN=Microsoft,CN=Program Data.
  • Generazione offline del token SAML su macchina attaccante.
  • Autenticazione verso Microsoft 365, Azure Portal o applicazioni SaaS federate.

Per test più realistici su piattaforme cloud, ROADtools (open source) di Dirk-jan Mollema permette di enumerare Entra ID post-compromissione con roadrecon gather e verificare i privilegi effettivi dell'identità forgiata. Su ambienti AWS federati, il token SAML può essere consumato tramite aws sts assume-role-with-saml per pivotare da identità Entra a ruoli IAM cloud.

È fondamentale che l'esercizio si svolga in un tenant di laboratorio dedicato: la rotazione del certificato di firma AD FS in produzione ha impatti operativi rilevanti e va coordinata con il blue team. Documentare tutti gli ImmutableID utilizzati facilita la pulizia post-test.

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

Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo

TEST GRATUITO
2 minuti · 7 domande Che professionista cyber sei? Scopri il profilo più vicino al tuo modo di pensare e inizia dal percorso giusto.