Security Hub コントロール [Config.1] にて、FAILED の評価項目を教えて下さい
困っていること
コンプライアンスステータスが FAILED になっている Security Hub コントロール [Config.1] を修復したいと考えています。
[Config.1] には以下の 3つの評価項目が存在しますが、どの項目に違反しているため FAILED になっているかわかりません。[1]
このコントロールは、以下3つのチェック観点から評価されます。すべての観点が満たされていた場合に成功となります。
- AWS Config(レコーダー)が有効化されているか
- 有効化されているすべてのSecurity Hubコントロールに対応するすべてのリソースタイプがConfigレコーダーで記録できているか
- AWS Configのサービスリンクロール(AWSServiceRoleForConfig)が作成されているか
簡単に確認できる方法はないでしょうか。
解説
AWS マネジメントコンソールから確認できる Security Hub の検出結果には、追加で詳細な情報を確認できる「検出結果.json」が添付されています。[2]
[Config.1] が失敗している評価項目の理由については、"Compliance" > "Status": "FAILED" > "StatusReasons" にて詳細を確認することができます。
私の個人検証環境をサンプルとして確認してみます。
"Compliance": {
"Status": "FAILED",
"StatusReasons": [
{
"Description": "AWS Config isn't recording all resource types that correspond to enabled Security Hub controls. Turn on recording for the following resources: AWS::AppSync::GraphQLApi, AWS::Lambda::Function, AWS::Backup::RecoveryPoint, AWS::DMS::Endpoint, AWS::EC2::Instance, AWS::RDS::DBClusterSnapshot, AWS::RDS::DBSnapshot, AWS::EC2::LaunchTemplate, AWS::AppSync::ApiCache, AWS::WAFRegional::RuleGroup, AWS::ApiGateway::Stage, AWS::ECS::TaskDefinition, AWS::NetworkFirewall::FirewallPolicy, AWS::AutoScaling::LaunchConfiguration, AWS::SSM::ManagedInstanceInventory, AWS::WAFv2::RuleGroup, AWS::ECS::Service, AWS::EC2::Volume, AWS::AutoScaling::AutoScalingGroup, AWS::S3::AccessPoint, AWS::SSM::PatchCompliance, AWS::ElasticBeanstalk::Environment, AWS::WAF::RuleGroup, AWS::SSM::AssociationCompliance, AWS::WAFRegional::Rule, AWS::WAF::Rule, AWS::WAF::WebACL, AWS::EC2::ClientVpnEndpoint, AWS::NetworkFirewall::RuleGroup, AWS::WAFv2::WebACL, AWS::ApiGatewayV2::Stage, AWS::CodeBuild::ReportGroup, AWS::ECS::TaskSet, AWS::KafkaConnect::Connector.",
"ReasonCode": "CONFIG_RECORDER_MISSING_REQUIRED_RESOURCE_TYPES"
},
{
"Description": "The AWS Config recorder is using a custom IAM role instead of the AWS Config service-linked role.",
"ReasonCode": "CONFIG_RECORDER_CUSTOM_ROLE"
}
],
"SecurityControlId": "Config.1",
検出結果.json ファイルの "StatusReasons" にて、2件の "ReasonCode" が記録されていました。
- "ReasonCode": "CONFIG_RECORDER_MISSING_REQUIRED_RESOURCE_TYPES"
- "ReasonCode": "CONFIG_RECORDER_CUSTOM_ROLE"
ここから [Config.1] の評価項目の 2番目と 3番目に違反していることがわかりました。[3]
特に 2番目の記録が有効化されていないリソースタイプに関する評価項目については、有効化が必要なリソースタイプの一覧も併記されていて非常にわかりやすいですね。
これらの評価項目が満たされるように設定を変更した結果、後日 [Config.1] が PASSED になっていることが確認できました。
参考資料
-
[1]【Security Hub修復手順】[Config.1] AWS Config を有効にする必要があります | DevelopersIO
https://dev.classmethod.jp/articles/securityhub-fsbp-remediation-config-1/ -
[2] コントロール結果と検出結果リソースの詳細の表示 - AWS Security Hub
https://docs.aws.amazon.com/ja_jp/securityhub/latest/userguide/control-finding-resource-details.html#control-finding-json -
[3] Generating and updating control findings - AWS Security Hub
https://docs.aws.amazon.com/securityhub/latest/userguide/controls-findings-create-update.html#control-findings-asff-compliance