[EC2.18] のセキュリティチェックの対象に含まれていないセキュリティグループが存在する理由を教えてください

2023.07.07

困っていた内容

Security Hub コントロール [EC2.18] に関する質問です。
マネジメントコンソールから [EC2.18] の"不合格のチェック"の項目を確認すると、既存の全てのセキュリティグループがセキュリティチェックの対象とはなっていないように見えます。
例として、当該環境にはセキュリティグループが n 個存在しますが、[EC2.18] のセキュリティチェックの対象(不合格のチェックの分母)となっているのは 1 つのセキュリティグループのみです。
[EC2.18] にてセキュリティチェックの対象に含まれていないセキュリティグループリソースが存在するのは何故でしょうか。

どう対応すればいいの?

結論から述べますと、[EC2.18] は「ポート範囲 0.0.0.0/0 のインバウンドルールが存在するセキュリティグループリソース」のみをセキュリティチェックの対象としています。

[EC2.18] の実行には、Config マネージドルール "vpc-sg-open-only-to-authorized-ports" が利用されます。
当該 Config ルールでは、「ポート範囲 0.0.0.0/0 のインバウンドルールが存在するセキュリティグループリソース」がチェックの対象となっています。
そのため、当該 Config ルールを利用する [EC2.18] でも同様に、「ポート範囲 0.0.0.0/0 のインバウンドルールが存在しないセキュリティグループリソース」はセキュリティチェックの対象外となります。
従って、[EC2.18] では全てのセキュリティグループリソースがセキュリティチェックの対象となるわけではありません。

vpc-sg-open-only-to-authorized-ports - AWS Config

無制限の着信トラフィックを許可するセキュリティグループ (「0.0.0.0/0」または「::/0」) が、許可されたポートでのインバウンド TCP または UDP 接続のみを許可するかどうかをチェックします。

参考資料

Amazon Elastic Compute Cloud コントロール - AWS Security Hub
vpc-sg-open-only-to-authorized-ports - AWS Config
【Security Hub修復手順】[EC2.18] セキュリティグループは、許可されたポートに対して無制限の着信トラフィックのみを許可する必要があります。 | DevelopersIO