🧺

SecurityHubでFSBPを有効にしたときのS3設定

2022/02/10に公開

概要

SecurityHubでFSBPを有効にしたときに
SecurityHubのチェックに引っかからないために行ったS3設定をまとめた。

FSBPとは

AWS Foundational Security Best Practices standardの略。
SecurityHubで有効にできるセキュリティ標準の一つ。

S3に関するコントロールへの対処法

  • [S3.1]アカウントレベルでのブロックパブリックアクセス設定を有効にする

S3コンソール画面にて「このアカウントのブロックパブリックアクセス設定」を押下。
[パブリックアクセスをすべてブロック] がオンになっていることを確認する。
※設定されていなければオンに設定する。

  • [S3.2][S3.3][S3.8]バケットレベルでのブロックパブリックアクセス設定を有効にする

S3作成時、「このバケットのブロックパブリックアクセス設定」にて「パブリックアクセスをすべて ブロック」にチェックを入れる。

  • [S3.4]サーバー側の暗号化を有効にする

S3作成時、「デフォルトの暗号化」にて「サーバー側の暗号化」を有効にする。

  • [S3.5] S3 バケットは、Secure Socket Layer を使用するためのリクエストが必要です

S3バケットポリシーに下記を追記する。※S3バケット名は書き換えること

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Deny non-HTTPS access",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:*",
      "Resource": "arn:aws:s3:::s3-name/*",
      "Condition": {
        "Bool": {
          "aws:SecureTransport": "false"
        }
      }
    }
  ]
}
  • [S3.6] 他のユーザーに付与された Amazon S3 のアクセス許可AWSバケットポリシーのアカウントは制限する必要があります

S3バケットポリシーで 別のAWSアカウントに対して下記アクションを許可していない ことを確認する。

s3:DeleteBucketPolicy
s3:PutBucketAcl
s3:PutBucketPolicy
s3:PutEncryptionConfiguration
s3:PutObjectAcl

Discussion