AWS - GuardDuty Enum

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

Drugi načini podrške HackTricks-u:

GuardDuty

Prema dokumentaciji: GuardDuty kombinuje mašinsko učenje, otkrivanje anomalija, nadgledanje mreže i otkrivanje zlonamernih fajlova, koristeći kako AWS, tako i vodeće izvore trećih strana, kako bi pomogao u zaštiti radnih opterećenja i podataka na AWS-u. GuardDuty je sposoban da analizira desetine milijardi događaja iz više AWS izvora podataka, kao što su dnevnici događaja AWS CloudTrail-a, dnevnici protoka Amazon Virtual Private Cloud (VPC), dnevnici audita i sistemski dnevnici Amazon Elastic Kubernetes Service (EKS), i dnevnici DNS upita.

Amazon GuardDuty identifikuje neobične aktivnosti unutar vaših naloga, analizira bezbednosnu relevantnost aktivnosti i pruža kontekst u kojem je aktivnost pokrenuta. To omogućava odgovornom licu da odredi da li treba da posveti vreme daljem istraživanju.

Upozorenja se pojavljuju u GuardDuty konzoli (90 dana) i CloudWatch Events.

Kada korisnik onemogući GuardDuty, prestaje nadgledanje vašeg AWS okruženja i neće generisati nove nalaze, a postojeći nalazi će biti izgubljeni. Ako ga samo zaustavite, postojeći nalazi će ostati.

Primeri nalaza

  • Rekognosciranje: Aktivnost koja ukazuje na rekognosciranje od strane napadača, kao što su neobične API aktivnosti, sumnjivi pokušaji prijava na bazu podataka, intra-VPC port skeniranje, neobični obrasci neuspelih zahteva za prijavu ili probanje otvorenih portova sa poznate loše IP adrese.

  • Kompromitacija instance: Aktivnost koja ukazuje na kompromitaciju instance, kao što su rudarenje kriptovaluta, aktivnost komandno-kontrolnog (C&C) sistema za otvorena vrata, malver koji koristi algoritme za generisanje domena (DGA), odlazna aktivnost odbijanja usluge, neobično visok saobraćaj na mreži, neobični mrežni protokoli, odlazna komunikacija instance sa poznatom zlonamernom IP adresom, privremene Amazon EC2 akreditacije korišćene od strane spoljne IP adrese i iznošenje podataka putem DNS-a.

  • Kompromitacija naloga: Uobičajeni obrasci koji ukazuju na kompromitaciju naloga uključuju API pozive sa neobične geolokacije ili anonimizirajućeg proksija, pokušaje onemogućavanja beleženja AWS CloudTrail-a, promene koje oslabljuju politiku lozinke naloga, neobično pokretanje instanci ili infrastrukture, implementaciju infrastrukture u neobičnoj regiji, krađu akreditacija, sumnjivu aktivnost prijave na bazu podataka i API pozive sa poznatih zlonamernih IP adresa.

  • Kompromitacija kante: Aktivnost koja ukazuje na kompromitaciju kante, kao što su sumnjivi obrasci pristupa podacima koji ukazuju na zloupotrebu akreditacija, neobična aktivnost API-a Amazon S3 sa udaljenog hosta, neovlašćen pristup S3 sa poznatih zlonamernih IP adresa i API pozivi za preuzimanje podataka iz S3 kanti od korisnika koji prethodno nisu imali istoriju pristupa kanti ili su pokrenuti sa neobične lokacije. Amazon GuardDuty neprekidno nadgleda i analizira događaje podataka AWS CloudTrail S3 (npr. GetObject, ListObjects, DeleteObject) kako bi otkrio sumnjivu aktivnost u svim vašim Amazon S3 kantama.

Informacije o nalazu

Sažetak nalaza:

  • Tip nalaza

  • Ozbiljnost: 7-8.9 Visoka, 4-6.9 Srednja, 01-3.9 Niska

  • Regija

  • ID naloga

  • ID resursa

  • Vreme otkrivanja

  • Koja lista pretnji je korišćena

Telo sadrži sledeće informacije:

  • Pogođeni resurs

  • Akcija

  • Izvršilac: IP adresa, port i domen

  • Dodatne informacije

Svi nalazi

Pristupite listi svih nalaza GuardDuty-ja na: https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html

Više nalaza

Pozivom

Možete pozvati druge naloge na drugi AWS GuardDuty nalog kako bi svaki nalog bio nadgledan iz istog GuardDuty-ja. Glavni nalog mora pozvati članove naloga, a zatim predstavnik članskog naloga mora prihvatiti poziv.

Putem organizacije

Možete odrediti bilo koji nalog unutar organizacije da bude delegirani administrator GuardDuty-ja. Samo nalog za upravljanje organizacijom može odrediti delegiranog administratora.

Nalog koji je određen kao delegirani administrator postaje administratorski nalog GuardDuty-ja, automatski ima omogućen GuardDuty u odabranoj AWS regiji i takođe ima dozvolu za omogućavanje i upravljanje GuardDuty-jem za sve naloge u organizaciji u toj regiji. Ostali nalozi u organizaciji mogu biti pregledani i dodati kao članski nalozi GuardDuty-ja povezani sa ovim delegiranim administratorskim nalogom.

Enumeracija

# Get Org config
aws guardduty list-organization-admin-accounts #Get Delegated Administrator
aws guardduty describe-organization-configuration --detector-id <id>

# Check external invitations
aws guardduty list-invitations
aws guardduty get-invitations-count

# Detector Information
aws guardduty list-detectors # 1 detector per account with GuardDuty
aws guardduty get-detector --detector-id <id> # Get detector info
aws guardduty get-master-account --detector-id <id>

# Get filters
aws guardduty list-filters --detector-id <id> # Check filters
aws guardduty get-filter --detector-id <id> --filter-name <name>

# Findings
aws guardduty list-findings --detector-id <id> # List findings
aws guardduty get-findings --detector-id <id> --finding-ids <id> # Get details about the finding
aws guardduty get-findings-statistics --detector-id <id> --finding-statistic-types <types>

# Get trusted IP addresses
aws guardduty list-ip-sets --detector-id <id>
aws guardduty get-ip-set --detector-id <id>

# Member accounts of the current AWS GuardDuty master account
aws guardduty list-members --detector-id <id>
aws guardduty get-members --detector-id <id> --account-ids <id>
aws guardduty get-member-detectors --detector-id <id> --account-ids <id>

# Continuously export its findings to an Amazon S3 bucket
aws guardduty list-publishing-destinations --detector-id <id>

# Intelligence sets that you have uploaded to GuardDuty
aws guardduty list-threat-intel-sets --detector-id <id>
aws guardduty get-threat-intel-set --detector-id <id> --threat-intel-set-id <id>

Bypassiranje GuardDuty-ja

Opšte smernice

Pokušajte da saznate što više o ponašanju akreditacija koje ćete koristiti:

  • Vremena kada se koriste

  • Lokacije

  • Korisnički agenti / Servisi (Može se koristiti iz awscli, web konzole, lambda...)

  • Redovno korišćene dozvole

Sa ovim informacijama, rekreirajte što je moguće više isti scenario kako biste koristili pristup:

  • Ako je u pitanju korisnik ili uloga koju koristi korisnik, pokušajte da je koristite u istim satima, sa iste geolokacije (čak i isti ISP i IP ako je moguće)

  • Ako je u pitanju uloga koju koristi servis, kreirajte isti servis u istoj regiji i koristite ga odande u istim vremenskim intervalima

  • Uvek pokušajte da koristite iste dozvole koje je ovaj princip koristio

  • Ako trebate koristiti druge dozvole ili zloupotrebiti dozvolu (na primer, preuzeti 1.000.000 cloudtrail log fajlova), to radite sporo i sa minimalnim brojem interakcija sa AWS-om (awscli ponekad poziva nekoliko API-ja za čitanje pre nego što pozove API za pisanje)

Bypassiranje GuardDuty-ja

guardduty:UpdateDetector

Sa ovom dozvolom možete onemogućiti GuardDuty kako biste izbegli pokretanje upozorenja.

aws guardduty update-detector --detector-id <detector-id> --no-enable
aws guardduty update-detector --detector-id <detector-id> --data-sources S3Logs={Enable=false}

guardduty:CreateFilter

Napadači sa ovlašćenjem imaju mogućnost da koriste filtere za automatsko arhiviranje nalaza:

aws guardduty create-filter  --detector-id <detector-id> --name <filter-name> --finding-criteria file:///tmp/criteria.json --action ARCHIVE

iam:PutRolePolicy, (guardduty:CreateIPSet|guardduty:UpdateIPSet)

Napadači sa prethodnim privilegijama mogu izmeniti GuardDuty-ovu listu pouzdanih IP adresa dodavanjem svoje IP adrese i izbeći generisanje upozorenja.

aws guardduty update-ip-set --detector-id <detector-id> --activate --ip-set-id <ip-set-id> --location https://some-bucket.s3-eu-west-1.amazonaws.com/attacker.csv

guardduty:DeletePublishingDestination

Napadači bi mogli ukloniti odredište kako bi sprečili upozorenja:

aws guardduty delete-publishing-destination --detector-id <detector-id> --destination-id <dest-id>

Brisanje ove destinacije objavljivanja neće uticati na generisanje ili vidljivost nalaza unutar GuardDuty konzole. GuardDuty će i dalje analizirati događaje u vašem AWS okruženju, identifikovati sumnjivo ili neočekivano ponašanje i generisati nalaze.

Primeri zaobilaženja specifičnih nalaza

Imajte na umu da postoji desetine nalaza u GuardDuty-u, međutim, kao Red Teamer, neće vas sve to uticati, a što je još bolje, imate potpunu dokumentaciju za svaki od njih na https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html, pa pogledajte pre nego što preduzmete bilo koju akciju da ne biste bili uhvaćeni.

Evo nekoliko primera zaobilaženja specifičnih nalaza u GuardDuty-u:

GuardDuty detektuje AWS API zahteve iz uobičajenih alata za testiranje penetracije i pokreće PenTest nalaz. Detektuje se na osnovu naziva korisničkog agenta koji se prosleđuje u API zahtevu. Stoga, izmenom korisničkog agenta moguće je sprečiti GuardDuty da detektuje napad.

Da biste to sprečili, možete pretražiti skriptu session.py u paketu botocore i izmeniti korisnički agent, ili postaviti Burp Suite kao AWS CLI proxy i promeniti korisnički agent pomoću MitM-a ili jednostavno koristiti operativni sistem poput Ubuntu-a, Mac-a ili Windows-a da biste sprečili aktiviranje ovog upozorenja.

UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration

Izvlačenje EC2 akreditiva iz metapodataka i korišćenje izvan AWS okruženja aktivira upozorenje UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS. S druge strane, korišćenje ovih akreditiva sa vaše EC2 instance pokreće upozorenje UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.InsideAWS. Međutim, korišćenje akreditiva na drugoj kompromitovanoj EC2 instanci unutar istog naloga ostaje neprimećeno, bez pokretanja upozorenja.

Stoga, koristite izvučene akreditive sa unutrašnje mašine na kojoj ste ih pronašli kako biste izbegli aktiviranje ovog upozorenja.

Reference

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