AWS - GuardDuty Enum

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

GuardDuty

Volgens die dokumentasie: GuardDuty kombineer masjienleer, anomaliedeteksie, netwerkmonitering en ontdekking van skadelike lêers, deur gebruik te maak van beide AWS en toonaangewende derdeparty-bronne om werklaste en data op AWS te beskerm. GuardDuty is in staat om tientalle biljoene gebeure oor verskeie AWS-data-bronne te analiseer, soos AWS CloudTrail-gebeurtenislogs, Amazon Virtual Private Cloud (VPC) Flow Logs, Amazon Elastic Kubernetes Service (EKS) oudit- en stelselvlaklogs, en DNS-navraaglogs.

Amazon GuardDuty identifiseer ongewone aktiwiteit binne jou rekeninge, analiseer die veiligheidsrelevansie van die aktiwiteit, en gee die konteks waarin dit geïnisieer is. Dit stel 'n responder in staat om te bepaal of hulle tyd moet spandeer aan verdere ondersoek.

Waarskuwings verskyn in die GuardDuty-konsole (90 dae) en CloudWatch-gebeure.

Wanneer 'n gebruiker GuardDuty deaktiveer, sal dit ophou om jou AWS-omgewing te monitor en sal dit geen nuwe bevindings genereer nie, en die bestaande bevindings sal verlore gaan. As jy dit net stop, sal die bestaande bevindings bly.

Voorbeeld van Bevindings

  • Verkenning: Aktiwiteit wat dui op verkenning deur 'n aanvaller, soos ongewone API-aktiwiteit, verdagte databasis aanmeldingspogings, intra-VPC poortskandering, ongewone mislukte aanmeldingsversoekpatrone, of ongeblokkeerde poortondersoek vanaf 'n bekende slegte IP.

  • Instansie-oortreding: Aktiwiteit wat dui op 'n instansie-oortreding, soos kriptogeldmynbou, agterdeurbevel en beheer (C&C)-aktiwiteit, kwaadaardige sagteware wat domeingenerasie-algoritmes (DGA) gebruik, uitgaande ontkenning van diensaktiwiteit, ongewoon hoë netwerkverkeersvolume, ongewone netwerkprotokolle, uitgaande instansiekommunikasie met 'n bekende skadelike IP, tydelike Amazon EC2-legitimasie gebruik deur 'n eksterne IP-adres, en data-uitvoer deur middel van DNS.

  • Rekeningsoortreding: Algemene patrone wat dui op 'n rekeningsoortreding sluit API-oproepe vanaf 'n ongewone geolokalisering of anonimiserende proksi, pogings om AWS CloudTrail-loggings uit te skakel, veranderinge wat die rekeningwagwoordbeleid verswak, ongewone instansie- of infrastruktuurlanserings, infrastruktuurimplementasies in 'n ongewone streek, legitimasiediefstal, verdagte databasisaanmeldingsaktiwiteit, en API-oproepe vanaf bekende skadelike IP-adresse.

  • Emmeroortreding: Aktiwiteit wat dui op 'n emmeroortreding, soos verdagte data-toegangspatrone wat dui op misbruik van legitimasie, ongewone Amazon S3 API-aktiwiteit vanaf 'n afgeleë gasheer, ongemagtigde S3-toegang vanaf bekende skadelike IP-adresse, en API-oproepe om data in S3-emmers te herwin vanaf 'n gebruiker sonder 'n vorige geskiedenis van toegang tot die emmer of geïnisieer vanaf 'n ongewone plek. Amazon GuardDuty monitor en analiseer voortdurend AWS CloudTrail S3-data-gebeure (bv. GetObject, ListObjects, DeleteObject) om verdagte aktiwiteit oor al jou Amazon S3-emmers op te spoor.

Inligting oor Bevinding

Opsomming van bevinding:

  • Tipe bevinding

  • Ernstigheid: 7-8.9 Hoog, 4-6.9 Medium, 01-3.9 Laag

  • Streek

  • Rekening-ID

  • Bron-ID

  • Tyd van opsporing

  • Watter dreigingslys is gebruik

Die liggaam bevat hierdie inligting:

  • Beïnvloede bron

  • Aksie

  • Akteur: IP-adres, poort en domein

  • Addisionele inligting

Alle Bevindings

Kry 'n lys van al die GuardDuty-bevindings by: https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html

Veelvuldige Rekeninge

Deur Uitnodiging

Jy kan ander rekeninge uitnooi na 'n ander AWS GuardDuty-rekening sodat elke rekening gemonitor word vanuit dieselfde GuardDuty. Die hoofrekening moet die lidrekeninge uitnooi en dan moet die verteenwoordiger van die lidrekening die uitnodiging aanvaar.

Via Organisasie

Jy kan enige rekening binne die organisasie aanwys as die delegeerde administrateur van GuardDuty. Slegs die organisasiebestuursrekening kan 'n delegeerde administrateur aanwys.

'n Rekening wat aangewys word as 'n delegeerde administrateur word 'n GuardDuty-administrateursrekening, het GuardDuty outomaties geaktiveer in die aangewese AWS-streek, en het ook die toestemming om GuardDuty te aktiveer en te bestuur vir al die rekeninge in die organisasie binne daardie streek. Die ander rekeninge in die organisasie kan besigtig en bygevoeg word as GuardDuty-lidrekeninge wat geassosieer is met hierdie delegeerde administrateursrekening.

Enumerasie

# 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>

GuardDuty Deurloop

Algemene Leiding

Probeer soveel as moontlik uit te vind oor die gedrag van die geloofsbriewe wat jy gaan gebruik:

  • Tye waarop dit gebruik word

  • Plekke

  • Gebruikersagentskappe / Dienste (Dit kan gebruik word vanaf awscli, webconsole, lambda...)

  • Gereeld gebruikte toestemmings

Met hierdie inligting, skep soveel as moontlik dieselfde scenario om toegang te verkry:

  • As dit 'n gebruiker of 'n rol wat deur 'n gebruiker gebruik word, probeer om dit in dieselfde ure te gebruik, van dieselfde geografiese ligging (selfs dieselfde internetdiensverskaffer en IP as moontlik)

  • As dit 'n rol is wat deur 'n diens gebruik word, skep dieselfde diens in dieselfde streek en gebruik dit dan in dieselfde tydperke

  • Probeer altyd om dieselfde toestemmings te gebruik wat hierdie hoofsaaklik gebruik het

  • As jy ander toestemmings moet gebruik of 'n toestemming moet misbruik (byvoorbeeld, laai 1.000.000 cloudtrail-loglêers af), doen dit stadig en met die minimum hoeveelheid interaksies met AWS (awscli roep soms verskeie lees-API's aan voordat die skryf-API aangeroep word)

Breek GuardDuty

guardduty:UpdateDetector

Met hierdie toestemming kan jy GuardDuty deaktiveer om te voorkom dat waarskuwings geaktiveer word.

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

Aanvallers met hierdie toestemming het die vermoë om filters te gebruik vir die outomatiese argivering van bevindinge:

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)

Aanvallers met die vorige voorregte kan GuardDuty se Vertroude IP-lys wysig deur hul IP-adres daaraan toe te voeg en sodoende voorkom dat waarskuwings gegenereer word.

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

Aanvallers kan die bestemming verwyder om waarskuwings te voorkom:

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

Die verwydering van hierdie publikasiebestemming sal nie die generering of sigbaarheid van bevindinge binne die GuardDuty-konsole beïnvloed nie. GuardDuty sal voortgaan om gebeure in jou AWS-omgewing te analiseer, verdagte of onverwagte gedrag te identifiseer en bevindinge te genereer.

Spesifieke Bevinding Vermydingsvoorbeelde

Let daarop dat daar tientalle GuardDuty-bevindinge is, maar as 'n Red Teamer sal nie almal jou affekteer nie, en wat nog beter is, jy het die volledige dokumentasie van elkeen daarvan in https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html, so kyk daarna voordat jy enige aksie onderneem om nie gevang te word nie.

Hier is 'n paar voorbeelde van spesifieke GuardDuty-bevindinge-vermyding:

GuardDuty identifiseer AWS API-versoeke van algemene penetrasietoetsinstrumente en aktiveer 'n PenTest-bevinding. Dit word geïdentifiseer deur die gebruikersagentnaam wat in die API-versoek oorgedra word. Daarom is dit moontlik om GuardDuty te verhoed om die aanval op te spoor deur die gebruikersagent te wysig.

Om dit te voorkom, kan jy soek na die skripsie session.py in die botocore-pakket en die gebruikersagent wysig, of stel Burp Suite as die AWS CLI-proksi in en verander die gebruikersagent met die MitM, of gebruik 'n bedryfstelsel soos Ubuntu, Mac of Windows om te verhoed dat hierdie waarskuwing geaktiveer word.

UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration

Die onttrekking van EC2-legitimasie vanaf die metadata-diens en die gebruik daarvan buite die AWS-omgewing aktiveer die UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS waarskuwing. Daarenteen aktiveer die gebruik van hierdie legitimasie vanaf jou EC2-instantie die UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.InsideAWS waarskuwing. Tog gaan die gebruik van die legitimasie op 'n ander gekompromitteerde EC2-instantie binne dieselfde rekening onopgemerk, sonder om 'n waarskuwing te veroorsaak.

Gebruik dus die onttrekking van legitimasie van binne die masjien waar jy dit gevind het om hierdie waarskuwing nie te aktiveer nie.

Verwysings

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated