AWS - Relational Database (RDS) Enum
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)
AWS द्वारा प्रदान किया गया रिलेशनल डेटाबेस सेवा (RDS) एक क्लाउड में रिलेशनल डेटाबेस के तैनाती, संचालन और स्केलिंग को सरल बनाने के लिए डिज़ाइन किया गया है। यह सेवा लागत दक्षता और स्केलेबिलिटी के लाभ प्रदान करती है जबकि हार्डवेयर प्रावधान, डेटाबेस कॉन्फ़िगरेशन, पैचिंग और बैकअप जैसे श्रम-गहन कार्यों को स्वचालित करती है।
AWS RDS विभिन्न व्यापक रूप से उपयोग किए जाने वाले रिलेशनल डेटाबेस इंजनों का समर्थन करता है, जिसमें MySQL, PostgreSQL, MariaDB, Oracle Database, Microsoft SQL Server, और Amazon Aurora शामिल हैं, जो MySQL और PostgreSQL दोनों के लिए संगतता प्रदान करते हैं।
RDS की प्रमुख विशेषताएँ शामिल हैं:
डेटाबेस उदाहरणों का प्रबंधन सरल है।
पढ़ने के प्रदर्शन को बढ़ाने के लिए रीड रेप्लिका का निर्माण।
उच्च उपलब्धता और फेलओवर तंत्र सुनिश्चित करने के लिए मल्टी-एवेलबिलिटी ज़ोन (AZ) तैनाती का कॉन्फ़िगरेशन।
अन्य AWS सेवाओं के साथ एकीकरण, जैसे:
मजबूत पहुँच नियंत्रण के लिए AWS पहचान और पहुँच प्रबंधन (IAM)।
व्यापक निगरानी और मैट्रिक्स के लिए AWS CloudWatch।
विश्राम में एन्क्रिप्शन सुनिश्चित करने के लिए AWS की प्रबंधन सेवा (KMS)।
DB क्लस्टर बनाते समय मास्टर यूज़रनेम को कॉन्फ़िगर किया जा सकता है (admin
डिफ़ॉल्ट रूप से)। इस उपयोगकर्ता का पासवर्ड उत्पन्न करने के लिए आप:
स्वयं एक पासवर्ड निर्दिष्ट करें
RDS को स्वतः उत्पन्न करने के लिए कहें
RDS को AWS सीक्रेट मैनेजर में KMS कुंजी के साथ एन्क्रिप्टेड रूप में प्रबंधित करने के लिए कहें
प्रमाणीकरण विकल्पों के 3 प्रकार हैं, लेकिन मास्टर पासवर्ड का उपयोग हमेशा अनुमति है:
डिफ़ॉल्ट रूप से कोई सार्वजनिक पहुँच डेटाबेस को नहीं दी जाती है, हालाँकि इसे दी जा सकती है। इसलिए, डिफ़ॉल्ट रूप से केवल उसी VPC की मशीनें इसे एक्सेस कर सकेंगी यदि चयनित सुरक्षा समूह (जो EC2 SG में संग्रहीत हैं) इसकी अनुमति देता है।
DB उदाहरण को उजागर करने के बजाय, एक RDS प्रॉक्सी बनाना संभव है जो DB क्लस्टर की स्केलेबिलिटी और उपलब्धता में सुधार करता है।
इसके अलावा, डेटाबेस पोर्ट को भी संशोधित किया जा सकता है।
एन्क्रिप्शन डिफ़ॉल्ट रूप से सक्षम है एक AWS प्रबंधित कुंजी का उपयोग करके (एक CMK को इसके बजाय चुना जा सकता है)।
आपकी एन्क्रिप्शन को सक्षम करने से, आप अपने स्टोरेज, स्नैपशॉट, रीड रेप्लिका और आपके बैकअप के लिए विश्राम में एन्क्रिप्शन को सक्षम कर रहे हैं। इस एन्क्रिप्शन को प्रबंधित करने के लिए कुंजी KMS का उपयोग करके जारी की जा सकती हैं। आपके डेटाबेस के निर्माण के बाद इस स्तर की एन्क्रिप्शन को जोड़ना संभव नहीं है। यह इसके निर्माण के दौरान किया जाना चाहिए।
हालांकि, एक वर्कअराउंड है जो आपको एक अनएन्क्रिप्टेड डेटाबेस को एन्क्रिप्ट करने की अनुमति देता है। आप अपने अनएन्क्रिप्टेड डेटाबेस का एक स्नैपशॉट बना सकते हैं, उस स्नैपशॉट की एक एन्क्रिप्टेड प्रति बना सकते हैं, उस एन्क्रिप्टेड स्नैपशॉट का उपयोग करके एक नया डेटाबेस बना सकते हैं, और फिर, अंततः, आपका डेटाबेस एन्क्रिप्टेड हो जाएगा।
RDS में एप्लिकेशन स्तर पर अंतर्निहित एन्क्रिप्शन क्षमताओं के साथ-साथ, RDS विश्राम में डेटा की सुरक्षा के लिए अतिरिक्त प्लेटफ़ॉर्म-स्तरीय एन्क्रिप्शन तंत्र का समर्थन करता है। इसमें Oracle और SQL Server के लिए ट्रांसपेरेंट डेटा एन्क्रिप्शन (TDE) शामिल है। हालाँकि, यह महत्वपूर्ण है कि ध्यान दें कि जबकि TDE विश्राम में डेटा को एन्क्रिप्ट करके सुरक्षा बढ़ाता है, यह डेटाबेस प्रदर्शन को प्रभावित कर सकता है। यह प्रदर्शन प्रभाव विशेष रूप से MySQL क्रिप्टोग्राफिक फ़ंक्शंस या Microsoft Transact-SQL क्रिप्टोग्राफिक फ़ंक्शंस के साथ उपयोग करने पर ध्यान देने योग्य है।
TDE का उपयोग करने के लिए कुछ प्रारंभिक कदम आवश्यक हैं:
विकल्प समूह संघ:
डेटाबेस को एक विकल्प समूह के साथ संघबद्ध होना चाहिए। विकल्प समूह सेटिंग्स और सुविधाओं के लिए कंटेनर के रूप में कार्य करते हैं, डेटाबेस प्रबंधन को सरल बनाते हैं, जिसमें सुरक्षा सुधार शामिल हैं।
हालाँकि, यह ध्यान रखना महत्वपूर्ण है कि विकल्प समूह केवल विशिष्ट डेटाबेस इंजनों और संस्करणों के लिए उपलब्ध हैं।
विकल्प समूह में TDE का समावेश:
एक विकल्प समूह के साथ संघबद्ध होने के बाद, Oracle ट्रांसपेरेंट डेटा एन्क्रिप्शन विकल्प को उस समूह में शामिल करने की आवश्यकता है।
यह पहचानना आवश्यक है कि एक बार जब TDE विकल्प को एक विकल्प समूह में जोड़ा जाता है, तो यह एक स्थायी विशेषता बन जाती है और इसे हटाया नहीं जा सकता।
TDE एन्क्रिप्शन मोड:
TDE दो अलग-अलग एन्क्रिप्शन मोड प्रदान करता है:
TDE टेबलस्पेस एन्क्रिप्शन: यह मोड पूरे तालिकाओं को एन्क्रिप्ट करता है, डेटा सुरक्षा के व्यापक दायरे को प्रदान करता है।
TDE कॉलम एन्क्रिप्शन: यह मोड डेटाबेस के भीतर विशिष्ट, व्यक्तिगत तत्वों को एन्क्रिप्ट करने पर ध्यान केंद्रित करता है, जिससे यह नियंत्रित करना संभव होता है कि कौन सा डेटा एन्क्रिप्ट किया गया है।
इन पूर्वापेक्षाओं और TDE के संचालन की जटिलताओं को समझना RDS के भीतर एन्क्रिप्शन को प्रभावी ढंग से लागू करने और प्रबंधित करने के लिए महत्वपूर्ण है, डेटा सुरक्षा और आवश्यक मानकों के अनुपालन को सुनिश्चित करना।
DynamoDB डेटा तक पहुँचने के लिए SQL सिंटैक्स के साथ तरीके हैं, इसलिए, सामान्य SQL इंजेक्शन भी संभव हैं।
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)