From bea7f12f2dcf441b44aa7289444c8674227e878d Mon Sep 17 00:00:00 2001 From: Translator Date: Mon, 18 Aug 2025 14:20:44 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/aws-security/aws-services/aws-cognito- --- .../cognito-identity-pools.md | 52 ++++++++++++------- 1 file changed, 33 insertions(+), 19 deletions(-) diff --git a/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md b/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md index d58a4f507..91bbfd0ff 100644 --- a/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md +++ b/src/pentesting-cloud/aws-security/aws-services/aws-cognito-enum/cognito-identity-pools.md @@ -39,11 +39,11 @@ Ili kuunda vikao vya Identity Pool, kwanza unahitaji **kuunda na Identity ID**. Hii ni **faida kwa kuhifadhi taarifa za mtumiaji** (ambaye atakuwa akitumia kila wakati Identity ID ile ile). -Zaidi ya hayo, huduma ya **cognito-sync** ni huduma inayoruhusu **kusimamia na kusawazisha taarifa hizi** (katika seti za data, kutuma taarifa katika mitiririko na ujumbe wa SNS...). +Zaidi ya hayo, huduma **cognito-sync** ni huduma inayoruhusu **kusimamia na kusawazisha taarifa hizi** (katika seti za data, kutuma taarifa katika mitiririko na ujumbe wa SNS...). ### Tools for pentesting -- [Pacu](https://github.com/RhinoSecurityLabs/pacu), mfumo wa unyakuzi wa AWS, sasa unajumuisha moduli "cognito\_\_enum" na "cognito\_\_attack" ambazo zinaweza kujiendesha katika kuhesabu mali zote za Cognito katika akaunti na kuashiria usanidi dhaifu, sifa za mtumiaji zinazotumika kwa udhibiti wa ufikiaji, nk, na pia kujiendesha katika uundaji wa mtumiaji (ikiwemo msaada wa MFA) na kupandisha hadhi kulingana na sifa za kawaida zinazoweza kubadilishwa, akidi za kuaminika za identity pool, majukumu yanayoweza kuchukuliwa katika token za id, nk. +- [Pacu](https://github.com/RhinoSecurityLabs/pacu), mfumo wa unyakuzi wa AWS, sasa unajumuisha moduli "cognito\_\_enum" na "cognito\_\_attack" ambazo zinaweza kujiendesha katika kuhesabu mali zote za Cognito katika akaunti na kuashiria usanidi dhaifu, sifa za mtumiaji zinazotumika kwa udhibiti wa ufikiaji, nk, na pia kujiendesha katika uundaji wa mtumiaji (ikiwemo msaada wa MFA) na kupandisha vyeo kulingana na sifa za kawaida zinazoweza kubadilishwa, akidi za kuaminika za identity pool, majukumu yanayoweza kuchukuliwa katika token za id, nk. Kwa maelezo ya kazi za moduli, angalia sehemu ya 2 ya [blog post](https://rhinosecuritylabs.com/aws/attacking-aws-cognito-with-pacu-p2). Kwa maelekezo ya usakinishaji, angalia ukurasa mkuu wa [Pacu](https://github.com/RhinoSecurityLabs/pacu). @@ -55,7 +55,7 @@ Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gma us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients 59f6tuhfXXXXXXXXXXXXXXXXXX@us-east-2_0aXXXXXXX ``` -Mfano wa cognito\_\_enum matumizi ya kukusanya kila mzunguko wa mtumiaji, wateja wa mzunguko wa mtumiaji, mizunguko ya utambulisho, watumiaji, nk. wanaoonekana katika akaunti ya sasa ya AWS: +Mfano wa matumizi ya cognito\_\_enum kukusanya kila mzunguko wa watumiaji, wateja wa mzunguko wa watumiaji, mizunguko ya utambulisho, watumiaji, nk. wanaoonekana katika akaunti ya sasa ya AWS: ```bash Pacu (new:test) > run cognito__enum ``` @@ -80,7 +80,7 @@ Jambo pekee ambalo mshambuliaji anahitaji kujua ili **kupata AWS credentials** k > [!TIP] > **IAM Cognito unauthenticated role iliyoundwa kupitia inaitwa** kwa default `Cognito_Unauth_Role` -Ikiwa utapata Identity Pools ID iliyowekwa kwa nguvu na inaruhusu watumiaji wasiothibitishwa, unaweza kupata AWS credentials kwa: +Ikiwa utapata Identity Pools ID iliyowekwa kwa nguvu na inaruhusu watumiaji wasiokuwa na uthibitisho, unaweza kupata AWS credentials kwa: ```python import requests @@ -112,13 +112,13 @@ aws cognito-identity get-id --identity-pool-id --no-sign aws cognito-identity get-credentials-for-identity --identity-id --no-sign ``` > [!WARNING] -> Kumbuka kwamba kwa kawaida mtumiaji wa cognito **asiye na uthibitisho HANA haki yoyote, hata kama ilitolewa kupitia sera**. Angalia sehemu ifuatayo. +> Kumbuka kwamba kwa kawaida, **mtumiaji wa cognito asiye na uthibitisho HANA haki yoyote, hata kama ilitolewa kupitia sera**. Angalia sehemu ifuatayo. ### Mchakato wa Uthibitishaji wa Juu vs Msingi -Sehemu ya awali ilifuata **mchakato wa uthibitishaji wa juu wa kawaida**. Mchakato huu unakamilisha **sera ya kikao** [**iliyopunguza**](../../aws-basic-information/index.html#session-policies) kwa kikao cha jukumu la IAM kilichoundwa. Sera hii itaruhusu kikao [**kutumia huduma kutoka orodha hii**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) (hata kama jukumu lilikuwa na ufikiaji wa huduma nyingine). +Sehemu ya awali ilifuata **mchakato wa uthibitishaji wa juu wa kawaida**. Mchakato huu unakagua **sera ya kikao** [**inayozuia**](../../aws-basic-information/index.html#session-policies) kwa kikao cha jukumu la IAM kilichoundwa. Sera hii itaruhusu kikao [**kutumia huduma kutoka orodha hii**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services) (hata kama jukumu lilikuwa na ufikiaji wa huduma nyingine). -Hata hivyo, kuna njia ya kupita hii, ikiwa **kikundi cha Utambulisho kina "Mchakato wa Msingi (Classic) ulioanzishwa"**, mtumiaji ataweza kupata kikao kwa kutumia mchakato huo ambao **hautakuwa na sera hiyo ya kikao inayopunguza**. +Hata hivyo, kuna njia ya kupita hii, ikiwa **hifadhi ya Kitambulisho ina "Mchakato wa Msingi (Classic) ulioanzishwa"**, mtumiaji ataweza kupata kikao kwa kutumia mchakato huo ambao **hautakuwa na sera hiyo ya kikao inayozuia**. ```bash # Get auth ID aws cognito-identity get-id --identity-pool-id --no-sign @@ -133,7 +133,7 @@ aws sts assume-role-with-web-identity --role-arn "arn:aws:iam:::role/ [!WARNING] > Ikiwa unapokea **makosa** haya, ni kwa sababu **mchakato wa msingi haujawezeshwa (default)** -> `An error occurred (InvalidParameterException) when calling the GetOpenIdToken operation: Basic (classic) flow is not enabled, please use enhanced flow.` +> `Makosa yamepatikana (InvalidParameterException) wakati wa kuita operesheni ya GetOpenIdToken: Mchakato wa msingi (classic) haujawezeshwa, tafadhali tumia mchakato ulioimarishwa.` Kuwa na seti ya akreditif za IAM unapaswa kuangalia [ni upatikanaji gani unao](../../index.html#whoami) na kujaribu [kuinua mamlaka](../../aws-privilege-escalation/index.html). @@ -144,29 +144,43 @@ Kuwa na seti ya akreditif za IAM unapaswa kuangalia [ni upatikanaji gani unao](. Pia kunaweza kuwa na **majukumu** yanayopatikana kwa **watumiaji walioidhinishwa wanaofikia Hifadhi ya Utambulisho**. -Kwa hili unaweza kuhitaji kuwa na ufikiaji wa **mtoa huduma wa utambulisho**. Ikiwa hiyo ni **Cognito User Pool**, labda unaweza kutumia tabia ya default na **kuunda mtumiaji mpya mwenyewe**. +Kwa hili unaweza kuhitaji kuwa na ufikiaji wa **mtoa huduma wa utambulisho**. Ikiwa hiyo ni **Cognito User Pool**, labda unaweza kutumia tabia ya kawaida na **kuunda mtumiaji mpya mwenyewe**. > [!TIP] -> **IAM Cognito authenticated role iliyoundwa kupitia inaitwa** kwa default `Cognito_Auth_Role` +> **Majukumu ya IAM Cognito yaliyoundwa kupitia** yanaitwa kwa default `Cognito_Auth_Role` Hata hivyo, **mfano ufuatao** unatarajia kwamba tayari umeingia ndani ya **Cognito User Pool** inayotumika kufikia Hifadhi ya Utambulisho (usisahau kwamba aina nyingine za watoa huduma wa utambulisho zinaweza pia kuanzishwa). -
aws cognito-identity get-id \
+

+# Muundo uliosasishwa
+aws cognito-identity get-id \
 --identity-pool-id  \
---logins cognito-idp..amazonaws.com/=
+--logins '{"cognito-idp..amazonaws.com/": ""}'
 
-# Pata identity_id kutoka kwa jibu la amri ya awali
 aws cognito-identity get-credentials-for-identity \
 --identity-id  \
---logins cognito-idp..amazonaws.com/=
+--logins '{"cognito-idp..amazonaws.com/": ""}'
 
-
-# Katika IdToken unaweza kupata majukumu ambayo mtumiaji ana ufikiaji kwa sababu ya Makundi ya User Pool
-# Tumia --custom-role-arn kupata akreditif kwa jukumu maalum
 aws cognito-identity get-credentials-for-identity \
 --identity-id  \
-    --custom-role-arn  \
-    --logins cognito-idp..amazonaws.com/=
+--custom-role-arn  \
+--logins '{"cognito-idp..amazonaws.com/": ""}'
+
+ +> **Muundo ulioachwa** — haya yanaweza yasifanye kazi tena na AWS CLI ya sasa: +

+aws cognito-identity get-id \
+--identity-pool-id  \
+--logins cognito-idp..amazonaws.com/=
+
+aws cognito-identity get-credentials-for-identity \
+--identity-id  \
+--logins cognito-idp..amazonaws.com/=
+
+aws cognito-identity get-credentials-for-identity \
+--identity-id  \
+--custom-role-arn  \
+--logins cognito-idp..amazonaws.com/=
 
> [!WARNING]