AWS - CodeBuild Post Exploitation
Last updated
Last updated
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
詳細については、次を確認してください:
CodebuildにGithub、Gitlab、またはBitbucketに接続するための個人トークン、パスワード、またはOAuthトークンアクセスの形で資格情報が設定されている場合、これらの資格情報はシークレットマネージャーにシークレットとして保存されます。 したがって、シークレットマネージャーを読み取るアクセス権があれば、これらのシークレットを取得し、接続されたプラットフォームにピボットすることができます。
CodeBuildを構成するには、使用するコードリポジトリへのアクセスが必要です。このコードをホストしているプラットフォームはいくつかあります:
CodeBuildプロジェクトは、設定されたソースプロバイダーへのアクセスを持っている必要があります。これは、IAMロールまたはgithub/bitbucketのトークンまたはOAuthアクセスを介して行われます。
CodeBuildで権限が昇格した攻撃者は、この設定されたアクセスを悪用して、設定されたリポジトリのコードや、設定された資格情報がアクセスできる他のリポジトリを漏洩させることができます。 これを行うには、攻撃者は単に設定された資格情報がアクセスできる各リポジトリのリポジトリURLを変更する必要があります(awsのウェブサイトでは、すべてのリポジトリがリストされます):
そして、各リポジトリを外部流出させるためにBuildspecコマンドを変更します。
ただし、この作業は繰り返しで面倒です。もしgithubトークンが書き込み権限で設定されていた場合、攻撃者はその権限を(悪用)できません。なぜなら、トークンへのアクセスがないからです。 それとも、あるのでしょうか?次のセクションを確認してください。
CodeBuildでGithubなどのプラットフォームへのアクセスが漏洩する可能性があります。外部プラットフォームへのアクセスが与えられているか確認してください:
codebuild:DeleteProject
攻撃者は、CodeBuildプロジェクト全体を削除することができ、プロジェクトの設定が失われ、プロジェクトに依存するアプリケーションに影響を与える可能性があります。
潜在的な影響: 削除されたプロジェクトを使用しているアプリケーションのプロジェクト構成の喪失とサービスの中断。
codebuild:TagResource
, codebuild:UntagResource
攻撃者はCodeBuildリソースからタグを追加、変更、または削除することができ、タグに基づく組織のコスト配分、リソース追跡、およびアクセス制御ポリシーを混乱させる可能性があります。
潜在的な影響: コスト配分、リソース追跡、およびタグベースのアクセス制御ポリシーの混乱。
codebuild:DeleteSourceCredentials
攻撃者はGitリポジトリのソース認証情報を削除することができ、リポジトリに依存するアプリケーションの正常な機能に影響を与える可能性があります。
潜在的影響: ソース認証情報の削除により、影響を受けたリポジトリに依存するアプリケーションの正常な機能が妨げられる可能性があります。
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する: HackTricks Training GCP Red Team Expert (GRTE)