AWS - Macie Privesc

Reading time: 3 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Macie

Für weitere Informationen über Macie siehe:

AWS - Macie Enum

Amazon Macie - Umgehung der Integritätsprüfung Reveal Sample

AWS Macie ist ein Sicherheitsdienst, der automatisch sensible Daten innerhalb von AWS-Umgebungen erkennt, wie z.B. Anmeldeinformationen, personenbezogene Daten (PII) und andere vertrauliche Daten. Wenn Macie eine sensible Anmeldeinformation identifiziert, wie z.B. einen AWS-Geheimschlüssel, der in einem S3-Bucket gespeichert ist, wird ein Fund generiert, der es dem Eigentümer ermöglicht, eine "Probe" der erkannten Daten anzuzeigen. Typischerweise wird erwartet, dass der Geheimschlüssel nicht mehr abgerufen werden kann, sobald die sensible Datei aus dem S3-Bucket entfernt wurde.

Allerdings wurde eine Umgehung identifiziert, bei der ein Angreifer mit ausreichenden Berechtigungen eine Datei mit demselben Namen erneut hochladen kann, die jedoch andere, nicht sensible Dummy-Daten enthält. Dies führt dazu, dass Macie die neu hochgeladene Datei mit dem ursprünglichen Fund verknüpft, wodurch der Angreifer die "Reveal Sample"-Funktion nutzen kann, um das zuvor erkannte Geheimnis zu extrahieren. Dieses Problem stellt ein erhebliches Sicherheitsrisiko dar, da Geheimnisse, von denen angenommen wurde, dass sie gelöscht wurden, durch diese Methode weiterhin abgerufen werden können.

flow

Schritte zur Reproduktion:

  1. Laden Sie eine Datei (z.B. test-secret.txt) in einen S3-Bucket mit sensiblen Daten, wie z.B. einem AWS-Geheimschlüssel, hoch. Warten Sie, bis AWS Macie scannt und einen Fund generiert.

  2. Navigieren Sie zu den AWS Macie Findings, suchen Sie den generierten Fund und verwenden Sie die Reveal Sample-Funktion, um das erkannte Geheimnis anzuzeigen.

  3. Löschen Sie test-secret.txt aus dem S3-Bucket und überprüfen Sie, dass es nicht mehr existiert.

  4. Erstellen Sie eine neue Datei mit dem Namen test-secret.txt mit Dummy-Daten und laden Sie sie erneut in denselben S3-Bucket mit dem Konto des Angreifers hoch.

  5. Kehren Sie zu den AWS Macie Findings zurück, greifen Sie auf den ursprünglichen Fund zu und klicken Sie erneut auf Reveal Sample.

  6. Beobachten Sie, dass Macie das ursprüngliche Geheimnis weiterhin offenbart, obwohl die Datei gelöscht und durch andere Inhalte aus anderen Konten, in unserem Fall dem Konto des Angreifers, ersetzt wurde.

Zusammenfassung:

Diese Schwachstelle ermöglicht es einem Angreifer mit ausreichenden AWS IAM-Berechtigungen, zuvor erkannte Geheimnisse wiederherzustellen, selbst nachdem die ursprüngliche Datei aus S3 gelöscht wurde. Wenn ein AWS-Geheimschlüssel, ein Zugriffstoken oder eine andere sensible Anmeldeinformation offengelegt wird, könnte ein Angreifer diese Schwachstelle ausnutzen, um sie abzurufen und unbefugten Zugriff auf AWS-Ressourcen zu erlangen. Dies könnte zu einer Privilegieneskalation, unbefugtem Datenzugriff oder einer weiteren Kompromittierung von Cloud-Ressourcen führen, was zu Datenverletzungen und Dienstunterbrechungen führen kann.