AWS - CodeBuild Post Exploitation

Erlernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

CodeBuild

Für weitere Informationen, überprüfen Sie:

pageAWS - Codebuild Enum

Missbrauch des Zugriffs auf CodeBuild-Repository

Um CodeBuild zu konfigurieren, benötigt es Zugriff auf das Code-Repository, das es verwenden wird. Mehrere Plattformen könnten diesen Code hosten:

Das CodeBuild-Projekt muss Zugriff auf den konfigurierten Quellcode-Anbieter haben, entweder über eine IAM-Rolle oder mit einem github/bitbucket Token oder OAuth-Zugriff.

Ein Angreifer mit erhöhten Berechtigungen über einen CodeBuild könnte diesen konfigurierten Zugriff missbrauchen, um den Code des konfigurierten Repositorys und anderer, auf die die festgelegten Anmeldeinformationen Zugriff haben, preiszugeben. Um dies zu tun, müsste ein Angreifer nur die Repository-URL zu jedem Repository ändern, auf das die Konfigurationsanmeldeinformationen Zugriff haben (beachten Sie, dass die AWS-Webseite alle für Sie auflistet):

Und ändern Sie die Buildspec-Befehle, um jedes Repository zu exfiltrieren.

Diese Aufgabe ist jedoch wiederholend und mühsam, und wenn ein github-Token mit Schreibberechtigungen konfiguriert wurde, kann ein Angreifer diese Berechtigungen nicht (miss)brauchen, da er keinen Zugriff auf den Token hat. Oder hat er? Überprüfen Sie den nächsten Abschnitt

Zugriffstoken von AWS CodeBuild preisgeben

Sie können den in CodeBuild gegebenen Zugriff auf Plattformen wie Github preisgeben. Überprüfen Sie, ob ein Zugriff auf externe Plattformen gewährt wurde mit:

aws codebuild list-source-credentials
pageAWS Codebuild - Token Leakage

codebuild:DeleteProject

Ein Angreifer könnte ein gesamtes CodeBuild-Projekt löschen, was zum Verlust der Projektkonfiguration und zur Beeinträchtigung von Anwendungen führen könnte, die auf dem Projekt basieren.

aws codebuild delete-project --name <value>

Potenzielle Auswirkungen: Verlust der Projektkonfiguration und Serviceunterbrechung für Anwendungen, die das gelöschte Projekt verwenden.

codebuild:TagResource, codebuild:UntagResource

Ein Angreifer könnte Tags zu CodeBuild-Ressourcen hinzufügen, ändern oder entfernen und damit die Kostenzuweisung, Ressourcenverfolgung und Zugriffskontrollrichtlinien Ihrer Organisation basierend auf Tags stören.

aws codebuild tag-resource --resource-arn <value> --tags <value>
aws codebuild untag-resource --resource-arn <value> --tag-keys <value>

Potenzielle Auswirkungen: Störung der Kostenzuweisung, Ressourcenverfolgung und tagbasierten Zugriffskontrollrichtlinien.

codebuild:DeleteSourceCredentials

Ein Angreifer könnte Quellzugangsdaten für ein Git-Repository löschen, was sich auf die normale Funktion von Anwendungen auswirken würde, die auf das Repository angewiesen sind.

aws codebuild delete-source-credentials --arn <value>

Potenzielle Auswirkungen: Störung der normalen Funktion für Anwendungen, die sich auf das betroffene Repository verlassen, aufgrund der Entfernung von Quellzugriffsberechtigungen.

Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated