AWS - CodeBuild Post Exploitation
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
For more information, check:
Aby skonfigurować CodeBuild, będzie potrzebny dostęp do repozytorium kodu, które będzie używane. Kilka platform może hostować ten kod:
Projekt CodeBuild musi mieć dostęp do skonfigurowanego dostawcy źródła, albo za pomocą roli IAM, albo z użyciem tokena github/bitbucket lub dostępu OAuth.
Atakujący z podwyższonymi uprawnieniami w CodeBuild mógłby nadużyć tego skonfigurowanego dostępu, aby wyciekł kod skonfigurowanego repozytorium oraz innych, do których mają dostęp ustawione poświadczenia. Aby to zrobić, atakujący musiałby po prostu zmienić adres URL repozytorium na każde repozytorium, do którego mają dostęp skonfigurowane poświadczenia (zauważ, że strona aws wyświetli wszystkie z nich):
I zmienić polecenia Buildspec, aby wyeksfiltrować każde repozytorium.
Jednakże, to zadanie jest powtarzalne i żmudne i jeśli token github został skonfigurowany z uprawnieniami do zapisu, atakujący nie będzie mógł (nadużyć) tych uprawnień, ponieważ nie ma dostępu do tokena. Czyżby? Sprawdź następny rozdział
Możesz wyciekować dostęp przyznany w CodeBuild do platform takich jak Github. Sprawdź, czy jakikolwiek dostęp do zewnętrznych platform został przyznany za pomocą:
codebuild:DeleteProject
Napastnik mógłby usunąć cały projekt CodeBuild, co spowodowałoby utratę konfiguracji projektu i wpłynęło na aplikacje polegające na tym projekcie.
Potencjalny wpływ: Utrata konfiguracji projektu i zakłócenie działania aplikacji korzystających z usuniętego projektu.
codebuild:TagResource
, codebuild:UntagResource
Napastnik mógłby dodać, zmodyfikować lub usunąć tagi z zasobów CodeBuild, zakłócając alokację kosztów w organizacji, śledzenie zasobów oraz polityki kontroli dostępu oparte na tagach.
Potencjalny wpływ: Zakłócenie alokacji kosztów, śledzenia zasobów i polityk kontroli dostępu opartych na tagach.
codebuild:DeleteSourceCredentials
Napastnik mógłby usunąć poświadczenia źródłowe dla repozytorium Git, co wpłynęłoby na normalne funkcjonowanie aplikacji polegających na tym repozytorium.
Potencjalny wpływ: Zakłócenie normalnego funkcjonowania aplikacji polegających na dotkniętym repozytorium z powodu usunięcia poświadczeń źródłowych.
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)