Azure Pentesting
मैं अभी भी एज़्यूर मेथडोलॉजी बना रहा हूँ
मूलभूत जानकारी
pageAz - Basic Informationएज़्यूर पेंटेस्टर/रेड टीम मेथडोलॉजी
एक AZURE परिवेश की मान्यता करने के लिए बहुत महत्वपूर्ण है कि पता चले: कौन सी सेवाएं उपयोग की जा रही हैं, क्या उजागर किया जा रहा है, किसके पास पहुंच है और आंतरिक एज़्यूर सेवाएं और बाह्य सेवाएं कैसे जुड़ी हैं।
रेड टीम के दृष्टिकोण से, एक एज़्यूर परिवेश को कंप्रमाइज करने का पहला कदम कुछ क्रेडेंशियल्स प्राप्त करना है। यहाँ आपको इसे कैसे करने के कुछ विचार मिलेंगे:
github में लीक - OSINT
सोशल इंजीनियरिंग
पासवर्ड पुन: उपयोग (पासवर्ड लीक)
एज़्यूर-होस्टेड एप्लिकेशन में वंशानुक्रमिकता
सर्वर साइड रिक्वेस्ट फॉर्जरी मेटाडेटा एंडपॉइंट तक पहुंच के साथ
स्थानीय फ़ाइल पढ़ें
/home/USERNAME/.azure
C:\Users\USERNAME\.azure
accessTokens.json
फ़ाइलaz cli
2.30 से पहले - जनवरी 2022 - में स्पष्ट पाठ में एक्सेस टोकन्स स्टोर करती थीazureProfile.json
फ़ाइल में लॉग इन उपयोगकर्ता के बारे में जानकारी होती है।az logout
टोकन को हटा देता है।पुराने संस्करणों में
Az PowerShell
टोकन को स्पष्ट पाठ मेंTokenCache.dat
में स्टोर करता था। यह भीAzureRmContext.json
में सेवा प्रिंसिपल सीक्रेट को स्पष्ट पाठ में स्टोर करता है। कमांडलेटSave-AzContext
का उपयोग टोकन स्टोर करने के लिए किया जा सकता है। उन्हें हटाने के लिएDisconnect-AzAccount
का उपयोग करें।3rd पार्टी भेट गई
आंतरिक कर्मचारी
सामान्य फिशिंग (क्रेडेंशियल या ओआथ ऐप)
यदि आपने एज़्यूर टेनेंट के अंदर किसी भी उपयोगकर्ता को कंप्रमाइज़ नहीं किया है, तो आप इससे कुछ जानकारी इकट्ठा कर सकते हैं:
pageAz - Unauthenticated Enum & Initial Entryजब आपने क्रेडेंशियल्स प्राप्त कर लिए हैं, तो आपको जानने की आवश्यकता है कि वे किसके हैं, और उनके पास क्या है पहुंच, इसलिए आपको कुछ मूलभूत गणना करनी होगी:
मूलभूत गणना
ध्यान रखें कि गणना का शोर लॉगिन है, गणना नहीं।
SSRF
अगर आपने एज़्यूर के अंदर किसी मशीन में SSRF पाया है, तो ये ट्रिक्स के लिए इस पेज की जाँच करें:
लॉगिन शर्तों को उल्लंघन करें
जब आपके पास कुछ मान्य क्रेडेंशियल्स होते हैं लेकिन आप लॉगिन नहीं कर सकते, तो ये कुछ सामान्य सुरक्षा उपाय हो सकते हैं:
IP सफेद सूची -- आपको एक मान्य IP कंप्रमाइज़ करना होगा
भूगोलिक प्रतिबंध -- पता लगाएं कि उपयोगकर्ता कहाँ रहता है या कंपनी के कार्यालय कहाँ हैं और उसी शहर से IP प्राप्त करें (कम से कम उसी शहर का या देश का)
ब्राउज़र -- शायद केवल कुछ ऑपरेटिंग सिस्टम (विंडोज, लिनक्स, मैक, एंड्रॉयड, आईओएस) का ब्राउज़र अनुमत है। पीडीएफ़ डाउनलोड करें जिसमें विक्टिम/कंपनी का उपयोग किया जाने वाला ऑपरेटिंग सिस्टम है।
आप यह भी कोशिश कर सकते हैं सेवा प्रिंसिपल क्रेडेंशियल्स कंप्रमाइज करने के लिए क्योंकि वे सामान्यत: कम सीमित होते हैं और उसका लॉगिन कम समीक्षित होता है
इसे उल्लंघन करने के बाद, आप अपने प्रारंभिक सेटअप पर वापस जा सकते हैं और आपके पास अभी भी पहुंच होगी।
सबडोमेन ताकनओवर
Whoami
जानें कि कैसे स्थापित करें az cli, AzureAD और Az PowerShell को Az - AzureAD खंड में।
पहली चीज जो आपको पता होनी चाहिए है आप कौन हैं (किस परिवेश में हैं):
हैकर्स आमतौर पर Azure AD क्रेडेंशियल्स को प्राप्त करने के लिए सोशल इंजीनियरिंग तकनीक का उपयोग करते हैं, जैसे फिशिंग या फेक लॉगिन पेज्स। इसके अलावा, वे ब्रूट फोर्स अटैक या रेन्डम पासवर्ड जनरेशन का भी उपयोग कर सकते हैं।
हम अपने Azure सब्सक्रिप्शन के साथ काम करने के लिए Az PowerShell का उपयोग कर सकते हैं। इसके लिए, हमें Az PowerShell मॉड्यूल को इनस्टॉल करना होगा और फिर लॉगिन करना होगा। इसके बाद, हम Azure सेवाओं को प्रबंधित करने के लिए PowerShell कमांड्स का उपयोग कर सकते हैं।
एज़्यूर को एनुमरेट करने के लिए सबसे महत्वपूर्ण कमांड में से एक है Get-AzResource
जो Az PowerShell से है क्योंकि यह आपको जानने की अनुमति देता है कि आपके वर्तमान उपयोगकर्ता किस संसाधन को देख सकते हैं।
आप वेब कॉन्सोल में भी एक ही जानकारी प्राप्त कर सकते हैं https://portal.azure.com/#view/HubsExtension/BrowseAll जाकर या "सभी संसाधन" की खोज करके।
AzureAD एनुमरेशन
डिफ़ॉल्ट रूप से, किसी भी उपयोगकर्ता को चीजों को एनुमरेट करने के लिए पर्याप्त अनुमति होनी चाहिए, जैसे कि, उपयोगकर्ताओं, समूहों, भूमिकाएँ, सेवा प्रिंसिपल्स... (डिफ़ॉल्ट एज़्यूरएडी अनुमतियों की जांच करें डिफ़ॉल्ट उपयोगकर्ता अनुमतियाँ)। आप यहाँ एक गाइड पा सकते हैं:
pageAz - AzureAD (AAD)अब जब आपके पास अपने क्रेडेंशियल्स के बारे में कुछ जानकारी है (और यदि आप एक रेड टीम हैं तो आशा है कि आपको पहचान नहीं ली गई है). तो यह समय है कि पता लगाएं कि वातावरण में कौन सी सेवाएं उपयोग की जा रही हैं। निम्नलिखित खंड में आप कुछ सामान्य सेवाओं को एनुमरेट करने के कुछ तरीके देख सकते हैं।
सेवा प्रिंसिपल और एक्सेस नीति
एक एज़्यूर सेवा में एक सिस्टम पहचान (सेवा खुद की) हो सकती है या एक उपयोगकर्ता निर्धारित प्रबंधित पहचान का उपयोग कर सकती है। इस पहचान को, उदाहरण के लिए, एक KeyVault में रहस्य पढ़ने के लिए एक्सेस नीति हो सकती है। ये एक्सेस नीतियाँ प्रतिबंधित होनी चाहिए (कम सुविधा सिद्धांत), लेकिन जरूरत से अधिक अनुमतियाँ हो सकती हैं। सामान्यत: एक ऐप सेवा KeyVault का उपयोग रहस्य और प्रमाणपत्र प्राप्त करने के लिए करेगी।
इसलिए इन पहचानों का अन्वेषण करना उपयोगी है।
ऐप सेवा SCM
ऐप सेवा 'कंटेनर' में लॉग इन करने के लिए कुडू कंसोल।
वेबशैल
वेबशैल का उपयोग करें portal.azure.com और शैल का चयन करें, या शैल.azure.com का उपयोग करें, एक बैश या पावरशैल के लिए। इस शैल की 'डिस्क' को एक छवि फ़ाइल के रूप में एक स्टोरेज-अकाउंट में संग्रहित किया जाता है।
एज़्यूर डेवऑप्स
एज़्यूर डेवऑप्स एज़्यूर से अलग है। इसमें रिपॉजिटरी, पाइपलाइन (yaml या रिलीज), बोर्ड, विकि, और अधिक है। वेरिएबल ग्रुप्स का उपयोग मान्यता मानों और रहस्यों को संग्रहित करने के लिए किया जाता है।
स्वचालित रीकॉन टूल्स
Last updated