GCP - Cloud Build Unauthenticated Enum
Cloud Build
Cloud Build에 대한 자세한 정보는 확인하세요:
pageGCP - Cloud Build Enumcloudbuild.yml
cloudbuild.yml
파일을 포함하는 저장소에 쓰기 액세스를 침해하면 Cloud Build 내에서 실행될 명령어를 지정하는이 파일을 백도어로 사용하여 비밀 정보를 유출하고 수행되는 작업을 침해하고 Cloud Build 서비스 계정을 침해할 수 있습니다.
GCP는 "Comment Control"을 통해 외부 PR에서 빌드 시스템의 실행을 제어할 수 있도록 관리자가 허용하는 옵션을 가지고 있습니다. Comment Control은 협력자/프로젝트 소유자가 빌드를 트리거하기 위해 “/gcbrun”을 코멘트해야 하는 기능이며, 이 기능을 사용하면 인터넷 상의 누구도 빌드 시스템을 트리거할 수 없습니다.
이와 유사한 Github Actions를 공격하는 방법에 대한 페이지를 확인할 수 있습니다:
pageAbusing Github ActionsPR 승인
트리거가 PR인 경우 누구나 공개 저장소에 PR을 수행할 수 있기 때문에 어떤 PR이든 트리거 실행을 허용하는 것은 매우 위험할 수 있습니다. 따라서 기본적으로 실행은 소유자 및 협력자에게만 자동으로 이루어지며, 다른 사용자의 PR로 트리거를 실행하려면 소유자 또는 협력자가 /gcbrun
을 코멘트해야 합니다.
따라서 이것이 **필요 없음
**으로 설정된 경우, 공격자는 악성 코드 실행을 추가하여 실행을 트리거할 브랜치에 PR을 수행하고 클라우드빌드 실행을 침해할 수 있습니다 (cloudbuild는 PR에서 코드를 다운로드하므로 악성 **cloudbuild.yml
**을 실행합니다).
또한, PR을 보낼 때 어떤 cloudbuild 실행이 수행되어야 하는지 쉽게 확인할 수 있습니다. Github에 나타납니다:
따라서 cloudbuild가 실행되지 않더라도 공격자는 회사에 속한 GCP 프로젝트의 프로젝트 이름을 볼 수 있습니다.
最終更新