AWS - CodeBuild 無認証アクセス

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をサポートする

CodeBuild

詳細については、このページを確認してください:

AWS - Codebuild Enum

buildspec.yml

buildspec.yml という名前のファイルを含むリポジトリに対する書き込みアクセスを侵害した場合、このファイルをバックドアすることができ、これはCodeBuildプロジェクト内で実行されるコマンドを指定し、秘密情報を抽出し、実行される内容を妨害し、さらにCodeBuild IAMロールの資格情報を侵害することになります。

buildspec.yml ファイルが存在しなくても、Codebuildが使用されていることを知っている場合(または別のCI/CDが使用されている場合)、実行される正当なコードを変更することで、例えばリバースシェルを取得することも可能です。

関連情報については、Github Actionsを攻撃する方法に関するページを確認できます(これに似ています):

Abusing Github Actions

AWS CodeBuildにおける自己ホスト型GitHub Actionsランナー

ドキュメントに示されているようにCodeBuildを構成して、設定されたGithubリポジトリ内でワークフローがトリガーされたときに自己ホスト型Githubアクションを実行することが可能です。これは、Event typeWORKFLOW_JOB_QUEUEDを含む必要があるため、CodeBuildプロジェクトの設定を確認することで検出できます。また、Githubワークフロー内では、次のように自己ホスト型ランナーが選択されます:

bash
runs-on: codebuild-<project-name>-${{ github.run_id }}-${{ github.run_attempt }}

このGithub ActionsとAWSの新しい関係は、GithubのコードがIAMロールが付与されたCodeBuildプロジェクトで実行されるため、GithubからAWSを侵害する別の方法を作ります。

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をサポートする