【Security Hub修復手順】[S3.6] バケットポリシー内で別の AWS アカウントに付与された Amazon S3 許可は制限する必要があります

AWS SecurityHub 基礎セキュリティのベストプラクティスコントロール修復手順をご紹介します。
2023.01.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、AWS事業本部の平井です。

皆さん、お使いのAWS環境のセキュリティチェックはしていますか?

当エントリーでは、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介します。

本記事の対象コントロール

[S3.6] バケットポリシー内で別の AWS アカウントに付与された Amazon S3 許可は制限する必要があります

[S3.6] Amazon S3 permissions granted to other AWS accounts in bucket policies should be restricted

前提条件

本記事はAWS Security Hubで「AWS基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容です。 AWS Security Hubの詳細についてはこちらのブログをご覧ください。

対象コントロールの説明

今回の対象コントロールは、「バケットポリシー内で別の AWS アカウントに付与された Amazon S3 許可は制限する必要があります」です。

他AWSアカウントに対して、下記5点のうち、いずれかのアクションが許可されている場合、コントロールは失敗します。

  • s3:DeleteBucketPolicy
    • バケットポリシーを削除する
  • s3:PutBucketAcl
    • バケットのACLを設定する
  • s3:PutBucketPolicy
    • バケットポリシーを設定する
  • s3:PutEncryptionConfiguration
    • バケットの暗号化設定を設定する
  • s3:PutObjectAcl
    • オブジェクトのACLを設定する

他アカウントからの許可は、最小権限に抑えることで、エラーの影響およびデータの漏えいなどのセキュリティリスクを低減できます。

そのため、不要なアクションは、許可しないようにしましょう。

修正手順

1 対象のS3バケットの確認方法

  1. AWSマネージメントコンソールにログインし、AWS 基礎セキュリティのベストプラクティス v1.0.0にて、「S3.6」を検索します。タイトルを選択します。
  2. リソースの欄から失敗しているS3バケットを確認できます。
  3. S3のコンソールを開き、バケット一覧から対象のバケットの詳細を確認できます。

2 ステークホルダーに確認

ステークホルダー(リソースの作成者や管理している部署などの関係者)に以下を確認します。

  • 対象コントロールの説明で解説した、5点のアクションを許可する必要があるか
    • 5点全てのアクション許可が必要ない場合、[3 バケットポリシーを修正]の作業をして下さい。
    • いずれかのアクション許可が必要な場合、バケットポリシーが最小権限になっているか確認し、抑制済みにします。

※設定変更後、業務に影響が出る可能性があります。そのため、社内で注意深く確認し、対応して下さい。

3 バケットポリシーを修正

  1. S3のコンソールから、対象のバケットを選択し、[アクセス許可]タブの[バケットポリシー]の編集をクリックします。
  2. 先程解説した他アカウントからの5つのアクションを許可しないよう、バケットポリシーを修正します。最小権限に絞るようにしましょう。

バケットポリシーを最小権限に絞ることで、データの漏えいなどのセキュリティリスクの低減につなげることができました。

最後に

今回は、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介しました。

コントロールを修正して、お使いのAWS環境のセキュリティをパワーアップさせましょう!

最後までお読みいただきありがとうございました!どなたかのお役に立てれば幸いです。

以上、平井でした!