AWS - Cognito Unauthenticated Enum
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Unauthenticated Cognito
Cognito est un service AWS qui permet aux dĂ©veloppeurs de donner Ă leurs utilisateurs dâapplication lâaccĂšs aux services AWS. Les dĂ©veloppeurs attribuent des IAM roles to authenticated users dans leur application (potentiellement les gens pourront simplement sâinscrire) et ils peuvent aussi attribuer un IAM role to unauthenticated users.
Pour des informations de base sur Cognito, consultez :
Identity Pool ID
Les Identity Pools peuvent accorder des IAM roles to unauthenticated users Ă des personnes qui se contentent de know the Identity Pool ID (ce qui est assez courant Ă find), et un attaquant disposant de cette information pourrait tenter de access that IAM role et lâexploiter.
De plus, des IAM roles peuvent aussi ĂȘtre assignĂ©s Ă des authenticated users qui accĂšdent Ă lâIdentity Pool. Si un attaquant peut register a user ou a dĂ©jĂ access to the identity provider utilisĂ© dans lâidentity pool, il pourrait accĂ©der au IAM role being given to authenticated users et abuser de ses privilĂšges.
User Pool ID
Par dĂ©faut, Cognito permet de register new user. Pouvoir enregistrer un utilisateur peut vous donner access Ă lâunderlaying application ou au authenticated IAM access role of an Identity Pool qui accepte comme fournisseur dâidentitĂ© le Cognito User Pool. Voir comment faire ici.
Pacu modules for pentesting and enumeration
Pacu, le framework dâexploitation AWS, inclut dĂ©sormais les modules âcognito__enumâ et âcognito__attackâ qui automatisent lâenumeration de tous les Cognito assets dans un compte et signalent les configurations faibles, les attributs utilisateur utilisĂ©s pour le contrĂŽle dâaccĂšs, etc., et automatisent aussi la crĂ©ation dâutilisateurs (incluant le support MFA) et lâescalade de privilĂšges basĂ©e sur des attributs personnalisĂ©s modifiables, des usable identity pool credentials, des assumable roles dans les id tokens, etc.
Pour une description des fonctions des modules, voyez la partie 2 du blog post. Pour les instructions dâinstallation, voyez la page principale de Pacu.
Usage
Exemple dâutilisation de cognito__attack pour tenter la crĂ©ation dâutilisateurs et tous les privesc vectors contre un identity pool et user pool client donnĂ©s:
Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gmail.com --identity_pools
us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients
59f6tuhfXXXXXXXXXXXXXXXXXX@us-east-2_0aXXXXXXX
Exemple dâutilisation de cognito__enum pour rassembler tous les user pools, user pool clients, identity pools, users, etc. visibles dans le compte AWS actuel:
Pacu (new:test) > run cognito__enum
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

