AWS - CodeBuild Post Exploitation
Last updated
Last updated
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)
Aby uzyskać więcej informacji, sprawdź:
AWS - Codebuild EnumJeśli dane uwierzytelniające zostały ustawione w Codebuild do łączenia się z Github, Gitlab lub Bitbucket w formie tokenów osobistych, haseł lub dostępu za pomocą tokenu OAuth, te dane uwierzytelniające będą przechowywane jako sekrety w menedżerze sekretów. Dlatego, jeśli masz dostęp do odczytu menedżera sekretów, będziesz mógł uzyskać te sekrety i przejść do połączonej platformy.
AWS - Secrets Manager PrivescAby 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 tokenem github/bitbucket lub dostępem OAuth.
Napastnik z podwyższonymi uprawnieniami w CodeBuild mógłby nadużyć tego skonfigurowanego dostępu, aby wyciekł kod skonfigurowanego repozytorium i innych, do których mają dostęp ustawione dane uwierzytelniające. Aby to zrobić, napastnik musiałby po prostu zmienić adres URL repozytorium na każde repozytorium, do którego mają dostęp skonfigurowane dane uwierzytelniające (zauważ, że strona aws wyświetli wszystkie z nich dla Ciebie):
I zmienić polecenia Buildspec, aby wyeksfiltrować każde repozytorium.
Jednakże, to zadanie jest powtarzalne i nużące i jeśli token github został skonfigurowany z uprawnieniami do zapisu, napastnik nie będzie mógł (nadużyć) tych uprawnień, ponieważ nie ma dostępu do tokenu. Czyżby? Sprawdź następny rozdział
Możesz wyciekł 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łócenia w działaniu 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, śledzenie zasobów i polityki kontroli dostępu w oparciu o tagi.
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)