S3 bucket का AWS account ID पता करना
- 2021 में Ben Bridts ने सार्वजनिक रूप से एक्सेस किए जा सकने वाले S3 bucket का AWS account ID पता करने का एक अनोखा तरीका प्रकाशित किया था.
- यह लेख private और public, दोनों तरह के S3 bucket के account ID पता करने की तकनीक समझाता है.
S3 bucket से AWS account ID तक
- shell output के ज़रिए
bucket-alpha नाम के bucket का पहले से अज्ञात AWS account ID पता करने की तकनीक दिखाई गई है.
यह तकनीक वास्तव में कैसे काम करती है?
- Ben की तकनीक क्यों काम करती है, इसका विश्लेषण करते हुए तीन मुख्य तत्वों को जोड़ा गया है:
- request पर IAM policy लागू करने की क्षमता
- यह अनुमान लगाने की क्षमता कि IAM policy ने request को allow किया या नहीं
s3:ResourceAccount condition key पर wildcard match लागू करने की क्षमता
समाधान
- S3 के लिए VPC endpoint का उपयोग करके और CloudTrail में request reject होने पर व्यवहार के अंतर का लाभ उठाकर एक समाधान खोजा गया.
चरण-दर-चरण देखें
- जब bucket
bucket-alpha का account ID पता करना हो, तब यह step-by-step प्रक्रिया अपनाई जाती है:
- bucket region निर्धारित करना
- उसी region में VPC और VPC endpoint deploy करना
- VPC के भीतर EC2 instance शुरू करना और यह पुष्टि करना कि S3 के लिए VPC endpoint इस्तेमाल हो रहा है
- VPC endpoint policy में बदलाव करके यह तय करना कि target bucket का account ID "0" से शुरू होता है या नहीं
- target bucket को request भेजना
- CloudTrail में देखना कि request दिखाई देती है या नहीं
- नतीजों के आधार पर VPC endpoint policy बदलकर account ID के बारे में और जानकारी निकालना
परिणाम
- इस प्रक्रिया को automate करने के लिए एक script लिखी गई, जिससे bucket का account ID भरोसेमंद तरीके से पता किया जा सकता है.
- ज़रूरी tests की संख्या कम करने के लिए हर digit पर binary search की जाती है.
गति में सुधार
- VPC endpoint policy के प्रभावी होने और CloudTrail में हर result का अलग-अलग इंतज़ार करने में लगने वाला समय घटाने के लिए VPC endpoint policy में बदलाव किया गया.
- इससे account ID पता करने का समय घटकर 10 मिनट से कम रह गया.
राय
- AWS security team से चर्चा करने के बाद यह blog post प्रकाशित की गई.
- AWS account ID को sensitive information माना जाना चाहिए या नहीं, इस पर दिलचस्प चर्चा हुई.
- यह तकनीक S3 के अलावा दूसरी services पर भी लागू हो सकती है.
- ये तकनीकें इसलिए संभव हैं क्योंकि
s3:ResourceAccount के लिए StringLike condition का उपयोग किया जा सकता है.
- VPC endpoint policy द्वारा reject किए गए events का CloudTrail में log होना उपयोगी हो सकता है.
आभार
- Ben Bridt की मूल तकनीक ने इस काम को प्रेरित किया.
- Chris Farris की मदद और सलाह के लिए धन्यवाद.
GN⁺ की राय
- यह तकनीक cloud environment में security audit करने के लिए बेहद उपयोगी हो सकती है, खासकर AWS S3 bucket की ownership सत्यापित करने में.
- इस तकनीक से मिलने वाली जानकारी की संवेदनशीलता पर चर्चा, cloud service provider और users के बीच data security और privacy पर चल रही व्यापक बातचीत को दर्शाती है.
- इसी तरह की क्षमता देने वाले अन्य tools में AWS की अपनी service CloudTrail शामिल है, जिसका उपयोग उपयोगकर्ता के AWS environment में होने वाली सभी गतिविधियों को log और monitor करने के लिए किया जाता है.
- इस तकनीक को अपनाने से पहले users को सुनिश्चित करना चाहिए कि यह AWS की policies और security best practices के अनुरूप हो.
- इस तकनीक के फायदे हैं efficient security audit और data ownership की तेज़ पुष्टि, लेकिन संभावित privacy exposure जैसे जोखिमों पर भी विचार करना चाहिए.
1 टिप्पणियां
Hacker News राय