AWS - Cognito Unauthenticated Enum
Cognito non autenticato
Cognito è un servizio AWS che consente agli sviluppatori di concedere agli utenti dell'app l'accesso ai servizi AWS. Gli sviluppatori concederanno ruoli IAM agli utenti autenticati nella loro app (potenzialmente le persone potranno semplicemente registrarsi) e possono anche concedere un ruolo IAM agli utenti non autenticati.
Per informazioni di base su Cognito, controlla:
AWS - Cognito EnumModuli Pacu per pentesting e enumerazione
Pacu, il framework di sfruttamento AWS, include ora i moduli "cognito__enum" e "cognito__attack" che automatizzano l'enumerazione di tutti gli asset di Cognito in un account e segnalano configurazioni deboli, attributi utente utilizzati per il controllo degli accessi, ecc., e automatizzano anche la creazione di utenti (incluso il supporto MFA) e l'escalation dei privilegi basata su attributi personalizzabili modificabili, credenziali di pool di identità utilizzabili, ruoli assumibili nei token di identità, ecc.
Per una descrizione delle funzioni dei moduli, consulta la parte 2 del post sul blog. Per le istruzioni di installazione, consulta la pagina principale di Pacu.
Utilizzo
Esempio di utilizzo di cognito__attack per tentare la creazione di utenti e tutti i vettori di escalation dei privilegi contro un determinato pool di identità e client pool di utenti:
Campione di utilizzo di cognito__enum per raccogliere tutti i pool di utenti, client pool di utenti, pool di identità, utenti, ecc. visibili nell'account AWS corrente:
ID Pool di identità
Gli Identity Pool possono concedere ruoli IAM agli utenti non autenticati che conoscono semplicemente l'ID del Pool di identità (che è abbastanza comune da trovare), e un attaccante con queste informazioni potrebbe cercare di accedere a quel ruolo IAM ed sfruttarlo. Inoltre, i ruoli IAM potrebbero anche essere assegnati agli utenti autenticati che accedono all'Identity Pool. Se un attaccante può registrare un utente o ha già accesso al provider di identità utilizzato nel pool di identità, potrebbe accedere al ruolo IAM assegnato agli utenti autenticati e abusarne dei privilegi.
ID Pool utente
Per impostazione predefinita, Cognito consente di registrare nuovi utenti. Essere in grado di registrare un utente potrebbe darti accesso all'applicazione sottostante o al ruolo di accesso IAM autenticato di un Pool di identità che accetta come provider di identità il Pool utente Cognito. Verifica come fare ciò qui.
Last updated