AWS - S3 Unauthenticated Enum
S3 सार्वजनिक बकेट्स
एक बकेट को “सार्वजनिक” माना जाता है अगर कोई उपयोगकर्ता बकेट की सामग्री की सूची देख सकता है, और “निजी” अगर बकेट की सामग्री को केवल कुछ उपयोगकर्ताओं द्वारा सूचीबद्ध या लिखा जा सकता है।
कंपनियां बकेट अनुमतियों को गलत रूप से कॉन्फ़िगर कर सकती हैं जो सब कुछ या किसी भी खाते में AWS में प्रमाणित सभी उपयोगकर्ताओं को पहुंच प्रदान कर सकती है। ध्यान दें, कि ऐसी गलत कॉन्फ़िगरेशन के साथ कुछ क्रियाएँ की जा सकती हैं क्योंकि बकेट्स के अपने एक्सेस नियंत्रण सूची (ACLs) हो सकते हैं।
AWS-S3 गलत कॉन्फ़िगरेशन के बारे में जानें यहाँ: http://flaws.cloud और http://flaws2.cloud/
AWS बकेट्स खोजना
वेबपेज जब AWS का उपयोग कर रहा होता है तो कुछ संसाधनों को स्टोरेज करने के लिए खोजने के विभिन्न तरीके:
एनुमरेशन और OSINT:
wappalyzer ब्राउज़र प्लगइन का उपयोग करना
burp का उपयोग करके (वेब को spidering करके) या पृष्ठ में मैन्युअल रूप से नेविगेट करके सभी संसाधन लोड किए जाएंगे जो इतिहास में सहेजे जाएंगे।
डोमेनों में से संसाधनों की जाँच करें:
resources.domain.com
के रूप में CNAMES की जाँच करें क्योंकिbucket.s3.amazonaws.com
हो सकता हैhttps://buckets.grayhatwarfare.com की जाँच करें, एक वेबसाइट जिसमें पहले से ही खुले बकेट्स की जानकारी है।
बकेट का नाम और बकेट डोमेन नाम एक समान होना चाहिए।
flaws.cloud का IP 52.92.181.107 है और यदि आप वहाँ जाते हैं तो यह आपको https://aws.amazon.com/s3/ पर रीडायरेक्ट करता है। इसके अलावा,
dig -x 52.92.181.107
देता हैs3-website-us-west-2.amazonaws.com
।यह जांचने के लिए कि यह एक बकेट है आप भी जा सकते हैं https://flaws.cloud.s3.amazonaws.com/।
ब्रूट-फ़ोर्स
आप उस कंपनी से संबंधित नामों को ब्रूट-फ़ोर्सिंग करके बकेट्स खोज सकते हैं:
https://github.com/jordanpotti/AWSBucketDump (संभावित बकेट नामों के साथ एक सूची शामिल है)
S3 Buckets की लूट
दिए गए S3 ओपन बकेट्स, BucketLoot स्वचालित रूप से रोचक जानकारी की खोज कर सकता है।
क्षेत्र खोजें
आप AWS द्वारा समर्थित सभी क्षेत्रों को https://docs.aws.amazon.com/general/latest/gr/s3.html में खोज सकते हैं।
DNS के द्वारा
आप dig
और nslookup
के साथ एक DNS अनुरोध करके बकेट का क्षेत्र प्राप्त कर सकते हैं:
जांचें कि निर्धारित डोमेन में "वेबसाइट" शब्द है।\
आप स्टेटिक वेबसाइट तक पहुंच सकते हैं जाकर: flaws.cloud.s3-website-us-west-2.amazonaws.com
या आप बकेट तक पहुंच सकते हैं जाकर: flaws.cloud.s3-us-west-2.amazonaws.com
प्रयास करके
यदि आप एक बकेट तक पहुंचने की कोशिश करते हैं, लेकिन डोमेन नाम में आप एक और क्षेत्र निर्दिष्ट करते हैं (उदाहरण के लिए बकेट bucket.s3.amazonaws.com
में है लेकिन आप bucket.s3-website-us-west-2.amazonaws.com
तक पहुंचने की कोशिश करते हैं), तो आपको सही स्थान का संकेत दिया जाएगा:
बकेट का लेखन
बकेट की खुलापन का परीक्षण करने के लिए एक उपयोगकर्ता अपने वेब ब्राउज़र में URL दर्ज कर सकता है। एक निजी बकेट "पहुंच निषेधित" के साथ प्रतिक्रिया देगा। एक सार्वजनिक बकेट पहले 1,000 ऑब्जेक्ट्स की सूची देगा जो संग्रहित किए गए हैं।
सभी के लिए खुला है:
निजी:
आप इसे क्लाइंट टूल के साथ भी जांच सकते हैं:
यदि बकेट के पास एक डोमेन नाम नहीं है, तो उसे इनुमरेट करने की कोशिश करते समय, केवल बकेट नाम डालें और पूरा AWSs3 डोमेन नहीं। उदाहरण: s3://<BUCKETNAME>
सार्वजनिक URL टेम्पलेट
सार्वजनिक बकेट से खाता आईडी प्राप्त करें
एक AWS खाता को निर्धारित करना संभव है नए S3:ResourceAccount
नीति स्थिति कुंजी का लाभ उठाकर। यह स्थिति S3 बकेट के आधार पर पहुंच की प्रतिबंधित करती है (अन्य खाता-आधारित नीतियाँ अनुरोधकर्ता प्रिंसिपल के खाते के आधार पर प्रतिबंधित करती हैं)।
और क्योंकि नीति में वाइल्डकार्ड शामिल हो सकते हैं, इससे संभव है खाता संख्या केवल एक नंबर एक समय में पता लगाना।
यह उपकरण प्रक्रिया को स्वत: संचालित करता है:
यह तकनीक API Gateway URLs, Lambda URLs, Data Exchange डेटा सेट्स के साथ भी काम करती है और यह टैग के मान को प्राप्त करने के लिए भी काम करती है (यदि आप टैग कुंजी को जानते हैं)। आप मूल शोध और उस उपकरण conditional-love में अधिक जानकारी पा सकते हैं जो इस शोषण को स्वचालित करने के लिए है।
संदर्भ
Last updated