Translated ['src/pentesting-cloud/azure-security/az-privilege-escalation

This commit is contained in:
Translator
2025-01-08 21:08:50 +00:00
parent e0ec507501
commit 4126bb848d

View File

@@ -94,7 +94,7 @@ az webapp deployment list-publishing-profiles --name <app-name> --resource-group
}
]
```
ध्यान दें कि **उपयोगकर्ता नाम हमेशा समान होता है** (सिवाय FTP के, जो ऐप का नाम शुरुआत में जोड़ता है) लेकिन **पासवर्ड सभी के लिए समान होता है**
ध्यान दें कि **उपयोगकर्ता नाम हमेशा एक जैसा होता है** (सिवाय FTP के, जो ऐप का नाम शुरुआत में जोड़ता है) लेकिन **पासवर्ड सभी के लिए एक जैसा होता है**
इसके अलावा, **SCM URL है `<app-name>.scm.azurewebsites.net`**
@@ -118,7 +118,7 @@ az webapp deployment list-publishing-credentials --name <app-name> --resource-gr
```
ध्यान दें कि **क्रेडेंशियल्स वही हैं** जो पिछले कमांड में थे।
- एक और विकल्प होगा कि **आप अपने खुद के क्रेड्स सेट करें** और उनका उपयोग करें:
- एक और विकल्प होगा **अपने खुद के क्रेड्स सेट करना** और उनका उपयोग करना:
```bash
az webapp deployment user set \
--user-name hacktricks \
@@ -155,7 +155,7 @@ az rest --method PUT \
सिर्फ वैध SCM क्रेडेंशियल्स होने पर **कोड प्रकाशित करना** संभव है App सेवा में। यह निम्नलिखित कमांड का उपयोग करके किया जा सकता है।
इस पायथन उदाहरण के लिए, आप https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart से रेपो डाउनलोड कर सकते हैं, कोई भी **परिवर्तन** कर सकते हैं और फिर **ज़िप कर सकते हैं: `zip -r app.zip .`**
इस पायथन उदाहरण के लिए, आप https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart से रेपो डाउनलोड कर सकते हैं, कोई भी **परिवर्तन** कर सकते हैं और फिर **इसे ज़िप करं: `zip -r app.zip .`**
फिर आप निम्नलिखित कमांड के साथ एक वेब ऐप में **कोड प्रकाशित कर सकते हैं**:
```bash
@@ -165,7 +165,7 @@ curl -X POST "<SMC-URL>/api/publish?type=zip" --data-binary "@./app.zip" -u '<us
उल्लेखित Azure अनुमति कई दिलचस्प क्रियाएँ करने की अनुमति देती है जो SCM क्रेडेंशियल्स के साथ भी की जा सकती हैं:
- पढ़ें **Webjobs** लॉग:
- **Webjobs** लॉग पढ़ें:
```bash
# Using Azure credentials
az rest --method GET --url "<SCM-URL>/vfs/data/jobs/<continuous | triggered>/rev5/job_log.txt" --resource "https://management.azure.com/"
@@ -205,7 +205,7 @@ curl -X PUT \
```
### Microsoft.Web/sites/write, Microsoft.Web/sites/read, Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
ये अनुमतियाँ **एक प्रबंधित पहचान** को ऐप सेवा में असाइन करने की अनुमति देती हैं, इसलिए यदि कोई ऐप सेवा पहले से ही समझौता की गई थी, तो यह हमलावर को ऐप सेवा में नई प्रबंधित पहचानों को असाइन करने और **अधिकारों को बढ़ाने** की अनुमति देगा।
ये अनुमतियाँ **एक प्रबंधित पहचान** को ऐप सेवा में **सौंपने** की अनुमति देती हैं, इसलिए यदि कोई ऐप सेवा पहले से ही समझौता की गई थी, तो यह हमलावर को ऐप सेवा में नई प्रबंधित पहचानों को सौंपने और **अधिकारों को बढ़ाने** की अनुमति देगा।
```bash
az webapp identity assign --name <app-name> --resource-group <res-group> --identities /subscriptions/<subcripttion-id>/resourceGroups/<res_group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
```
@@ -216,9 +216,9 @@ az webapp identity assign --name <app-name> --resource-group <res-group> --ident
az webapp config connection-string list --name <name> --resource-group <res-group>
az webapp config appsettings list --name <name> --resource-group <res-group>
```
### कॉन्फ़िगर की गई तीसरी पार्टी क्रेडेंशियल्स पढ़ें
### Read Configured Third Party Credentials
निम्नलिखित कमांड चलाकर **तीसरार्टी क्रेडेंशियल्स** पढ़ना संभव है जो वर्तमान खाते में कॉन्फ़िगर क हैं। ध्यान दें कि यदि उदाहरण के लिए कुछ Github क्रेडेंशियल्स किसी अन्य उपयोगकर्ता में कॉन्फ़िगर किए गए हैं, तो आप किसी अन्य से टोकन तक पहुँच नहीं पाएंगे।
निम्नलिखित कमांड चलाकर **तीसरक्ष के क्रेडेंशियल्स** को पढ़ना संभव है जो वर्तमान खाते में कॉन्फ़िगर किए हैं। ध्यान दें कि यदि उदाहरण के लिए कुछ Github क्रेडेंशियल्स किसी अन्य उपयोगकर्ता में कॉन्फ़िगर किए गए हैं, तो आप किसी अन्य से टोकन तक पहुँच नहीं पाएंगे।
```bash
az rest --method GET \
--url "https://management.azure.com/providers/Microsoft.Web/sourcecontrols?api-version=2024-04-01"