mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-01-08 19:30:51 -08:00
Translated ['src/banners/hacktricks-training.md', 'src/pentesting-ci-cd/
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# AWS - IAM, Identity Center & SSO Enum
|
||||
# AWS - IAM, पहचान केंद्र और SSO Enum
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
@@ -101,24 +101,24 @@ bash bf-aws-permissions.sh -p default > /tmp/bf-permissions-verbose.txt
|
||||
```
|
||||
#### bf-aws-perms-simulate
|
||||
|
||||
उपकरण [**bf-aws-perms-simulate**](https://github.com/carlospolop/bf-aws-perms-simulate) आपकी वर्तमान अनुमति (या अन्य प्रिंसिपलों की) को खोज सकता है यदि आपके पास अनुमति **`iam:SimulatePrincipalPolicy`** है।
|
||||
उपकरण [**bf-aws-perms-simulate**](https://github.com/carlospolop/bf-aws-perms-simulate) आपकी वर्तमान अनुमति (या अन्य प्रिंसिपलों की) को ढूंढ सकता है यदि आपके पास अनुमति **`iam:SimulatePrincipalPolicy`** है।
|
||||
```bash
|
||||
# Ask for permissions
|
||||
python3 aws_permissions_checker.py --profile <AWS_PROFILE> [--arn <USER_ARN>]
|
||||
```
|
||||
#### Perms2ManagedPolicies
|
||||
|
||||
यदि आपने **कुछ अनुमतियाँ पाई हैं जो आपके उपयोगकर्ता के पास हैं**, और आप सोचते हैं कि ये **प्रबंधित AWS भूमिका** द्वारा दी जा रही हैं (और किसी कस्टम द्वारा नहीं)। आप टूल [**aws-Perms2ManagedRoles**](https://github.com/carlospolop/aws-Perms2ManagedPolicies) का उपयोग कर सकते हैं यह जांचने के लिए कि **कौन सी AWS प्रबंधित भूमिकाएँ उन अनुमतियों को प्रदान करती हैं जो आपने खोजी हैं कि आपके पास हैं**।
|
||||
यदि आपने **कुछ अनुमतियाँ पाई हैं जो आपके उपयोगकर्ता के पास हैं**, और आप सोचते हैं कि ये **प्रबंधित AWS भूमिका** द्वारा दी जा रही हैं (और किसी कस्टम द्वारा नहीं)। आप टूल [**aws-Perms2ManagedRoles**](https://github.com/carlospolop/aws-Perms2ManagedPolicies) का उपयोग कर सकते हैं यह जांचने के लिए कि **AWS प्रबंधित भूमिकाएँ कौन सी हैं जो उन अनुमतियों को प्रदान करती हैं जो आपने खोजी हैं कि आपके पास हैं**।
|
||||
```bash
|
||||
# Run example with my profile
|
||||
python3 aws-Perms2ManagedPolicies.py --profile myadmin --permissions-file example-permissions.txt
|
||||
```
|
||||
> [!WARNING]
|
||||
> यह संभव है कि आप "जानें" कि आपके पास जो अनुमतियाँ हैं वे AWS प्रबंधित भूमिका द्वारा दी गई हैं यदि आप देखते हैं कि **आपके पास उन सेवाओं पर अनुमतियाँ हैं जो उपयोग में नहीं हैं** उदाहरण के लिए।
|
||||
> यह "जानना" संभव है कि आपके पास जो अनुमतियाँ हैं वे AWS प्रबंधित भूमिका द्वारा दी गई हैं यदि आप देखते हैं कि **आपके पास उन सेवाओं पर अनुमतियाँ हैं जो उपयोग नहीं की जाती हैं** उदाहरण के लिए।
|
||||
|
||||
#### Cloudtrail2IAM
|
||||
|
||||
[**CloudTrail2IAM**](https://github.com/carlospolop/Cloudtrail2IAM) एक Python उपकरण है जो **AWS CloudTrail लॉग का विश्लेषण करता है ताकि सभी या केवल एक विशिष्ट उपयोगकर्ता या भूमिका द्वारा किए गए कार्यों को निकाला और संक्षेपित किया जा सके**। यह उपकरण **निर्दिष्ट बकेट से हर cloudtrail लॉग को पार्स करेगा**।
|
||||
[**CloudTrail2IAM**](https://github.com/carlospolop/Cloudtrail2IAM) एक Python उपकरण है जो **AWS CloudTrail लॉग का विश्लेषण करता है ताकि सभी या केवल एक विशिष्ट उपयोगकर्ता या भूमिका द्वारा किए गए कार्यों को निकाला और संक्षेपित किया जा सके**। यह उपकरण **निर्दिष्ट बकेट से हर क्लाउडट्रेल लॉग को पार्स करेगा**।
|
||||
```bash
|
||||
git clone https://github.com/carlospolop/Cloudtrail2IAM
|
||||
cd Cloudtrail2IAM
|
||||
@@ -130,12 +130,12 @@ python3 cloudtrail2IAM.py --prefix PREFIX --bucket_name BUCKET_NAME --profile PR
|
||||
|
||||
#### enumerate-iam
|
||||
|
||||
इस उपकरण का उपयोग करने के लिए [**https://github.com/andresriancho/enumerate-iam**](https://github.com/andresriancho/enumerate-iam) आपको पहले सभी API AWS एंडपॉइंट्स डाउनलोड करने की आवश्यकता है, जिनमें से स्क्रिप्ट **`generate_bruteforce_tests.py`** सभी **"list\_", "describe\_", और "get\_" एंडपॉइंट्स प्राप्त करेगी।** और अंततः, यह दिए गए क्रेडेंशियल्स के साथ **उन्हें एक्सेस करने की कोशिश करेगी** और **यह बताएगी कि क्या यह सफल रहा।**
|
||||
इस टूल [**https://github.com/andresriancho/enumerate-iam**](https://github.com/andresriancho/enumerate-iam) का उपयोग करने के लिए, आपको पहले सभी API AWS एंडपॉइंट्स डाउनलोड करने की आवश्यकता है, जिनमें से स्क्रिप्ट **`generate_bruteforce_tests.py`** सभी **"list\_", "describe\_", और "get\_" एंडपॉइंट्स प्राप्त करेगी।** और अंत में, यह दिए गए क्रेडेंशियल्स के साथ **उन्हें एक्सेस करने की कोशिश करेगी** और **यह बताएगी कि क्या यह सफल रहा।**
|
||||
|
||||
(मेरे अनुभव में **उपकरण किसी बिंदु पर लटक जाता है**, [**इस फिक्स को देखें**](https://github.com/andresriancho/enumerate-iam/pull/15/commits/77ad5b41216e3b5f1511d0c385da8cd5984c2d3c) इसे ठीक करने के लिए प्रयास करने के लिए)।
|
||||
(मेरे अनुभव में **यह टूल किसी बिंदु पर लटक जाता है**, [**इस फिक्स को देखें**](https://github.com/andresriancho/enumerate-iam/pull/15/commits/77ad5b41216e3b5f1511d0c385da8cd5984c2d3c) इसे ठीक करने के लिए प्रयास करने के लिए)।
|
||||
|
||||
> [!WARNING]
|
||||
> मेरे अनुभव में यह उपकरण पिछले वाले की तरह है लेकिन खराब काम कर रहा है और कम अनुमतियों की जांच कर रहा है।
|
||||
> मेरे अनुभव में यह टूल पिछले वाले की तरह है लेकिन खराब काम कर रहा है और कम अनुमतियों की जांच कर रहा है।
|
||||
```bash
|
||||
# Install tool
|
||||
git clone git@github.com:andresriancho/enumerate-iam.git
|
||||
@@ -224,7 +224,7 @@ steampipe dashboard
|
||||
../aws-privilege-escalation/aws-iam-privesc.md
|
||||
{{#endref}}
|
||||
|
||||
### IAM पोस्ट शोषण
|
||||
### IAM पोस्ट एक्सप्लोइटेशन
|
||||
|
||||
{{#ref}}
|
||||
../aws-post-exploitation/aws-iam-post-exploitation.md
|
||||
@@ -266,7 +266,7 @@ Identity Center के मुख्य तत्व हैं:
|
||||
फिर, संबंध बनाए जाते हैं ताकि उपयोगकर्ता/समूहों के पास AWS खाते पर अनुमति सेट हो।
|
||||
|
||||
> [!NOTE]
|
||||
> ध्यान दें कि अनुमति सेट पर नीतियाँ संलग्न करने के 3 तरीके हैं। AWS प्रबंधित नीतियों को संलग्न करना, ग्राहक प्रबंधित नीतियाँ (इन नीतियों को उन सभी खातों में बनाना आवश्यक है जिन पर अनुमति सेट प्रभाव डाल रहा है), और इनलाइन नीतियाँ (जो वहाँ परिभाषित हैं)।
|
||||
> ध्यान दें कि अनुमति सेट पर नीतियाँ संलग्न करने के 3 तरीके हैं। AWS प्रबंधित नीतियाँ संलग्न करना, ग्राहक प्रबंधित नीतियाँ (ये नीतियाँ उन सभी खातों में बनाई जानी चाहिए जिन पर अनुमति सेट प्रभाव डाल रहा है), और इनलाइन नीतियाँ (जो वहाँ परिभाषित हैं)।
|
||||
```bash
|
||||
# Check if IAM Identity Center is used
|
||||
aws sso-admin list-instances
|
||||
@@ -302,7 +302,7 @@ aws identitystore list-group-memberships-for-member --identity-store-id <store-i
|
||||
```
|
||||
### Local Enumeration
|
||||
|
||||
यह संभव है कि फ़ोल्डर `$HOME/.aws` के अंदर फ़ाइल config बनाई जाए ताकि उन प्रोफाइलों को कॉन्फ़िगर किया जा सके जो SSO के माध्यम से सुलभ हैं, उदाहरण के लिए:
|
||||
यह संभव है कि `$HOME/.aws` फ़ोल्डर के अंदर config फ़ाइल बनाई जाए ताकि उन प्रोफाइलों को कॉन्फ़िगर किया जा सके जो SSO के माध्यम से सुलभ हैं, उदाहरण के लिए:
|
||||
```ini
|
||||
[default]
|
||||
region = us-west-2
|
||||
@@ -327,9 +327,9 @@ aws sso login --profile my-sso-profile
|
||||
# Use dependent-profile
|
||||
aws s3 ls --profile dependent-profile
|
||||
```
|
||||
जब **SSO से प्रोफ़ाइल का उपयोग किया जाता है** कुछ जानकारी तक पहुँचने के लिए, तो क्रेडेंशियल्स **एक फ़ाइल में कैश** किए जाते हैं जो फ़ोल्डर **`$HOME/.aws/sso/cache`** के अंदर होती है। इसलिए इन्हें **वहाँ से पढ़ा और उपयोग किया जा सकता है**।
|
||||
जब **SSO से प्रोफ़ाइल का उपयोग किया जाता है** किसी जानकारी तक पहुँचने के लिए, तो क्रेडेंशियल्स **एक फ़ाइल में कैश** किए जाते हैं जो फ़ोल्डर **`$HOME/.aws/sso/cache`** के अंदर होती है। इसलिए इन्हें **वहाँ से पढ़ा और उपयोग किया जा सकता है**।
|
||||
|
||||
इसके अलावा, **अधिक क्रेडेंशियल्स** फ़ोल्डर **`$HOME/.aws/cli/cache`** में संग्रहीत किए जा सकते हैं। यह कैश निर्देशिका मुख्य रूप से तब उपयोग की जाती है जब आप **AWS CLI प्रोफ़ाइल के साथ काम कर रहे हैं** जो IAM उपयोगकर्ता क्रेडेंशियल्स का उपयोग करती हैं या IAM के माध्यम से **रोल्स को मानती हैं** (बिना SSO के)। कॉन्फ़िग उदाहरण:
|
||||
इसके अलावा, **अधिक क्रेडेंशियल्स** फ़ोल्डर **`$HOME/.aws/cli/cache`** में संग्रहीत किए जा सकते हैं। यह कैश निर्देशिका मुख्य रूप से तब उपयोग की जाती है जब आप **AWS CLI प्रोफाइल के साथ काम कर रहे हैं** जो IAM उपयोगकर्ता क्रेडेंशियल्स का उपयोग करते हैं या IAM के माध्यम से **रोल्स को असुम** करते हैं (बिना SSO के)। कॉन्फ़िग उदाहरण:
|
||||
```ini
|
||||
[profile crossaccountrole]
|
||||
role_arn = arn:aws:iam::234567890123:role/SomeRole
|
||||
@@ -349,7 +349,7 @@ external_id = 123456
|
||||
../aws-privilege-escalation/aws-sso-and-identitystore-privesc.md
|
||||
{{#endref}}
|
||||
|
||||
### पोस्ट शोषण
|
||||
### पोस्ट एक्सप्लोइटेशन
|
||||
|
||||
{{#ref}}
|
||||
../aws-post-exploitation/aws-sso-and-identitystore-post-exploitation.md
|
||||
@@ -365,8 +365,8 @@ aws identitystore create-user --identity-store-id <store-id> --user-name privesc
|
||||
```
|
||||
- एक समूह बनाएं और इसे अनुमतियाँ सौंपें और उस पर एक नियंत्रित उपयोगकर्ता सेट करें
|
||||
- एक नियंत्रित उपयोगकर्ता या समूह को अतिरिक्त अनुमतियाँ दें
|
||||
- डिफ़ॉल्ट रूप से, केवल प्रबंधन खाते के उपयोगकर्ताओं के पास IAM पहचान केंद्र तक पहुँचने और उसे नियंत्रित करने की अनुमति होगी।
|
||||
- डिफ़ॉल्ट रूप से, केवल प्रबंधन खाते से अनुमतियों वाले उपयोगकर्ता IAM पहचान केंद्र तक पहुँच और नियंत्रण करने में सक्षम होंगे।
|
||||
|
||||
हालांकि, डेलीगेट एडमिनिस्ट्रेटर के माध्यम से एक अलग खाते के उपयोगकर्ताओं को इसे प्रबंधित करने की अनुमति देना संभव है। उनके पास बिल्कुल वही अनुमति नहीं होगी, लेकिन वे [**प्रबंधन गतिविधियाँ**](https://docs.aws.amazon.com/singlesignon/latest/userguide/delegated-admin.html) करने में सक्षम होंगे।
|
||||
हालांकि, यह डेलीगेट एडमिनिस्ट्रेटर के माध्यम से संभव है कि एक अलग खाते के उपयोगकर्ताओं को इसे प्रबंधित करने की अनुमति दी जाए। उनके पास बिल्कुल वही अनुमति नहीं होगी, लेकिन वे [**प्रबंधन गतिविधियाँ**](https://docs.aws.amazon.com/singlesignon/latest/userguide/delegated-admin.html) करने में सक्षम होंगे।
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
Reference in New Issue
Block a user