AWS - Cognito Enum
Cognito
Amazon Cognito é utilizado para autenticação, autorização e gerenciamento de usuários em aplicações web e móveis. Ele permite que os usuários façam login diretamente usando um nome de usuário e senha ou indiretamente através de um terceiro, incluindo Facebook, Amazon, Google ou Apple.
Os componentes principais do Amazon Cognito são:
User Pools: Estes são diretórios projetados para os usuários do seu aplicativo, oferecendo funcionalidades de inscrição e login.
Identity Pools: Estes pools são instrumentais na autorização de usuários para acessar diferentes serviços AWS. Eles não estão diretamente envolvidos no processo de login ou inscrição, mas são cruciais para o acesso a recursos após a autenticação.
User pools
Para aprender o que é um Cognito User Pool, confira:
Cognito User PoolsIdentity pools
Para aprender o que é um Cognito Identity Pool, confira:
Cognito Identity PoolsEnumeração
Identity Pools - Enumeração Não Autenticada
Apenas sabendo o ID do Identity Pool você pode ser capaz de obter credenciais do papel associado a usuários não autenticados (se houver). Veja como aqui.
User Pools - Enumeração Não Autenticada
Mesmo que você não saiba um nome de usuário válido dentro do Cognito, você pode ser capaz de enumerar nomes de usuários válidos, BF as senhas ou até mesmo registrar um novo usuário apenas sabendo o ID do cliente do App (que geralmente é encontrado no código-fonte). Veja como aqui.
Privesc
AWS - Cognito PrivescAcesso Não Autenticado
AWS - Cognito Unauthenticated EnumPersistência
AWS - Cognito PersistenceLast updated