AWS - CodeBuild Post Exploitation
Reading time: 4 minutes
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.
CodeBuild
자세한 정보는 다음을 확인하세요:
비밀 확인
Github, Gitlab 또는 Bitbucket에 연결하기 위해 Codebuild에 자격 증명이 개인 토큰, 비밀번호 또는 OAuth 토큰 접근 형태로 설정된 경우, 이 자격 증명은 비밀 관리자에 비밀로 저장됩니다.
따라서 비밀 관리자를 읽을 수 있는 접근 권한이 있다면 이러한 비밀을 얻고 연결된 플랫폼으로 피벗할 수 있습니다.
CodeBuild 리포지토리 접근 남용
CodeBuild를 구성하려면 사용할 코드 리포지토리에 대한 접근이 필요합니다. 여러 플랫폼이 이 코드를 호스팅할 수 있습니다:
.png)
CodeBuild 프로젝트는 구성된 소스 제공자에 대한 접근 권한을 가져야 하며, 이는 IAM 역할 또는 github/bitbucket 토큰 또는 OAuth 접근을 통해 이루어질 수 있습니다.
CodeBuild에서 권한이 상승된 공격자는 이 구성된 접근을 남용하여 구성된 리포지토리 및 설정된 자격 증명에 접근할 수 있는 다른 리포지토리의 코드를 유출할 수 있습니다.
이를 위해 공격자는 구성된 자격 증명이 접근할 수 있는 각 리포지토리의 URL을 변경하기만 하면 됩니다 (aws 웹사이트에서 모든 리포지토리를 나열해 줍니다):
.png)
그리고 각 리포지토리를 유출하기 위해 Buildspec 명령을 변경합니다.
warning
그러나 이 작업은 반복적이고 지루합니다. 만약 github 토큰이 쓰기 권한으로 구성되었다면, 공격자는 그 권한을 (남)용할 수 없습니다. 왜냐하면 그는 토큰에 접근할 수 없기 때문입니다.
아니면 접근할 수 있을까요? 다음 섹션을 확인하세요.
AWS CodeBuild에서 접근 토큰 유출
CodeBuild에서 Github과 같은 플랫폼에 주어진 접근을 유출할 수 있습니다. 외부 플랫폼에 대한 접근이 주어졌는지 확인하세요:
aws codebuild list-source-credentials
codebuild:DeleteProject
공격자는 전체 CodeBuild 프로젝트를 삭제할 수 있으며, 이로 인해 프로젝트 구성 손실이 발생하고 프로젝트에 의존하는 애플리케이션에 영향을 미칠 수 있습니다.
aws codebuild delete-project --name <value>
잠재적 영향: 삭제된 프로젝트를 사용하는 애플리케이션의 프로젝트 구성 손실 및 서비스 중단.
codebuild:TagResource
, codebuild:UntagResource
공격자는 CodeBuild 리소스의 태그를 추가, 수정 또는 제거하여 조직의 비용 할당, 리소스 추적 및 태그 기반 접근 제어 정책을 방해할 수 있습니다.
aws codebuild tag-resource --resource-arn <value> --tags <value>
aws codebuild untag-resource --resource-arn <value> --tag-keys <value>
잠재적 영향: 비용 할당, 리소스 추적 및 태그 기반 액세스 제어 정책의 중단.
codebuild:DeleteSourceCredentials
공격자는 Git 리포지토리에 대한 소스 자격 증명을 삭제할 수 있으며, 이는 리포지토리에 의존하는 애플리케이션의 정상적인 기능에 영향을 미칩니다.
aws codebuild delete-source-credentials --arn <value>
잠재적 영향: 소스 자격 증명의 제거로 인해 영향을 받는 리포지토리에 의존하는 애플리케이션의 정상적인 기능이 중단됩니다.
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.