AWS - API Gateway Post Exploitation
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
For more information check:
AWS - API Gateway Enumआप https://us-east-1.console.aws.amazon.com/vpc/home#CreateVpcEndpoint में com.amazonaws.us-east-1.execute-api
सेवा के साथ एक एंडपॉइंट बना सकते हैं, उस नेटवर्क में एंडपॉइंट को उजागर करें जहाँ आपके पास पहुँच है (संभवतः एक EC2 मशीन के माध्यम से) और सभी कनेक्शनों की अनुमति देने वाले सुरक्षा समूह को असाइन करें।
फिर, EC2 मशीन से आप एंडपॉइंट तक पहुँच प्राप्त कर सकेंगे और इसलिए उस गेटवे API को कॉल कर सकेंगे जो पहले उजागर नहीं हुआ था।
यह तकनीक इस CTF writeup में पाई गई थी।
जैसा कि AWS दस्तावेज़ में PassthroughBehavior
अनुभाग में संकेतित किया गया है, डिफ़ॉल्ट रूप से, मान WHEN_NO_MATCH
, जब अनुरोध के Content-Type हेडर की जांच की जाती है, तो अनुरोध को बिना किसी परिवर्तन के बैक एंड पर पास करेगा।
इसलिए, CTF में API गेटवे में एक एकीकरण टेम्पलेट था जो फ्लैग को प्रतिक्रिया में निकालने से रोक रहा था जब एक अनुरोध Content-Type: application/json
के साथ भेजा गया था:
हालांकि, Content-type: text/json
के साथ एक अनुरोध भेजने से उस फ़िल्टर को रोका जा सकता है।
अंत में, चूंकि API Gateway केवल Get
और Options
की अनुमति दे रहा था, इसलिए किसी भी सीमा के बिना POST अनुरोध भेजकर शरीर में क्वेरी के साथ एक मनमाना dynamoDB क्वेरी भेजना संभव था और X-HTTP-Method-Override: GET
हेडर का उपयोग करना:
In the Enumeration section you can see how to obtain the usage plan of the keys. If you have the key and it's limited to X usages per month, you could just use it and cause a DoS.
The API Key just need to be included inside a HTTP header called x-api-key
.
apigateway:UpdateGatewayResponse
, apigateway:CreateDeployment
An attacker with the permissions apigateway:UpdateGatewayResponse
and apigateway:CreateDeployment
can modify an existing Gateway Response to include custom headers or response templates that leak sensitive information or execute malicious scripts.
संभावित प्रभाव: संवेदनशील जानकारी का लीक, दुर्भावनापूर्ण स्क्रिप्ट का निष्पादन, या API संसाधनों तक अनधिकृत पहुंच।
परीक्षण की आवश्यकता
apigateway:UpdateStage
, apigateway:CreateDeployment
एक हमलावर जिसके पास apigateway:UpdateStage
और apigateway:CreateDeployment
की अनुमति है, एक मौजूदा API गेटवे स्टेज को ट्रैफ़िक को एक अलग स्टेज पर पुनर्निर्देशित करने या कैशिंग सेटिंग्स को बदलने के लिए संशोधित कर सकता है ताकि कैश किए गए डेटा तक अनधिकृत पहुंच प्राप्त की जा सके।
संभावित प्रभाव: कैश किए गए डेटा तक अनधिकृत पहुंच, API ट्रैफ़िक को बाधित या इंटरसेप्ट करना।
परीक्षण की आवश्यकता
apigateway:PutMethodResponse
, apigateway:CreateDeployment
एक हमलावर जिसके पास apigateway:PutMethodResponse
और apigateway:CreateDeployment
की अनुमति है, एक मौजूदा API गेटवे REST API विधि के विधि प्रतिक्रिया को संशोधित कर सकता है ताकि कस्टम हेडर या प्रतिक्रिया टेम्पलेट शामिल किए जा सकें जो संवेदनशील जानकारी लीक करते हैं या दुर्भावनापूर्ण स्क्रिप्ट निष्पादित करते हैं।
संभावित प्रभाव: संवेदनशील जानकारी का लीक, दुर्भावनापूर्ण स्क्रिप्ट का निष्पादन, या API संसाधनों तक अनधिकृत पहुंच।
परीक्षण की आवश्यकता
apigateway:UpdateRestApi
, apigateway:CreateDeployment
एक हमलावर जिसके पास apigateway:UpdateRestApi
और apigateway:CreateDeployment
की अनुमति है, API गेटवे REST API सेटिंग्स को लॉगिंग को अक्षम करने या न्यूनतम TLS संस्करण को बदलने के लिए संशोधित कर सकता है, जो API की सुरक्षा को कमजोर कर सकता है।
संभावित प्रभाव: API की सुरक्षा को कमजोर करना, संभावित रूप से अनधिकृत पहुंच की अनुमति देना या संवेदनशील जानकारी को उजागर करना।
परीक्षण की आवश्यकता
apigateway:CreateApiKey
, apigateway:UpdateApiKey
, apigateway:CreateUsagePlan
, apigateway:CreateUsagePlanKey
एक हमलावर जिसके पास अनुमतियाँ apigateway:CreateApiKey
, apigateway:UpdateApiKey
, apigateway:CreateUsagePlan
, और apigateway:CreateUsagePlanKey
हैं, नए API कुंजी बना सकता है, उन्हें उपयोग योजनाओं के साथ जोड़ सकता है, और फिर इन कुंजियों का उपयोग API तक अनधिकृत पहुंच के लिए कर सकता है।
संभावित प्रभाव: API संसाधनों तक अनधिकृत पहुंच, सुरक्षा नियंत्रणों को बायपास करना।
परीक्षण की आवश्यकता
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)