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)
Relational Database Service (RDS) koji nudi AWS je dizajniran da pojednostavi implementaciju, rad i skaliranje relacione baze podataka u oblaku. Ova usluga nudi prednosti troškovne efikasnosti i skalabilnosti dok automatizuje radno intenzivne zadatke poput obezbeđivanja hardvera, konfiguracije baze podataka, zakrpa i rezervnih kopija.
AWS RDS podržava različite široko korišćene motore relacijskih baza podataka uključujući MySQL, PostgreSQL, MariaDB, Oracle Database, Microsoft SQL Server i Amazon Aurora, sa kompatibilnošću za MySQL i PostgreSQL.
Ključne karakteristike RDS uključuju:
Upravljanje instancama baza podataka je pojednostavljeno.
Kreiranje read replicas za poboljšanje performansi čitanja.
Konfiguracija multi-Availability Zone (AZ) implementacija za obezbeđivanje visoke dostupnosti i mehanizama prebacivanja.
Integracija sa drugim AWS uslugama, kao što su:
AWS Identity and Access Management (IAM) za robusnu kontrolu pristupa.
AWS CloudWatch za sveobuhvatno praćenje i metrike.
AWS Key Management Service (KMS) za obezbeđivanje enkripcije u mirovanju.
Kada kreirate DB klaster, glavni korisnički naziv može biti konfigurisan (admin
po defaultu). Da biste generisali lozinku za ovog korisnika možete:
Naznačiti lozinku sami
Reći RDS da je automatski generiše
Reći RDS da je upravlja u AWS Secret Manager enkriptovano KMS ključem
Postoje 3 tipa opcija za autentifikaciju, ali korišćenje glavne lozinke je uvek dozvoljeno:
Po defaultu nema javnog pristupa bazi podataka, međutim može biti dodeljen. Stoga, po defaultu samo mašine iz iste VPC će moći da joj pristupe ako izabrana grupa sigurnosti (smeštena u EC2 SG) to dozvoljava.
Umesto izlaganja DB instance, moguće je kreirati RDS Proxy koji poboljšava skalabilnost i dostupnost DB klastera.
Pored toga, port baze podataka se takođe može modifikovati.
Enkripcija je omogućena po defaultu koristeći AWS upravljani ključ (može se izabrati i CMK).
Omogućavanjem vaše enkripcije, omogućavate enkripciju u mirovanju za vašu skladištenje, snimke, read replike i vaše rezervne kopije. Ključevi za upravljanje ovom enkripcijom mogu biti izdati korišćenjem KMS. Nije moguće dodati ovaj nivo enkripcije nakon što je vaša baza podataka kreirana. To mora biti učinjeno tokom njene kreacije.
Međutim, postoji rešenje koje vam omogućava da enkriptujete neenkriptovanu bazu podataka na sledeći način. Možete kreirati snimak vaše neenkriptovane baze podataka, kreirati enkriptovanu kopiju tog snimka, koristiti tu enkriptovanu snimku za kreiranje nove baze podataka, i na kraju, vaša baza podataka bi tada bila enkriptovana.
Pored enkripcijskih mogućnosti inherentnih RDS-u na nivou aplikacije, RDS takođe podržava dodatne mehanizme enkripcije na platformi za zaštitu podataka u mirovanju. Ovo uključuje Transparent Data Encryption (TDE) za Oracle i SQL Server. Međutim, važno je napomenuti da, iako TDE poboljšava sigurnost enkripcijom podataka u mirovanju, može takođe uticati na performanse baze podataka. Ovaj uticaj na performanse je posebno primetan kada se koristi u kombinaciji sa MySQL kriptografskim funkcijama ili Microsoft Transact-SQL kriptografskim funkcijama.
Da biste koristili TDE, potrebni su određeni preliminarni koraci:
Asocijacija sa grupom opcija:
Baza podataka mora biti povezana sa grupom opcija. Grupe opcija služe kao kontejneri za podešavanja i funkcije, olakšavajući upravljanje bazom podataka, uključujući poboljšanja sigurnosti.
Međutim, važno je napomenuti da su grupe opcija dostupne samo za određene motore baza podataka i verzije.
Uključivanje TDE u grupu opcija:
Kada je povezana sa grupom opcija, opcija Oracle Transparent Data Encryption treba biti uključena u tu grupu.
Važno je prepoznati da, kada se TDE opcija doda grupi opcija, postaje trajna i ne može se ukloniti.
TDE režimi enkripcije:
TDE nudi dva različita režima enkripcije:
TDE Tablespace Encryption: Ovaj režim enkriptuje cele tabele, pružajući širi opseg zaštite podataka.
TDE Column Encryption: Ovaj režim se fokusira na enkripciju specifičnih, pojedinačnih elemenata unutar baze podataka, omogućavajući veću kontrolu nad tim koji su podaci enkriptovani.
Razumevanje ovih preduslova i operativnih složenosti TDE je ključno za efikasno implementiranje i upravljanje enkripcijom unutar RDS, obezbeđujući i sigurnost podataka i usklađenost sa potrebnim standardima.
Postoje načini za pristup podacima iz DynamoDB koristeći SQL sintaksu, stoga su tipične SQL injekcije takođe moguće.
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)