AWS - Relational Database (RDS) Enum

Relacijska baza podataka (RDS) koju nudi AWS dizajnirana je da olakša implementaciju, operaciju i skaliranje relacijske baze podataka u oblaku. Ova usluga nudi prednosti u efikasnosti troškova i skalabilnosti dok automatizuje zadatke koji zahtevaju puno rada, 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-a uključuju:

  • Pojednostavljenje upravljanja instancama baze podataka.

  • Kreiranje read replika radi poboljšanja performansi čitanja.

  • Konfiguracija multi-Availability Zone (AZ) implementacija radi osiguranja visoke dostupnosti i mehanizama preusmeravanja.

  • Integracija sa drugim AWS uslugama, kao što su:

    • AWS Identity and Access Management (IAM) za snažnu kontrolu pristupa.

    • AWS CloudWatch za sveobuhvatno praćenje i metrike.

    • AWS Key Management Service (KMS) za osiguravanje šifrovanja u mirovanju.

Kredencijali

Prilikom kreiranja DB klastera, glavno korisničko ime može biti konfigurisano (admin je podrazumevano). Da biste generisali lozinku ovog korisnika, možete:

  • Navesti lozinku sami

  • Recite RDS-u da je automatski generiše

  • Recite RDS-u da je upravlja u AWS Secret Manageru šifrovano sa KMS ključem

Autentikacija

Postoje 3 vrste opcija za autentikaciju, ali korišćenje glavne lozinke je uvek dozvoljeno:

Javni pristup & VPC

Podrazumevano nema javnog pristupa bazama podataka, međutim, može biti omogućen. Stoga, podrazumevano samo mašine iz iste VPC će moći da joj pristupe ako odabrana sigurnosna grupa (koje se čuvaju u EC2 SG) to dozvoljava.

Umesto izlaganja DB instance, moguće je kreirati RDS Proxy koji unapređuje skalabilnost i dostupnost DB klastera.

Takođe, port baze podataka može biti izmenjen takođe.

Šifrovanje

Šifrovanje je omogućeno podrazumevano korišćenjem AWS upravljanog ključa (umesto toga može biti izabran CMK).

Omogućavanjem šifrovanja, omogućavate šifrovanje u mirovanju za vaše skladište, snimke, read replike i vaše rezervne kopije. Ključevi za upravljanje ovim šifrovanjem mogu biti izdati korišćenjem KMS. Nije moguće dodati ovaj nivo šifrovanja nakon što je vaša baza podataka kreirana. To se mora uraditi tokom njenog kreiranja.

Međutim, postoji obilaženje koje vam omogućava da šifrujete nešifrovanu bazu podataka na sledeći način. Možete kreirati snimak vaše nešifrovane baze podataka, kreirati šifrovanu kopiju tog snimka, koristiti taj šifrovani snimak da kreirate novu bazu podataka, a zatim, na kraju, vaša baza podataka bi bila šifrovana.

Transparentno šifrovanje podataka (TDE)

Pored sposobnosti šifrovanja inherentnih RDS-u na nivou aplikacije, RDS takođe podržava dodatne mehanizme šifrovanja na platformi kako bi zaštitio podatke u mirovanju. To uključuje Transparentno šifrovanje podataka (TDE) za Oracle i SQL Server. Međutim, važno je napomenuti da dok TDE poboljšava bezbednost šifrovanjem podataka u mirovanju, može takođe uticati na performanse baze podataka. Ovaj uticaj na performanse posebno je 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:

  1. Asocijacija grupe 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 bezbednosna poboljšanja.

    • Međutim, važno je napomenuti da grupe opcija su dostupne samo za određene motore baza podataka i verzije.

  2. Uključivanje TDE u grupu opcija:

    • Jednom kada je povezan sa grupom opcija, opcija Transparentno šifrovanje podataka Oracle-a mora biti uključena u tu grupu.

    • Važno je prepoznati da kada se TDE opcija doda u grupu opcija, postaje trajni element i ne može biti uklonjen.

  3. TDE režimi šifrovanja:

    • TDE nudi dva različita režima šifrovanja:

      • TDE šifrovanje tabelarnog prostora: Ovaj režim šifruje cele tabele, pružajući širi opseg zaštite podataka.

      • TDE šifrovanje kolona: Ovaj režim se fokusira na šifrovanje određenih, pojedinačnih elemenata unutar baze podataka, omogućavajući precizniju kontrolu nad tim koje podatke su šifrovani.

Razumevanje ovih preduslova i operativnih složenosti TDE-a je ključno za efikasnu implementaciju i upravljanje šifrovanjem unutar RDS-a, osiguravajući kako bezbednost podataka, tako i usklađenost sa neophodnim standardima.

Enumeracija

# Clusters info
## Get Endpoints, username, port, iam auth enabled, attached roles, SG
aws rds describe-db-clusters
aws rds describe-db-cluster-endpoints #Cluster URLs
aws rds describe-db-cluster-backtracks --db-cluster-identifier <cluster-name>

## Cluster snapshots
aws rds describe-db-cluster-snapshots

# Get DB instances info
aws rds describe-db-instances #username, url, port, vpc, SG, is public?
aws rds describe-db-security-groups

## Find automated backups
aws rds describe-db-instance-automated-backups

## Find snapshots
aws rds describe-db-snapshots
aws rds describe-db-snapshots --include-public --snapshot-type public
## Restore snapshot as new instance
aws rds restore-db-instance-from-db-snapshot --db-instance-identifier <ID> --db-snapshot-identifier <ID> --availability-zone us-west-2a

# Any public snapshot in the account
aws rds describe-db-snapshots --snapshot-type public

# Proxies
aws rds describe-db-proxy-endpoints
aws rds describe-db-proxy-target-groups
aws rds describe-db-proxy-targets

## reset credentials of MasterUsername
aws rds modify-db-instance --db-instance-identifier <ID> --master-user-password <NewPassword> --apply-immediately

Neautentifikovan pristup

pageAWS - RDS Unauthenticated Enum

Privesc

pageAWS - RDS Privesc

Post Eksploatacija

pageAWS - RDS Post Exploitation

Upornost

pageAWS - RDS Persistence

SQL Injection

Postoje načini za pristup podacima DynamoDB-a sa SQL sintaksom, stoga su tipične SQL injekcije takođe moguće.

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated