AWS - Codebuild Enum

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

CodeBuild

AWS CodeBuild 被认为是一个 完全托管的持续集成服务。该服务的主要目的是自动化编译源代码、执行测试和打包软件以便于部署的过程。CodeBuild 提供的主要好处在于它能够减轻用户配置、管理和扩展构建服务器的需求。这种便利性是因为服务本身管理这些任务。AWS CodeBuild 的基本功能包括:

  1. 托管服务:CodeBuild 管理和扩展构建服务器,使用户免于服务器维护。
  2. 持续集成:它与开发和部署工作流程集成,自动化软件发布过程中的构建和测试阶段。
  3. 包生产:在构建和测试阶段之后,它准备软件包,使其准备好进行部署。

AWS CodeBuild 与其他 AWS 服务无缝集成,提高了 CI/CD(持续集成/持续部署)管道的效率和可靠性。

Github/Gitlab/Bitbucket 凭证

默认源凭证

这是一个遗留选项,可以配置一些 访问(如 Github 令牌或应用),这些访问将 在 codebuild 项目之间共享,以便所有项目都可以使用这组配置的凭证。

存储的凭证(令牌、密码等)由 codebuild 管理,并且没有任何公共方式可以从 AWS API 中检索它们。

自定义源凭证

根据存储库平台(Github、Gitlab 和 Bitbucket),提供不同的选项。但一般来说,任何需要 存储令牌或密码的选项将作为秘密存储在秘密管理器中

这允许 不同的 codebuild 项目使用不同配置的访问 提供者,而不仅仅是使用配置的默认访问。

Enumeration

# List external repo creds (such as github tokens)
## It doesn't return the token but just the ARN where it's located
aws codebuild list-source-credentials

# Projects
aws codebuild list-shared-projects
aws codebuild list-projects
aws codebuild batch-get-projects --names <project_name> # Check for creds in env vars

# Builds
aws codebuild list-builds
aws codebuild list-builds-for-project --project-name <p_name>
aws codebuild list-build-batches
aws codebuild list-build-batches-for-project --project-name <p_name>

# Reports
aws codebuild list-reports
aws codebuild describe-test-cases --report-arn <ARN>

Privesc

在以下页面中,您可以查看如何滥用codebuild权限以提升特权

AWS - Codebuild Privesc

Post Exploitation

AWS - CodeBuild Post Exploitation

Unauthenticated Access

AWS - CodeBuild Unauthenticated Access

References

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