AWS - GuardDuty Enum
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
GuardDuty
Volgens die docs: GuardDuty kombineer masjienleer, anomaliedetektering, netwerkmonitering, en kwaadwillige lêerontdekking, met behulp van beide AWS en toonaangewende derdepartybronne om te help om werklas en data op AWS te beskerm. GuardDuty is in staat om tien biljoen gebeurtenisse oor verskeie AWS-datasoeke te analiseer, soos AWS CloudTrail gebeurtenislogs, Amazon Virtual Private Cloud (VPC) Flow Logs, Amazon Elastic Kubernetes Service (EKS) oudit- en stelsellogs, en DNS-vraaglogs.
Amazon GuardDuty identifiseer ongewone aktiwiteit binne jou rekeninge, analiseer die veiligheidsrelevansie van die aktiwiteit, en gee die konteks waarin dit geaktiveer is. Dit stel ’n responder in staat om te bepaal of hulle tyd moet spandeer aan verdere ondersoek.
Alerte verskyn in die GuardDuty-konsol (90 dae) en CloudWatch Events.
Warning
Wanneer ’n gebruiker GuardDuty deaktiveer, sal dit ophou om jou AWS-omgewing te monitor en dit sal glad nie nuwe bevindings genereer nie, en die bestaande bevindings sal verlore gaan.
As jy dit net stop, sal die bestaande bevindings bly.
Bevindinge Voorbeeld
- Verkenning: Aktiwiteit wat verkenning deur ’n aanvaller aandui, soos ongewone API-aktiwiteit, verdagte databasis aanmeld pogings, intra-VPC poortskandering, ongewone mislukte aanmeldversoekpatrone, of onbelemmerde poortprobering vanaf ’n bekende slegte IP.
- Instansie-kompromie: Aktiwiteit wat ’n instansie-kompromie aandui, soos kripto-geldeenheid mynbou, agterdeur opdrag en beheer (C&C) aktiwiteit, malware wat domeingenerasie-algoritmes (DGA) gebruik, uitgaande ontkenning van diens aktiwiteit, ongewone hoë netwerk verkeersvolume, ongewone netwerkprotokolle, uitgaande instansiekommunikasie met ’n bekende kwaadwillige IP, tydelike Amazon EC2 geloofsbriewe wat deur ’n eksterne IP-adres gebruik word, en data-uitvloeiing met behulp van DNS.
- Rekening-kompromie: Algemene patrone wat dui op rekening-kompromie sluit API-oproepe vanaf ’n ongewone geolokasie of anonymiserende proxy in, pogings om AWS CloudTrail logging te deaktiveer, veranderinge wat die rekening wagwoordbeleid verzwak, ongewone instansie of infrastruktuur bekendstellings, infrastruktuurontplooiings in ’n ongewone streek, geloofsbriefdiefstal, verdagte databasis aanmeldaktiwiteit, en API-oproepe vanaf bekende kwaadwillige IP-adresse.
- Emmer-kompromie: Aktiwiteit wat ’n emmer-kompromie aandui, soos verdagte data-toegangspatrone wat geloofsbriefmisbruik aandui, ongewone Amazon S3 API-aktiwiteit vanaf ’n afgeleë gasheer, ongeoorloofde S3-toegang vanaf bekende kwaadwillige IP-adresse, en API-oproepe om data in S3-emmers te verkry vanaf ’n gebruiker met geen vorige geskiedenis van toegang tot die emmer of geaktiveer vanaf ’n ongewone ligging. Amazon GuardDuty monitor en analiseer voortdurend AWS CloudTrail S3 data-gebeurtenisse (bv. GetObject, ListObjects, DeleteObject) om verdagte aktiwiteit oor al jou Amazon S3-emmers te detecteer.
Bevinding Inligting
Bevinding opsomming:
- Bevinding tipe
- Ernstigheid: 7-8.9 Hoog, 4-6.9 Medium, 01-3.9 Laag
- Streek
- Rekening ID
- Hulpbron ID
- Tyd van opsporing
- Watter bedreigingslys is gebruik
Die liggaam het hierdie inligting:
- Hulpbron geraak
- Aksie
- Akteur: IP-adres, poort en domein
- Bykomende Inligting
Alle Bevindinge
Toegang tot ’n lys van al die GuardDuty bevindings in: https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html
Multi Rekeninge
Deur Uitnodiging
Jy kan ander rekeninge na ’n ander AWS GuardDuty rekening uitnooi sodat elke rekening vanaf dieselfde GuardDuty gemonitor word. Die meesterrekening moet die lidrekeninge uitnooi en dan moet die verteenwoordiger van die lidrekening die uitnodiging aanvaar.
Deur Organisasie
Jy kan enige rekening binne die organisasie aanwys om die GuardDuty gedelegeerde administrateur te wees. Slegs die organisasiebestuursrekening kan ’n gedelegeerde administrateur aanwys.
’n Rekening wat as ’n gedelegeerde administrateur aangewys word, word ’n GuardDuty administrateurrekening, het GuardDuty outomaties geaktiveer in die aangewese AWS-streek, en het ook die toestemming om GuardDuty in te skakel en te bestuur vir al die rekeninge in die organisasie binne daardie streek. Die ander rekeninge in die organisasie kan gesien en bygevoeg word as GuardDuty lidrekeninge wat met hierdie gedelegeerde administrateurrekening geassosieer word.
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 Bypass
Algemene Riglyne
Probeer soveel as moontlik uit te vind oor die gedrag van die kredensiale wat jy gaan gebruik:
- Tye wat dit gebruik word
- Plekke
- Gebruikersagente / Dienste (Dit kan gebruik word vanaf awscli, webconsole, lambda…)
- Toestemmings wat gereeld gebruik word
Met hierdie inligting, herleef soveel as moontlik dieselfde scenario om die toegang te gebruik:
- As dit ’n gebruiker of ’n rol is wat deur ’n gebruiker toeganklik is, probeer om dit in dieselfde ure te gebruik, vanaf dieselfde geolokasie (selfs dieselfde ISP en IP indien moontlik)
- As dit ’n rol is wat deur ’n diens gebruik word, skep dieselfde diens in dieselfde streek en gebruik dit van daar in dieselfde tydsbereik
- Probeer altyd om die dieselfde toestemmings te gebruik wat hierdie prinsiep gebruik het
- As jy ander toestemmings moet gebruik of ’n toestemming moet misbruik (byvoorbeeld, om 1.000.000 cloudtrail-loglêers af te laai) doen dit stadig en met die minimale hoeveelheid interaksies met AWS (awscli roep soms verskeie lees-API’s aan voordat die skryf een)
Breek GuardDuty
guardduty:UpdateDetector
Met hierdie toestemming kan jy GuardDuty deaktiveer om te verhoed 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 bevindings:
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 kon GuardDuty se Vertroude IP lys wysig deur hul IP-adres daaraan toe te voeg en sodoende die generering van waarskuwings te vermy.
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>
Caution
Die verwydering van hierdie publikasiebestemming sal nie die generering of sigbaarheid van bevindings binne die GuardDuty-konsol beïnvloed nie. GuardDuty sal voortgaan om gebeurtenisse in jou AWS-omgewing te analiseer, verdagte of onverwagte gedrag te identifiseer, en bevindings te genereer.
Spesifieke Bevinding Bypass Voorbeelde
Let daarop dat daar tientalle GuardDuty bevindings is, egter, as ’n Red Teamer sal nie almal jou beïnvloed nie, en wat beter is, jy het die volledige dokumentasie van elk van hulle in https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html so kyk na dit voordat jy enige aksie onderneem om nie gevang te word nie.
Hier is ’n paar voorbeelde van spesifieke GuardDuty bevindinge bypasses:
PenTest:IAMUser/KaliLinux
GuardDuty detect AWS API versoeke van algemene penetrasietoets gereedskap en aktiveer ’n PenTest Finding.
Dit word opgespoor deur die gebruikersagentnaam wat in die API versoek oorgedra word.
Daarom, om die gebruikersagent te wysig is dit moontlik om te voorkom dat GuardDuty die aanval opspoor.
Om dit te voorkom kan jy soek vanaf die skrip session.py in die botocore pakket en die gebruikersagent wysig, of stel Burp Suite as die AWS CLI proxy en verander die gebruikersagent met die MitM of gebruik net ’n OS soos Ubuntu, Mac of Windows wat hierdie waarskuwing sal voorkom.
UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration
Die onttrekking van EC2 geloofsbriewe uit die metadata diens en dit buite die AWS-omgewing gebruik aktiveer die UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS waarskuwing. Omgekeerd, die gebruik van hierdie geloofsbriewe vanaf jou EC2 instance aktiveer die UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.InsideAWS waarskuwing. Tog, die gebruik van die geloofsbriewe op ’n ander gecompromitteerde EC2 instance binne dieselfde rekening gaan onopgemerk, wat geen waarskuwing veroorsaak nie.
Tip
Daarom, gebruik die onttrokken geloofsbriewe van binne die masjien waar jy dit gevind het om nie hierdie waarskuwing te aktiveer nie.
Verwysings
- https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html
- https://docs.aws.amazon.com/guardduty/latest/ug/findings_suppression-rule.html
- https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_upload-lists.html
- https://docs.aws.amazon.com/cli/latest/reference/guardduty/delete-publishing-destination.html
- https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-ec2.html#unauthorizedaccess-ec2-torclient
- https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#unauthorizedaccess-iam-instancecredentialexfiltrationoutsideaws
- https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#unauthorizedaccess-iam-instancecredentialexfiltrationinsideaws
- https://docs.aws.amazon.com/whitepapers/latest/aws-privatelink/what-are-vpc-endpoints.html
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
HackTricks Cloud

