AWS - API Gateway Unauthenticated Enum
Last updated
Last updated
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Attack Vectors for APIs Using AWS API Gateway Lambda Authorizers - Alexandre & Leonardo के अनुसार, Lambda Authorizers को API एंडपॉइंट्स को इनवोक करने के लिए अनुमति देने के लिए IAM सिंटैक्स का उपयोग करके कॉन्फ़िगर किया जा सकता है। यह दस्तावेज़ों से लिया गया है:
इस तरीके से एंडपॉइंट्स को इनवोक करने के लिए अनुमति देने की समस्या यह है कि "*" का अर्थ "कुछ भी" है और कोई और regex सिंटैक्स समर्थित नहीं है।
कुछ उदाहरण:
एक नियम जैसे arn:aws:execute-apis:sa-east-1:accid:api-id/prod/*/dashboard/*
ताकि प्रत्येक उपयोगकर्ता को /dashboard/user/{username}
तक पहुंच मिल सके, उन्हें अन्य मार्गों तक भी पहुंच देगा जैसे कि /admin/dashboard/createAdmin
उदाहरण के लिए।
ध्यान दें कि "*" स्लैश के साथ विस्तारित होना बंद नहीं करता, इसलिए, यदि आप उदाहरण के लिए api-id में "*" का उपयोग करते हैं, तो यह "किसी भी चरण" या "किसी भी विधि" को भी इंगित कर सकता है जब तक अंतिम regex अभी भी मान्य है।
तो arn:aws:execute-apis:sa-east-1:accid:*/prod/GET/dashboard/*
एक पोस्ट अनुरोध को परीक्षण चरण के लिए पथ /prod/GET/dashboard/admin
पर मान्य कर सकता है उदाहरण के लिए।
आपको हमेशा स्पष्ट होना चाहिए कि आप किसे पहुंच देने की अनुमति देना चाहते हैं और फिर जांचें कि क्या दी गई अनुमतियों के साथ अन्य परिदृश्य संभव हैं।
अधिक जानकारी के लिए, docs के अलावा, आप इस आधिकारिक aws github में ऑथराइज़र्स को लागू करने के लिए कोड पा सकते हैं।
उसी talk में यह तथ्य उजागर किया गया है कि यदि कोड उपयोगकर्ता इनपुट का उपयोग करके IAM नीतियों को जनरेट कर रहा है, तो वाइल्डकार्ड (और अन्य जैसे "." या विशिष्ट स्ट्रिंग) वहां शामिल किए जा सकते हैं जिसका लक्ष्य प्रतिबंधों को बायपास करना है।
S3 बकेट्स, डेटा एक्सचेंज और लैम्ब्डा यूआरएल गेटवे की तरह, एक सार्वजनिक API गेटवे यूआरएल से aws:ResourceAccount
Policy Condition Key का दुरुपयोग करके एक खाते का खाता आईडी खोजना संभव है। यह नीति के aws:ResourceAccount
अनुभाग में वाइल्डकार्ड का दुरुपयोग करके एक बार में एक अक्षर खाता आईडी खोजकर किया जाता है।
यह तकनीक आपको टैग के मान प्राप्त करने की भी अनुमति देती है यदि आप टैग कुंजी जानते हैं (कुछ डिफ़ॉल्ट दिलचस्प हैं)।
आप मूल शोध और इस शोषण को स्वचालित करने के लिए उपकरण conditional-love में अधिक जानकारी प्राप्त कर सकते हैं।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)