AWS Configが無効でも特定のコントロールではAWS Security Hubセキュリティ基準のセキュリティチェックが実行される

2024.06.26

前提: AWS Security HubのセキュリティチェックにはAWS Configの有効化が必要

AWS Security Hubのセキュリティチェックには、AWS Configルールが使われます。

AWS Security Hub は、サービスにリンクされた AWS Config ルールを使用して、ほとんどのコントロールのセキュリティチェックを実行します。

Security Hub を有効にする前の推奨事項 - AWS Security Hub

では、AWS Configが無効な状態で、AWS Security Hubのセキュリティ標準を有効にするとセキュリティチェックは実行されるのでしょうか?

引用部分にほとんどとあるように、AWS Configルールを利用しないコントロールが存在します。

このコントロール分のチェックが実行されます。

「Config.1」のコントロールはConfigルールを使わない

AWS Configルールを使わないルールに、「Config.1」があります。

このルールのチェックは、AWS Configが無効な状態でも実行されます。

実際に、AWS Configを無効の状態でAWS SecurityHub標準を有効にしてみます。

以下の状態です。

# AWS Configが無効
$ aws configservice describe-configuration-recorders
{
    "ConfigurationRecorders": []
}
# AWS Security Hub セキュリティ標準「AWS 基礎セキュリティのベストプラクティス v1.0.0」が有効
$ aws securityhub get-enabled-standards
{
    "StandardsSubscriptions": [
        {
            "StandardsSubscriptionArn": "arn:aws:securityhub:us-west-2:1234567890:subscription/aws-foundational-security-best-practices/v/1.0.0",
            "StandardsArn": "arn:aws:securityhub:us-west-2::standards/aws-foundational-security-best-practices/v/1.0.0",
            "StandardsInput": {},
            "StandardsStatus": "INCOMPLETE",
            "StandardsStatusReason": {
                "StatusReasonCode": "NO_AVAILABLE_CONFIGURATION_RECORDER"
            }
        }
    ]
}

マネジメントコンソールで確認すると以下です。

「コントロールステータス」は「データなし」ですが、すべてのコントロールが有効な状態になっています。

sechub_standard

「Config.1」のルールはチェックが行われていることが確認できました。

config1_check

他のコントロールは、チェックが実行されていません。

codebuild_check

このリージョンは本証用にSecurity Hubを初めて有効化しました。2日ほどセキュリティ基準を有効化して、放置しました。

5回ほどセキュリティチェックが行われたようです。

sechub-usage

「Config.1」のコントロールのセキュリティチェックによる課金に注意

AWS Configが無効でもセキュリティチェックするため、課金も発生します。

1リージョンあたりは微々たる金額ですが、AWSアカウント数が多い環境で全リージョンセキュリティ基準を有効化している場合、ある程度金額が発生してしまいます。

以下は金額の例です。

例) 30リージョン・50アカウント・チェックは12時間周期(※1)

90 USD = 30(リージョン数) * 50(アカウント数) * 60(チェック回数/月)  * 0.001(USD チェックごとの料金※2)

※1 定期的なチェックの周期は12時間または24時間以内に行われる。仮で12時間を設定。
※2 料金 - AWS Security Hub | AWS

アカウント規模を考えると小さい金額かもしれませんが、できるだけ課金は抑えたいものです。

コントロールを無効化すればチェックが発生しないため、中央設定等で一括で「Config.1」を無効化するのも選択肢の一つです。

おわりに

AWS Configが無効な環境では、AWS Security Hubのセキュリティチェックが行われないと思っていましたが、コントロールによってはセキュリティチェックが実行されることを知りました。

AWS Configの有効化状況をチェックするコントロールだから、AWS Configルール使わないというのは当たり前ですが、知らなかったのでブログにしてみました。

以上、AWS事業本部の佐藤(@chari7311)でした。