AWS - Cognito Unauthenticated Enum
Reading time: 4 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Unauthenticated Cognito
Cognito ni huduma ya AWS inayowezesha watengenezaji kuwawezesha watumiaji wa app zao kupata huduma za AWS. Watengenezaji watatoa IAM roles kwa watumiaji walio na uthibitisho kwenye app yao (huenda watu waweze kujisajili tu) na pia wanaweza kutoa IAM role kwa watumiaji wasiojathibitishwa.
Kwa taarifa za msingi kuhusu Cognito angalia:
Identity Pool ID
Identity Pools zinaweza kutoa IAM roles kwa watumiaji wasiojathibitishwa ambao tu wanajua Identity Pool ID (ambayo ni ya kawaida sana kuipata), na mshambuliaji akiwa na taarifa hii anaweza kujaribu kupata ufikiaji wa IAM role hiyo na kuifanya matumizi mabaya.
Zaidi ya hayo, IAM roles pia zinaweza kutolewa kwa watumiaji walio na uthibitisho wanaoingia kwenye Identity Pool. Ikiwa mshambuliaji anaweza kujiregistra mtumiaji au tayari ana ufikiaji wa identity provider inayotumika katika identity pool, unaweza kupata IAM role inayotolewa kwa watumiaji walio na uthibitisho na kuitumia vibaya ruhusa zake.
User Pool ID
Kwa chaguo-msingi Cognito inaruhusu kujiregistra mtumiaji mpya. Kuwa na uwezo wa kujisajili kunaweza kukupa ufikiaji kwa application iliyoko chini au kwa authenticated IAM access role ya Identity Pool ambayo inakubali Cognito User Pool kama identity provider. Check how to do that here.
Pacu modules for pentesting and enumeration
Pacu, the AWS exploitation framework, sasa inajumuisha moduli za "cognito__enum" na "cognito__attack" ambazo zinaendesha enumeration ya mali zote za Cognito katika akaunti na kubaini misanidi dhaifu, sifa za watumiaji zinazotumika kwa udhibiti wa ufikiaji, n.k., na pia zinaendesha uundaji wa watumiaji (ikiwa ni pamoja na msaada wa MFA) na privilege escalation kulingana na custom attributes zinazoweza kubadilishwa, vitambulisho vinavyotumika vya identity pool, roles zinazoweza kuchukuliwa katika id tokens, n.k.
Kwa maelezo ya kazi za moduli angalia sehemu ya 2 ya blog post. Kwa maagizo ya ufungaji angalia ukurasa mkuu wa Pacu.
Matumizi
Mfano wa matumizi ya cognito__attack kujaribu uundaji wa mtumiaji na vigezo vyote vya privesc dhidi ya identity pool na user pool client fulani:
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
Mfano wa matumizi ya cognito__enum kukusanya user pools zote, user pool clients, identity pools, users, n.k. zinazoonekana katika akaunti ya sasa ya AWS:
Pacu (new:test) > run cognito__enum
tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
HackTricks Cloud