ACSC の「ISM」に関する運用上のベストプラクティス – Part 2 - AWS Config

ACSC の「ISM」に関する運用上のベストプラクティス – Part 2

コンフォーマンスパックは、マネージドルールやカスタム AWS Config ルールと AWS Config 修復アクションを使用して、セキュリティ、運用、コスト最適化のガバナンスチェックを作成できるように設計された汎用コンプライアンスフレームワークを提供します。サンプルテンプレートとしてのコンフォーマンスパックは、特定のガバナンスまたはコンプライアンス基準を準拠するようには設計されていません。お客様は、本サービスの利用が該当する法的要件および規制要件を満たしているかどうかについて、お客様自身で評価する責任を負います。

以下に、オーストラリアのサイバーセキュリティセンター (ACSC) の「Information Security Manual (ISM) 2020-06」と、AWS マネージド Config ルール間の追加のマッピング例を示します。各 Config ルールが特定の AWS リソースに適用され、1 つ以上の「ISM」によるコントロールに関連付けられます。「ISM」によるコントロールを、複数の Config ルールに関連付けることができます。これらのマッピングに関する詳細およびガイダンスについては、以下の表を参照してください。

コンフォーマンスパックのサンプルテンプレートには、オーストラリア連邦によって作成された 「Australian Government Information Security Manual」 に記載の「ISM」フレームワークによるコントロールへのマッピングが含まれています。クリエイティブコモンズの Attribution 4.0 International Public License に基づくフレームワークのライセンスと、フレームワークの著作権情報 (保証の免責を含む) については、「ACSC|Copyright」でご確認ください。

コントロール ID AWS Config ルール ガイダンス
1984

appmesh-virtual-gateway-backend-defaults-tls

AWS App Mesh 仮想ゲートウェイのバックエンドのデフォルトで、仮想ゲートウェイが TLS を使用してすべてのポートと通信する必要があるかどうかを確認します。configuration.Spec.BackendDefaults.ClientPolicy.Tls.Enforce が false の場合、ルールは NON_COMPLIANT です。

1984

appmesh-virtual-node-backend-defaults-tls-on

AWS App Mesh 仮想ノードのバックエンドのデフォルトで、仮想ノードが TLS を使用してすべてのポートと通信する必要があるかどうかを確認します。configuration.Spec.BackendDefaults.ClientPolicy.Tls.Enforce が false の場合、ルールは NON_COMPLIANT です。

1984

msk-in-cluster-node-require-tls

Amazon MSK クラスターが、クラスターのブローカーノードで HTTPS (TLS) を使用して転送中に暗号化を適用しているかどうかを確認します。プレーンテキスト通信がクラスター内ブローカーノード接続に対して有効になっている場合、ルールは NON_COMPLIANT です。

1984

rds-mysql-instance-encrypted-in-transit

Amazon RDS for MySQL データベースインスタンスへの接続が、転送中の暗号化を使用するように設定されているかどうかを確認します。関連付けられたデータベースパラメータグループが同期していない場合、または require_secure_transport パラメータが 1 に設定されていない場合、ルールは NON_COMPLIANT です。

1984

rds-postgres-instance-encrypted-in-transit

Amazon RDS for PostgreSQL データベースインスタンスへの接続が、転送中の暗号化を使用するように設定されているかどうかを確認します。関連付けられたデータベースパラメータグループが同期していない場合、または rds.force_ssl パラメータが 1 に設定されていない場合、ルールは NON_COMPLIANT です。

1985

ebs-snapshot-public-restorable-check

Amazon Elastic Block Store (Amazon EBS) スナップショットがパブリックに復元不可能になっているかどうかを確認します。RestorableByUserIds フィールドを持つ 1 つまたは複数のスナップショットが「all」に設定されている場合、つまり Amazon EBS スナップショットがパブリックである場合、ルールは NON_COMPLIANT です。

1985

s3-bucket-mfa-delete-enabled

Amazon Elastic Block Store (Amazon EBS) スナップショットがパブリックに復元不可能になっているかどうかを確認します。RestorableByUserIds フィールドを持つ 1 つまたは複数のスナップショットが「all」に設定されている場合、つまり Amazon EBS スナップショットがパブリックである場合、ルールは NON_COMPLIANT です。

1985

s3-bucket-public-read-prohibited

Amazon S3 バケットでパブリック読み取りアクセスが許可されていないかどうかを確認します。このルールは、パブリックアクセスのブロック設定、バケットポリシー、およびバケットアクセスコントロールリスト (ACL) を確認します。

次の両方に該当するときはこのルールに準拠しています。

  • Block Public Access 設定では、パブリックポリシーが制限されるか、またはバケットポリシーでパブリックの読み取りアクセスが許可されません。

  • Block Public Access 設定では、パブリックの ACL が制限されるか、または ACL でパブリックの読み取りアクセスが許可されません。

次の場合に、このルールは準拠していません。

  • パブリックアクセスのブロック設定でパブリックポリシーが制限されていない場合、AWS Config はポリシーでパブリック読み取りアクセスが許可されているかどうかを評価します。ポリシーがパブリックの読み取りアクセスを許可している場合、このルールは準拠していません。

  • パブリックアクセスのブロック設定でパブリックのバケット ACL が制限されていない場合、AWS Config はバケット ACL でパブリック読み取りアクセスが許可されているかどうかを評価します。バケット ACL でパブリック読み取りアクセスが許可されている場合、ルールは準拠していません。

1985

s3-bucket-public-write-prohibited

Amazon S3 バケットでパブリック書き込みアクセスが許可されていないかどうかを確認します。このルールは、パブリックアクセスのブロック設定、バケットポリシー、およびバケットアクセスコントロールリスト (ACL) を確認します。

次の両方に該当するときはこのルールに準拠しています。

  • Block Public Access 設定でパブリックポリシーが制限されているか、またはバケットポリシーでパブリックの書き込みアクセスが許可されません。

  • Block Public Access 設定でパブリック ACL が制限されているか、またはバケット ACL でパブリックの書き込みアクセスが許可されません。

次の場合に、このルールは準拠していません。

  • パブリックアクセスのブロック設定でパブリックポリシーが制限されていない場合、AWS Config はポリシーでパブリック書き込みアクセスが許可されているかどうかを評価します。ポリシーでパブリックの書き込みアクセスが許可されている場合、このルールは準拠していません。

  • パブリックアクセスのブロック設定でパブリックバケット ACL が制限されていない場合、AWS Config はバケット ACL でパブリック書き込みアクセスが許可されているかどうかを評価します。バケット ACL でパブリックの書き込みアクセスが許可されている場合、このルールは準拠していません。

1985

aurora-resources-in-logically-air-gapped-vault

Amazon Aurora DB クラスターが論理エアギャップボールトにあるかどうかを確認します。Amazon Aurora DB クラスターが、指定された期間内に論理エアギャップボールトにない場合、ルールは NON_COMPLIANT です。

1985

ebs-resources-in-logically-air-gapped-vault

Amazon Elastic Block Store (Amazon EBS) ボリュームが論理エアギャップボールトにあるかどうかを確認します。Amazon EBS ボリュームが指定された期間内に論理エアギャップボールトにない場合、ルールは NON_COMPLIANT です。

1985

ec2-resources-in-logically-air-gapped-vault

Amazon Elastic Block Store (Amazon EBS) インスタンスが論理エアギャップボールトにあるかどうかを確認します。指定された期間内に Amazon EBS インスタンスが論理エアギャップボールトにない場合、ルールは NON_COMPLIANT です。

1985

efs-resources-in-logically-air-gapped-vault

Amazon Elastic File System (Amazon EFS) ファイルシステムが論理エアギャップボールトにあるかどうかを確認します。Amazon EFS ファイルシステムが指定された期間内に論理エアギャップボールトにない場合、ルールは NON_COMPLIANT です。

1985

s3-resources-in-logically-air-gapped-vault

Amazon Simple Storage Service (Amazon S3) バケットが論理エアギャップボールトにあるかどうかを確認します。Amazon S3 バケットが指定された期間内に論理エアギャップボールトにない場合、ルールは NON_COMPLIANT です。

テンプレート

テンプレートは、GitHub の「Operational Best Practices for ACSC ISM - Part 2」で入手できます。