AWS - GuardDuty Enum

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

GuardDuty

According to the docs: GuardDuty, makine öğrenimi, anomali tespiti, ağ izleme ve kötü niyetli dosya keşfi kullanarak, AWS ve sektördeki lider üçüncü taraf kaynakları birleştirerek AWS üzerindeki iş yüklerini ve verileri korumaya yardımcı olur. GuardDuty, AWS CloudTrail olay günlükleri, Amazon Sanal Özel Bulut (VPC) Akış Günlükleri, Amazon Elastik Kubernetes Servisi (EKS) denetim ve sistem düzeyi günlükleri ve DNS sorgu günlükleri gibi birden fazla AWS veri kaynağında on milyarlarca olayı analiz etme yeteneğine sahiptir.

Amazon GuardDuty, hesaplarınızda olağandışı etkinlikleri tanımlar, etkinliğin güvenlik ile ilgili önemini analiz eder ve çağrıldığı bağlamı sağlar. Bu, bir yanıtlayıcının daha fazla araştırmaya zaman harcayıp harcamayacağına karar vermesine olanak tanır.

Uyarılar GuardDuty konsolunda (90 gün) ve CloudWatch Olaylarında görünür.

Warning

Bir kullanıcı GuardDuty’yi devre dışı bıraktığında, AWS ortamınızı izlemeyi durdurur ve hiç yeni bulgu üretmez, ayrıca mevcut bulgular kaybolur.
Sadece durdurursanız, mevcut bulgular kalır.

Bulgular Örneği

  • Keşif: Bir saldırgan tarafından keşif öneren etkinlikler, örneğin olağandışı API etkinliği, şüpheli veritabanı giriş girişimleri, intra-VPC port taraması, olağandışı başarısız giriş isteği desenleri veya bilinen kötü IP’den engellenmemiş port taraması.
  • Örnek ihlali: Bir örnek ihlalini gösteren etkinlikler, örneğin kripto para madenciliği, arka kapı komut ve kontrol (C&C) etkinliği, alan oluşturma algoritmaları (DGA) kullanan kötü amaçlı yazılım, dışa dönük hizmet reddi etkinliği, olağandışı yüksek ağ trafiği hacmi, olağandışı ağ protokolleri, bilinen kötü niyetli bir IP ile dışa dönük örnek iletişimi, dış IP adresi tarafından kullanılan geçici Amazon EC2 kimlik bilgileri ve DNS kullanarak veri sızdırma.
  • Hesap ihlali: Hesap ihlalini gösteren yaygın desenler, olağandışı bir coğrafi konumdan veya anonimleştirme proxy’sinden API çağrıları, AWS CloudTrail günlüklerini devre dışı bırakma girişimleri, hesap şifre politikalarını zayıflatan değişiklikler, olağandışı örnek veya altyapı başlatmaları, olağandışı bir bölgede altyapı dağıtımları, kimlik bilgisi hırsızlığı, şüpheli veritabanı giriş etkinliği ve bilinen kötü niyetli IP adreslerinden API çağrıları.
  • Kova ihlali: Kimlik bilgisi kötüye kullanımını gösteren şüpheli veri erişim desenleri, uzaktan bir ana bilgisayardan olağandışı Amazon S3 API etkinliği, bilinen kötü niyetli IP adreslerinden yetkisiz S3 erişimi ve daha önce kovayı erişim geçmişi olmayan bir kullanıcıdan veya olağandışı bir yerden çağrılan S3 kovalarındaki verileri almak için API çağrıları gibi bir kova ihlalini gösteren etkinlikler. Amazon GuardDuty, tüm Amazon S3 kovalarınızda şüpheli etkinlikleri tespit etmek için AWS CloudTrail S3 veri olaylarını (örneğin GetObject, ListObjects, DeleteObject) sürekli izler ve analiz eder.
Bulgu Bilgisi

Bulgu özeti:

  • Bulgu türü
  • Ciddiyet: 7-8.9 Yüksek, 4-6.9 Orta, 01-3.9 Düşük
  • Bölge
  • Hesap Kimliği
  • Kaynak Kimliği
  • Tespit zamanı
  • Hangi tehdit listesinin kullanıldığı

Gövdede bu bilgiler bulunmaktadır:

  • Etkilenen kaynak
  • Eylem
  • Aktör: IP adresi, port ve alan
  • Ek Bilgi

Tüm Bulgular

Tüm GuardDuty bulgularının listesini erişin: https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html

Çoklu Hesaplar

Davetle

Diğer hesapları farklı bir AWS GuardDuty hesabına davet edebilirsiniz, böylece her hesap aynı GuardDuty’den izlenir. Ana hesap, üye hesapları davet etmelidir ve ardından üye hesabın temsilcisi daveti kabul etmelidir.

Organizasyon Üzerinden

Organizasyondaki herhangi bir hesabı GuardDuty delege yöneticisi olarak belirleyebilirsiniz. Sadece organizasyon yönetim hesabı bir delege yöneticisi atayabilir.

Delege yöneticisi olarak belirlenen bir hesap, GuardDuty yöneticisi hesabı haline gelir, belirlenen AWS Bölgesinde GuardDuty otomatik olarak etkinleştirilir ve ayrıca o Bölgedeki organizasyondaki tüm hesaplar için GuardDuty’yi etkinleştirme ve yönetme izinine sahip olur. Organizasyondaki diğer hesaplar, bu delege yöneticisi hesabıyla ilişkili GuardDuty üye hesapları olarak görüntülenebilir ve eklenebilir.

Enumeration

# 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

Genel Rehberlik

Kullanacağınız kimlik bilgileri hakkında mümkün olduğunca fazla bilgi edinmeye çalışın:

  • Kullanım zamanları
  • Lokasyonlar
  • Kullanıcı Ajanları / Hizmetler (awscli, webconsole, lambda gibi kullanılabilir…)
  • Düzenli olarak kullanılan izinler

Bu bilgilerle, erişimi kullanmak için mümkün olduğunca aynı senaryoyu yeniden oluşturun:

  • Eğer bu bir kullanıcı veya bir kullanıcı tarafından erişilen bir rol ise, aynı saatlerde, aynı coğrafi konumdan (mümkünse aynı ISP ve IP ile) kullanmaya çalışın
  • Eğer bu bir hizmet tarafından kullanılan bir rol ise, aynı bölgede aynı hizmeti oluşturun ve oradan aynı zaman dilimlerinde kullanın
  • Bu ilkenin kullandığı aynı izinleri kullanmaya her zaman çalışın
  • Eğer başka izinler kullanmanız veya bir izni kötüye kullanmanız gerekiyorsa (örneğin, 1.000.000 cloudtrail günlük dosyası indirmek) bunu yavaşça ve AWS ile minimum etkileşim ile yapın (awscli bazen yazma işleminden önce birkaç okuma API’sini çağırır)

GuardDuty’yi Kırma

guardduty:UpdateDetector

Bu izinle, uyarıları tetiklememek için GuardDuty’yi devre dışı bırakabilirsiniz.

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

Bu izne sahip saldırganlar, bulguların otomatik olarak arşivlenmesi için filtreler kullanma yeteneğine sahiptir:

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)

Önceki yetkilere sahip saldırganlar, GuardDuty’nin Güvenilir IP listesine kendi IP adreslerini ekleyerek bunu değiştirebilir ve uyarı oluşturmaktan kaçınabilirler.

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

Saldırganlar, uyarıların önlenmesi için hedefi kaldırabilirler:

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

Caution

Bu yayın hedefini silmek GuardDuty konsolundaki bulguların oluşturulmasını veya görünürlüğünü etkilemeyecektir. GuardDuty, AWS ortamınızdaki olayları analiz etmeye, şüpheli veya beklenmedik davranışları tanımlamaya ve bulgular üretmeye devam edecektir.

Özel Bulguların Atlatma Örnekleri

GuardDuty bulgularının onlarca olduğunu unutmayın, ancak Red Teamer olarak bunların hepsi sizi etkilemeyecek ve daha da iyisi, her birinin tam belgelerine sahipsiniz https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-active.html bu yüzden herhangi bir eylemde bulunmadan önce göz atın, yakalanmamak için.

İşte birkaç özel GuardDuty bulgularının atlatma örneği:

PenTest:IAMUser/KaliLinux

GuardDuty, yaygın penetrasyon test araçlarından gelen AWS API isteklerini tespit eder ve PenTest Finding tetikler.
Bu, API isteğinde iletilen kullanıcı ajanı adı ile tespit edilir.
Bu nedenle, kullanıcı ajanını değiştirmek, GuardDuty’nin saldırıyı tespit etmesini önlemek için mümkündür.

Bunu önlemek için botocore paketindeki session.py dosyasını arayabilir ve kullanıcı ajanını değiştirebilir veya Burp Suite’i AWS CLI proxy’si olarak ayarlayıp kullanıcı ajanını MitM ile değiştirebilir ya da sadece Ubuntu, Mac veya Windows gibi bir işletim sistemi kullanarak bu uyarının tetiklenmesini önleyebilirsiniz.

UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration

EC2 kimlik bilgilerini metadata hizmetinden çıkarmak ve bunları AWS ortamının dışında kullanmak, UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS uyarısını tetikler. Tersine, bu kimlik bilgilerini EC2 örneğinizden kullanmak, UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.InsideAWS uyarısını tetikler. Ancak, kimlik bilgilerini aynı hesap içindeki başka bir ele geçirilmiş EC2 örneğinde kullanmak tespit edilmez, herhangi bir uyarı oluşturmaz.

Tip

Bu nedenle, bulduğunuz makinenin içinden sızdırılan kimlik bilgilerini kullanın bu uyarıyı tetiklememek için.

Referanslar

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin