Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Arile! Scopri di più
Le conditional access policies rappresentano uno dei pilastri della postura di sicurezza in ambienti cloud e identity-as-a-service. Sono regole valutate al momento dell'autenticazione che possono bloccare o consentire l'accesso in base a variabili contestuali: indirizzo IP di origine, stato di enrollment del dispositivo, presenza di MFA, rischio della sessione, area geografica della richiesta. Piattaforme come Entra ID, Okta, JumpCloud, AWS IAM e GCP IAM le implementano con meccanismi diversi ma con logica analoga.
La tecnica T1556.009 descrive lo scenario in cui un avversario, dopo aver ottenuto accesso privilegiato a un identity provider, modifica o disabilita queste policy per garantirsi persistenza e aggirare i controlli difensivi. L'effetto pratico è devastante: un account compromesso torna accessibile senza MFA, da IP arbitrari, su regioni cloud altrimenti bloccate.
La tecnica si colloca in tre tattiche della kill chain: Credential Access (TA0006), perché la manipolazione delle policy trasforma credenziali deboli in credenziali pienamente operative; Defense Evasion (TA0005), perché rimuove i controlli che il SOC si aspetta siano attivi; Persistence (TA0003), perché la modifica sopravvive al reset della password e al revoke delle sessioni. Con 2 gruppi APT documentati, 1 mitigazione e 2 analytics di detection, è una superficie d'attacco relativamente nuova ma già sfruttata in intrusioni ad alto impatto.
La simulazione di questa tecnica richiede un ambiente lab con un tenant Entra ID di test (un piano gratuito P2 trial è sufficiente per le conditional access) oppure un account AWS con policy IAM configurabili. L'obiettivo è dimostrare come, partendo da un account con privilegi di Conditional Access Administrator o IAM admin, sia possibile indebolire le difese in modo silenzioso.
Scenario 1 — Entra ID: aggiunta di trusted location. Con il modulo Microsoft Graph PowerShell (open source), si può creare una named location attendibile e poi associarla come eccezione a una policy esistente. La sequenza inizia con l'autenticazione:
Connect-MgGraph -Scopes "Policy.ReadWrite.ConditionalAccess"
Si enumera la configurazione attiva:
Get-MgIdentityConditionalAccessPolicy | Select-Object DisplayName, State, Id
Si crea una nuova named location contenente un range IP controllato dall'attaccante:
New-MgIdentityConditionalAccessNamedLocation -DisplayName "VPN Backup" -OdataType "#microsoft.graph.ipNamedLocation" -IsTrusted:$true -IpRanges @(@{OdataType="#microsoft.graph.iPv4CidrRange"; CidrAddress="203.0.113.0/24"})
Infine si modifica la policy target per escludere quella location dalla verifica MFA. Questo replica esattamente il comportamento documentato per Scattered Spider, che ha aggiunto trusted locations alle policy Azure AD.
Scenario 2 — AWS: modifica di IAM policy condition. Con la CLI AWS si può iniettare un range IP nella condition aws:SourceIp di una policy esistente. Prima si estrae il documento corrente:
aws iam get-role-policy --role-name AdminRole --policy-name ConditionedAccess
Si modifica il JSON aggiungendo il range desiderato nel blocco Condition.IpAddress.aws:SourceIp, poi si ripubblica:
aws iam put-role-policy --role-name AdminRole --policy-name ConditionedAccess --policy-document file://modified-policy.json
Per lo scenario MFA, si può registrare un nuovo metodo MFA su un account compromesso usando ROADtools (open source), il toolkit di Dirk-jan Mollema per l'analisi di Entra ID. Il tool roadrecon consente di esplorare la configurazione del tenant, mentre l'interazione diretta con le API Graph permette la registrazione di authenticator aggiuntivi — comportamento analogo a quello di Storm-0501.
Stratus Red Team (open source) di DataDog include moduli pre-confezionati per simulare manipolazioni di policy IAM AWS in ambiente controllato e rappresenta il riferimento più immediato per esercitazioni purple team su questa tecnica.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo