セキュリティ OU - Security Tooling アカウント - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

セキュリティ OU - Security Tooling アカウント

簡単な調査を行い、 AWS セキュリティリファレンスアーキテクチャ (AWS SRA) の未来に影響を与えます。 https://amazonmr.au1.qualtrics.com/jfe/form/SV_e3XI1t37KMHU2ua

次の図は、Security Tooling アカウントで設定されている AWS セキュリティサービスを示しています。

Security Tooling アカウントのセキュリティサービス

Security Tooling アカウントは、セキュリティサービスの運用、AWS アカウントのモニタリング、セキュリティアラートとレスポンスの自動化に専念しています。セキュリティの目的は以下の通りです。

  • セキュリティガードレール、モニタリング、および対応へのアクセスを管理するための制御されたアクセスを専用アカウントに提供します。

  • セキュリティオペレーションデータをモニタリングし、トレーサビリティを維持するために、適切な一元化されたセキュリティインフラストラクチャを維持します。検出、調査、対応は、セキュリティライフサイクルの重要な部分であり、品質プロセス、法的義務またはコンプライアンス義務をサポートし、脅威の特定と対応の取り組みに使用することができます。

  • 暗号化キーやセキュリティグループ設定などの適切なセキュリティ設定とオペレーションを別のレイヤーで制御することで、 defense-in-depth 組織戦略をさらにサポートします。セキュリティオペレーターが作業するアカウントです。AWS 組織全体の情報を表示する読み取り専用/監査ロールが一般的ですが、書き込み/変更ロールの数は限られており、厳密に制御、モニタリング、ログ記録されています。

設計上の考慮事項
  • AWS Control Tower は、デフォルトでセキュリティ OU の下にあるアカウントを監査アカウントに指定します。AWS Control Tower のセットアップ中にアカウントの名前を変更できます。

  • セキュリティツールアカウントを複数持つのが適切かもしれません。例えば、セキュリティイベントのモニタリングと対応は、多くの場合、専用のチームに割り当てられています。ネットワークセキュリティは、クラウドインフラストラクチャやネットワークチームと協力して、独自のアカウントとロールを保証する場合があります。このような分割は、一元化されたセキュリティエンクレーブを分離するという目的を保持し、職務の分離、最小特権、およびチーム割り当ての単純化の可能性をさらに強調するものです。AWS Control Tower を使用している場合、セキュリティ OU で追加の AWS アカウントの作成が制限されます。

セキュリティサービスの委任管理者

Security Tooling アカウントは、AWS アカウント全体の管理者/メンバー構造で管理されるセキュリティサービスの管理者アカウントとして機能します。前述のように、これは AWS Organizations の委任された管理者機能を通じて処理されます。現在委任管理者をサポートしている AWS SRA のサービスには、AWS ConfigAWS Firewall Manager、Amazon GuardDuty、AWS IAM Access Analyzer、Amazon Macie、AWS Security Hub、Amazon Detective、AWS Audit Manager、Amazon Inspector 、 CloudTrailおよび AWS Systems Manager が含まれます。セキュリティチームがこれらのサービスのセキュリティ機能を管理し、セキュリティ固有のイベントや検出結果をモニタリングします。

IAM Identity Center は、メンバーアカウントに委任された管理をサポートします。AWS SRA は、共有サービスアカウントの IAM Identity Center セクションで後述するように、IAM Identity Center の委任管理者アカウントとして共有サービスアカウントを使用します。

AWS CloudTrail

AWS CloudTrail は、AWS アカウントのアクティビティのガバナンス、コンプライアンス、監査をサポートするサービスです。を使用すると CloudTrail、AWS インフラストラクチャ全体のアクションに関連するアカウントアクティビティをログに記録し、継続的にモニタリングし、保持できます。 CloudTrail は AWS Organizations と統合されており、その統合を使用して、AWS 組織内のすべてのアカウントのすべてのイベントをログに記録する単一の証跡を作成できます。これは、組織の証跡と呼ばれます。組織の証跡を作成および管理できるのは、組織の管理アカウント内または委任された管理者アカウントからのみです。組織の証跡を作成すると、指定した名前の証跡が、AWS 組織に属するすべての AWS アカウントに作成されます。証跡は、管理アカウントを含むすべてのアカウントのアクティビティを AWS 組織に記録し、ログを 1 つの S3 バケットに保存します。この S3 バケットは機密性が高いため、このガイドの後半にあるAmazon S3ログストア」セクションで説明されているベストプラクティスに従って保護する必要があります。AWS 組織内のすべてのアカウントは、組織の証跡を証跡のリストで確認できます。ただし、メンバー AWS アカウントは、この証跡への読み取り専用アクセス権を持ちます。デフォルトでは、 CloudTrail コンソールで組織の証跡を作成すると、証跡はマルチリージョンの証跡になります。その他のセキュリティのベストプラクティスについては、AWS CloudTrail ドキュメント を参照してください。

AWS SRA では、Security Tooling アカウントは を管理するための委任管理者アカウントです CloudTrail。組織の証跡ログを保存する対応する S3 バケットは、ログアーカイブアカウントに作成されます。これは、ログ権限の管理と使用 CloudTrailを分離するためです。組織の証跡のログファイルを保存するために S3 バケットを作成または更新する方法については、AWS CloudTrail ドキュメント を参照してください。

注記

組織の証跡は、管理アカウントと委任された管理者アカウントの両方から作成および管理できます。ただし、ベストプラクティスとして、管理アカウントへのアクセスを制限し、利用可能な場合は委任管理者機能を使用する必要があります。

設計上の考慮事項
  • メンバーアカウントが自分のアカウントの CloudTrail ログファイルにアクセスする必要がある場合は、中央の S3 バケットから組織の CloudTrail ログファイルを選択的に共有できます。ただし、メンバーアカウントがアカウントの CloudWatch ログにローカル CloudTrail ロググループを必要とする場合、またはログ管理イベントとデータイベント (読み取り専用、書き込み専用、管理イベント、データイベント) を組織の証跡とは異なる方法で設定する場合は、適切なコントロールを使用してローカル証跡を作成できます。ローカルアカウント固有の証跡には、追加料金が発生します

AWS Security Hub

AWS Security Hub は、AWS のセキュリティ体制を包括的に把握し、セキュリティ業界標準とベストプラクティスに照らして環境をチェックするのに役立ちます。Security Hub は、AWS 統合サービス、サポートされているサードパーティー製品、および使用する可能性のあるその他のカスタムセキュリティ製品全体からセキュリティデータを収集します。セキュリティの傾向を継続的にモニタリング・分析し、特に優先度の高いセキュリティ問題を特定するのに役立ちます。取り込まれたソースに加えて、Security Hub は独自の検出結果を生成します。これは、1 つ以上のセキュリティ標準にマッピングされるセキュリティコントロールによって表されます。これらの標準には、AWS Foundational Security Best Practices (FSBP)、Center for Internet Security (CIS)、AWS Foundations Benchmark v1.20 および v1.4.0、米国国立標準技術研究所 (NIST) SP 800-53 Rev. 5、Payment Card Industry Data Security Standard (PCI DSS)、およびサービスマネージド標準 が含まれます。現在のセキュリティ標準のリストと特定のセキュリティコントロールの詳細については、Security Hub ドキュメントの Security Hub 標準リファレンスを参照してください。

Security Hub は AWS Organizations と統合され、AWS 組織内のすべての既存および将来のアカウントでセキュリティ体制の管理を簡素化します。委任された管理者アカウント (この場合は Security Tooling) の Security Hub 中央設定機能を使用して、Security Hub サービス、セキュリティ標準、およびセキュリティコントロールを リージョン全体で組織アカウントと組織単位 (OUsで設定する方法を指定できます。これらの設定は、ホームリージョンと呼ばれる 1 つのプライマリリージョンから数ステップで設定できます。中央設定を使用しない場合は、各アカウントとリージョンで個別に Security Hub を設定する必要があります。委任された管理者は、アカウントと OUs をセルフマネージド型として指定できます。メンバーは各リージョンで個別に設定でき、一元管理型として指定できます。委任された管理者はリージョン間でメンバーアカウントまたは OU を設定できます。組織内のすべてのアカウントと OU を、一元管理型、すべてセルフマネージド型、または両方の組み合わせとして指定できます。これにより、OU とアカウントごとに変更できる柔軟性を提供しながら、一貫した設定の適用を簡素化できます。

Security Hub の委任管理者アカウントは、すべてのメンバーアカウントから調査結果の表示、インサイトの表示、および詳細の制御を行うこともできます。さらに、委任された管理者アカウント内で集約リージョンを指定して、アカウントとリンクされたリージョン全体で検出結果を一元化できます。検出結果は、アグリゲータリージョンと他のすべてのリージョン間で継続的かつ双方向に同期されます。

Security Hub は、複数の AWS サービスとの統合をサポートしています。Amazon GuardDuty、AWS Config 、Amazon Macie 、AWS IAM Access Analyzer、AWS Firewall Manager 、Amazon Inspector 、および AWS Systems Manager Patch Manager は、結果を Security Hub にフィードできます。Security Hub は、AWS Security Finding Format (ASFF) と呼ばれる標準形式を使用して検出結果を処理します。Security Hub は、結果を統合された製品全体と関連づけて、最も重要なものに優先順位を付けます。Security Hub の検出結果のメタデータを強化して、セキュリティの検出結果のコンテキスト化、優先順位付け、およびアクションの実行を強化できます。このエンリッチメントにより、Security Hub に取り込まれるすべての検出結果に、リソースタグ、新しい AWS アプリケーションタグ、およびアカウント名情報が追加されます。これにより、自動化ルールの検出結果を微調整し、検出結果とインサイトを検索またはフィルタリングし、アプリケーションごとにセキュリティ体制のステータスを評価することができます。さらに、自動化ルールを使用して検出結果を自動的に更新できます。Security Hub は検出結果を取り込み、検出結果の抑制、重要度の変更、検出結果へのメモの追加など、さまざまなルールアクションを適用できます。これらのルールアクションは、結果が関連付けられているリソース ID やアカウント IDs、タイトルなど、指定された基準に結果が一致したときに有効になります。自動化ルールを使用して、ASFF 内の選択した検出結果フィールドを更新できます。ルールは、新しい検出結果と更新された検出結果の両方に適用されます。

セキュリティイベントの調査中に、Security Hub から Amazon Detective に移動して Amazon GuardDuty の検出結果を調査できます。Security Hub では、Detective (存在する場合) などのサービスの委任管理者アカウントを、よりスムーズな統合のために調整することを推奨しています。例えば、Detective と Security Hub の間で管理者アカウントを調整しない場合、検出結果から Detective に移動することはできません。包括的なリストについては、Security Hub ドキュメントの「Security Hub との AWS サービス統合の概要」を参照してください。

Security Hub を Amazon VPC の Network Access Analyzer 機能と共に使用すると、AWS ネットワーク設定のコンプライアンスを継続的にモニタリングできます。これにより、不要なネットワークアクセスをブロックし、重要なリソースの外部アクセスを防ぐことができます。アーキテクチャと実装の詳細については、AWS ブログ記事「Amazon VPC Network Access Analyzer と AWS Security Hub を使用したネットワークコンプライアンスの継続的な検証」を参照してください。

Security Hub は、モニタリング機能に加えて、Amazon との統合をサポートし EventBridge 、特定の検出結果の修復を自動化します。結果を受け取ったときに実行するカスタムアクションを定義できます。たとえば、チケット発行システムや自動修復システムに結果を送信するなどのカスタムアクションを設定できます。その他の議論と例については、AWS ブログ記事「AWS Security Hub による自動応答と修復」および「Security Hub 自動応答と修復のための AWS ソリューションをデプロイする方法」を参照してください。

Security Hub は、サービスにリンクされた AWS Config ルールを使用して、コントロールのセキュリティチェックのほとんどを実行します。これらのコントロールをサポートするには、Security Hub が有効になっている各 AWS リージョンで、管理者 (または委任管理者) アカウントとメンバーアカウントを含むすべてのアカウントで AWS Config を有効にする必要があります

設計上の考慮事項
  • PCI-DSS などのコンプライアンス標準が Security Hub にすでに存在する場合、フルマネージド Security Hub サービスは、その標準を運用するための最も簡単な方法です。ただし、セキュリティ、運用、またはコスト最適化チェックを含む独自のコンプライアンスまたはセキュリティ標準をアセンブルする場合、AWS Config コンフォーマンスパックは簡素化されたカスタマイズプロセスを提供します。(AWS Config とコンフォーマンスパックの詳細については、AWS Configセクションを参照してください。)

  • Security Hub の一般的なユースケースは次のとおりです。

    • アプリケーション所有者が AWS リソースのセキュリティおよびコンプライアンス体制を可視化するダッシュボードとして

    • セキュリティオペレーション、インシデント対応担当者、脅威ハンターが使用するセキュリティ検出結果の中央ビューとして、AWS アカウントとリージョン全体で AWS セキュリティとコンプライアンスの検出結果をトリアージしてアクションを実行します。

    • AWS アカウントおよびリージョン間のセキュリティおよびコンプライアンスの検出結果を集約し、一元化されたセキュリティ情報とイベント管理 (SIEM) またはその他のセキュリティオーケストレーションシステムにルーティングするには

    これらのユースケースのセットアップ方法など、これらのユースケースに関する追加のガイダンスについては、ブログ記事「Security Hub の 3 つの反復的な使用パターン」および のデプロイ方法を参照してください。

実装例

AWS SRA コードライブラリは、Security Hub のサンプル実装を提供します。これには、サービスの自動有効化、メンバーアカウントへの委任管理 (Security Tooling)、および AWS 組織内のすべての既存および将来のアカウントに対して Security Hub を有効にするための設定が含まれます。

Amazon GuardDuty

Amazon GuardDuty は、AWS アカウントとワークロードを保護するために、悪意のあるアクティビティや不正な動作を継続的にモニタリングする脅威検出サービスです。モニタリングおよび監査の目的では常に適切なログをキャプチャして保存する必要がありますが、Amazon は AWS 、Amazon VPC フローログ CloudTrail、および AWS DNS ログから直接データの独立したストリーム GuardDuty を取得します。Amazon S3 バケットポリシーを管理したり、ログの収集と保存方法を変更したりする必要はありません。 GuardDuty アクセス許可は、 を無効にすることでいつでも取り消すことができるサービスにリンクされたロールとして管理されます GuardDuty。これにより、複雑な設定なしでサービスを簡単に利用できるようになり、IAM アクセス許可の変更や S3 バケットポリシーの変更がサービスの運用に影響を与えるリスクを排除します。

は、基本的なデータソースの提供に加えて、セキュリティ上の検出結果を特定するためのオプション機能 GuardDuty を提供します。これには、EKS Protection、RDS Protection、S3 Protection、Malware Protection、Lambda Protection が含まれます。新しいディテクターの場合、これらのオプション機能は、手動で有効にする必要がある EKS Protection を除き、デフォルトで有効になっています。

  • GuardDuty S3 Protection では、 はデフォルトの CloudTrail 管理イベントに加えて、 CloudTrailAmazon S3 データイベントを GuardDuty モニタリングします。データイベントをモニタリングすることで、 GuardDuty は S3 バケット内のデータに対する潜在的なセキュリティリスクについて、オブジェクトレベルの API オペレーションをモニタリングできます。

  • GuardDuty Malware Protection は、アタッチされた Amazon EC2 インスタンスまたはコンテナワークロードにマルウェアが存在することを検出します。

  • GuardDuty RDS Protection は、データベースのパフォーマンスに影響を与えることなく、Amazon Aurora データベースへのアクセスアクティビティをプロファイリングおよびモニタリングするように設計されています。

  • GuardDuty EKS Protection には、EKS 監査ログのモニタリングと EKS Runtime Monitoring が含まれます。EKS 監査ログのモニタリングでは、 は Amazon EKS クラスターから Kubernetes 監査ログ GuardDuty をモニタリングし、潜在的に悪意のあるアクティビティや疑わしいアクティビティがないか分析します。EKS Runtime Monitoring は、 GuardDutyセキュリティエージェント (Amazon EKS アドオン) を使用して、個々の Amazon EKS ワークロードをランタイムで可視化します。 GuardDuty セキュリティエージェントは、侵害されている可能性のある Amazon EKS クラスター内の特定のコンテナを識別するのに役立ちます。また、個々のコンテナから基盤となる Amazon EC2 ホストまたはより広範な AWS 環境に権限をエスカレートしようとする試みを検出することもできます。

GuardDuty は AWS Organizations を通じてすべてのアカウントで有効になっており、すべての検出結果は GuardDuty 委任された管理者アカウント (この場合は Security Tooling アカウント) の適切なセキュリティチームによって表示および実行可能です。 

AWS Security Hub が有効になっている場合、 GuardDuty 検出結果は Security Hub に自動的に流れます。Amazon Detective を有効にする GuardDuty と、 GuardDuty 検出結果が Detective ログ取り込みプロセスに含まれます。 および Detective はクロスサービスユーザーワークフローをサポートします。 GuardDutyは、選択した検出結果から、その検出結果を調査するための厳選された視覚化セットを含む Detective ページにリダイレクトするコンソールからのリンクを提供します。例えば、Amazon GuardDuty と統合 EventBridge して、新しい GuardDuty 検出結果 への応答を自動化するなど GuardDuty、 のベストプラクティスを自動化することもできます。

実装例

AWS SRA コードライブラリは、Amazon GuardDutyの実装例を提供します。これには、暗号化された S3 バケット設定、委任された管理、および AWS 組織内のすべての既存および将来のアカウントの GuardDuty 有効化が含まれます。

AWS Config

AWS Configは、AWS アカウントでサポートされている AWS リソースの設定を評価、監査、評価できるサービスです。AWS Config は、AWS リソース設定を継続的にモニタリングして記録し、記録された設定を目的の設定と照合して自動的に評価します。また、AWS Config を他の サービスと統合して、自動監査およびモニタリングパイプラインの面倒な作業を行うこともできます。例えば、AWS Config は AWS Secrets Manager の個々のシークレットの変更をモニタリングできます。 

AWS Config ルール を使用して、AWS Config リソースの設定を評価できます。AWS Config は、マネージドルール と呼ばれるカスタマイズ可能な事前定義されたルールのライブラリを提供します。または、独自のカスタムルール を記述することもできます。AWS Config ルールは、プロアクティブモード (リソースがデプロイされる前) または検出モード (リソースがデプロイされた後) で実行できます。リソースは、設定変更時、定期的、あるいはその両方で評価できます。

コンフォーマンスパックは、AWS Config ルールと修復アクションのコレクションであり、アカウントとリージョン、または AWS Organizations の組織全体に単一のエンティティとしてデプロイできます。コンフォーマンスパックは、AWS Config マネージドルールまたはカスタムルールと修復アクションのリストを含む YAML テンプレートを作成することによって作成されます。AWS 環境の評価を開始するには、サンプルコンフォーマンスパックテンプレート のいずれかを使用します。 

AWS Config は AWS Security Hub と統合され、AWS Config マネージドルールとカスタムルールの評価の結果を結果として Security Hub に送信します。 

AWS Config ルールは、AWS Systems Manager と組み合わせて使用して、非準拠のリソースを効果的に修復できます。AWS Systems Manager Explorer を使用して、AWS リージョン全体の AWS アカウントで AWS Config ルールのコンプライアンスステータスを収集し、Systems Manager Automation ドキュメント (ランブック) を使用して非準拠の AWS Config ルールを解決します。実装の詳細については、ブログ記事「AWS Systems Manager Automation ランブックによる非準拠の AWS AWS Config ルールの修正」を参照してください。

AWS Config アグリゲータは、AWS Organizations の複数のアカウント、リージョン、および組織にわたって設定およびコンプライアンスデータを収集します。アグリゲータダッシュボードには、集約されたリソースの設定データが表示されます。インベントリおよびコンプライアンスダッシュボードは、AWS アカウント間、AWS リージョン間、または AWS 組織内の AWS リソース設定とコンプライアンスステータスに関する必須かつ最新の情報を提供します。これにより、AWS Config の高度なクエリを記述しなくても、AWS リソースインベントリを視覚化して評価できます。リソース別のコンプライアンスの概要、非準拠リソースを持つ上位 10 のアカウント、タイプ別の実行中および停止中の EC2 インスタンスの比較、ボリュームタイプとサイズ別の EBS ボリュームなど、重要なインサイトを得ることができます。

AWS Control Tower を使用して AWS 組織を管理する場合、一連の AWS Config ルールが検出ガードレールとしてデプロイされます (必須、強く推奨、または選択的に分類されます)。これらのガードレールは、リソースを管理し、AWS 組織内のアカウント全体のコンプライアンスをモニタリングするのに役立ちます。これらの AWS Config ルールは、 の値を持つaws-control-towerタグを自動的に使用しますmanaged-by-control-tower

AWS Config は、保護するリソースを含む AWS 組織および AWS リージョンのメンバーアカウントごとに有効にする必要があります。AWS Configルールを一元管理 (作成、更新、削除など) できます。AWS Config の委任された管理者アカウントから、すべてのアカウントに共通の一連の AWS Config ルールをデプロイし、AWS Config ルールを作成すべきではないアカウントを指定できます。AWS Config 委任管理者アカウントは、すべてのメンバーアカウントのリソース設定とコンプライアンスデータを集約して、単一のビューを提供することもできます。AWS 組織のメンバーアカウントが基盤となる AWS Config ルールを変更できないようにすることで、委任管理者アカウントの APIs を使用してガバナンスを適用します。

設計上の考慮事項
  • AWS Config は、設定とコンプライアンス変更の通知を Amazon にストリーミングします EventBridge。つまり、 のネイティブフィルタリング機能を使用して AWS Config イベント EventBridge をフィルタリングし、特定のタイプの通知を特定のターゲットにルーティングできます。例えば、特定のルールやリソースタイプのコンプライアンス通知を特定の電子メールアドレスに送信したり、設定変更通知を外部 IT サービス管理 (ITSM) または構成管理データベース (CMDB) ツールにルーティングしたりすることができます。詳細については、ブログ記事AWS Configベストプラクティス」を参照してください。 

  • AWS Config プロアクティブルール評価の使用に加えて、リソース設定のコンプライアンスをプロアクティブにチェックする policy-as-code 評価ツールである AWS CloudFormation Guard を使用できます。AWS CloudFormation Guard コマンドラインインターフェイス (CLI) には、ポリシーをコードとして表現するために使用できる宣言型ドメイン固有の言語 (DSL) が用意されています。さらに、AWS CLI コマンドを使用して、 CloudFormation 変更セット、JSON ベースの Terraform 設定ファイル、Kubernetes 設定などの JSON 形式または YAML 形式の構造化データを検証できます。評価は、オーサリングプロセスの一部として AWS CloudFormation Guard CLI を使用してローカルで実行することも、デプロイパイプライン 内で実行することもできます。AWS Cloud Development Kit (AWS CDK) アプリケーションを使用している場合は、cdk-nag を使用してベストプラクティスをプロアクティブにチェックできます。

実装例

AWS SRA コードライブラリは、AWS Config コンフォーマンスパックを AWS 組織内のすべての AWS アカウントとリージョンにデプロイするサンプル実装を提供します。AWS Config Aggregator モジュールは、組織管理アカウント内のメンバーアカウント (Security Tooling) AWS Config に管理を委任し、AWS 組織内のすべての既存アカウントと将来のアカウントの委任された管理者アカウント内で AWS Config Aggregator を設定することで、AWS Config アグリゲータを設定するのに役立ちます。AWS Config Control Tower 管理アカウントモジュールを使用して、組織管理アカウント内で AWS Config を有効にできます。AWS Control Tower では有効になりません。

Amazon Security Lake

Amazon Security Lake は、フルマネージド型のセキュリティデータレイクサービスです。Security Lake を使用して、AWS 環境、Software as a Service (SaaS) プロバイダー、オンプレミス、およびサードパーティーソースのセキュリティデータを自動的に一元化できます。Security Lake は、セキュリティデータに対する分析ツールの使用を簡素化する正規化されたデータソースを構築するため、組織全体のセキュリティ体制をより完全に理解できます。データレイクは、Amazon Simple Storage Service (Amazon S3) バケットに支えられており、データの所有権はお客様が保持します。Security Lake は、AWS 、Amazon VPC CloudTrail、Amazon Route 53、Amazon S3、AWS Lambda、AWS サービスのログを自動的に収集します。

AWS SRA では、Security Lake の委任管理者アカウントとしてログアーカイブアカウントを使用することをお勧めします。委任された管理者アカウントの設定の詳細については、「Security OU – Log Archive account」セクションの「Amazon Security Lake」を参照してください。 Security Lake データにアクセスしたい、またはカスタム抽出、変換、ロード (ETL) 関数を使用して Security Lake バケットに非ネイティブログを書き込む機能を必要とするセキュリティチームは、Security Tooling アカウント内で動作する必要があります。

Security Lake は、さまざまなクラウドプロバイダーからのログ、サードパーティーソリューションからのログ、またはその他のカスタムログを収集できます。Security Tooling アカウントを使用して ETL 関数を実行し、ログをオープンサイバーセキュリティスキーマフレームワーク (OCSF) 形式に変換し、Apache Parquet 形式でファイルを出力することをお勧めします。Security Lake は、Security Tooling アカウントと、Security Lake の S3 バケットにデータを書き込むために AWS Lambda 関数または AWS Glue クローラによってバックアップされたカスタムソースに適切なアクセス許可を持つクロスアカウントロールを作成します。

Security Lake 管理者は、Security Tooling アカウントを使用し、Security Lake がサブスクライバーとして収集するログへのアクセスを要求するセキュリティチームを設定する必要があります。Security Lake は、2 種類のサブスクライバーをサポートしています。

  • データアクセス – サブスクライバーは Security Lake の Amazon S3 オブジェクトに直接アクセスできます。Security Lake はインフラストラクチャとアクセス許可を管理します。Security Tooling アカウントを Security Lake データアクセスサブスクライバーとして設定すると、アカウントは Amazon Simple Queue Service (Amazon SQS) を介して Security Lake バケット内の新しいオブジェクトの通知を受け取り、Security Lake はそれらの新しいオブジェクトにアクセスするためのアクセス許可を作成します。

  • クエリアクセス — サブスクライバーは、Amazon Athena などのサービスを使用して、S3 バケット内の AWS Lake Formation テーブルからソースデータをクエリできます。クロスアカウントアクセスは、AWS Lake Formation を使用してクエリアクセス用に自動的に設定されます。Security Tooling アカウントを Security Lake クエリアクセスサブスクライバーとして設定すると、そのアカウントには Security Lake アカウントのログへの読み取り専用アクセス権が付与されます。このサブスクライバータイプを使用すると、Athena テーブルと AWS Glue テーブルは、Security Lake Log Archive アカウントから AWS Resource Access Manager (AWS RAM) を介して Security Tooling アカウントと共有されます。この機能を有効にするには、クロスアカウントデータ共有設定をバージョン 3 に更新する必要があります。

サブスクライバーの作成の詳細については、Security Lake ドキュメントの「サブスクライバー管理」を参照してください。

カスタムソースを取り込むためのベストプラクティスについては、Security Lake ドキュメントの「カスタムソースからのデータ収集」を参照してください。

Amazon QuickSightAmazon 、および Amazon OpenSearchを使用して、Security Lake に保存するセキュリティデータに対する分析を設定できます。 SageMaker

設計上の考慮事項

アプリケーションチームがビジネス要件を満たすために Security Lake データへのクエリアクセスを必要とする場合、Security Lake 管理者はそのアプリケーションアカウントをサブスクライバーとして設定する必要があります。

Amazon Macie

Amazon Macie は、フルマネージド型のデータセキュリティおよびデータプライバシーサービスであり、機械学習とパターンマッチングを使用して AWS の機密データを検出し、保護します。ワークロードが処理しているデータのタイプと分類を特定して、適切なコントロールが確実に適用されるようにする必要があります。Macie を使用して、機密データの検出とレポートを自動化するには、機密データの自動検出を実行する方法と、機密データ検出ジョブを作成して実行する方法の 2 つの方法があります。機密データの自動検出により、Macie は S3 バケットインベントリを毎日評価し、サンプリング技術を使用してバケットから代表的な S3 オブジェクトを特定して選択します。その後、Macie は選択したオブジェクトを取得して分析し、機密データがないか検査します。機密データ検出ジョブは、より深く、よりターゲットを絞った分析を提供します。このオプションでは、分析する S3 バケット、サンプリングの深さ、S3 オブジェクトのプロパティから派生するカスタム基準など、分析の幅と深さを定義します。Macie がバケットのセキュリティまたはプライバシーに関する潜在的な問題を検出すると、ユーザー用に ポリシーの調査結果を作成します。自動データ検出は、すべての Macie の新規のお客様に対してデフォルトで有効になっており、既存の Macie のお客様はワンクリックで有効にできます。

Macie は、AWS Organizations を通じてすべてのアカウントで有効になっています。委任された管理者アカウント (この場合は Security Tooling アカウント) で適切なアクセス許可を持つプリンシパルは、どのアカウントでも Macie を有効にしたり停止にしたり、メンバーアカウントが所有するバケットに対して機密データ検出ジョブを作成したり、すべてのメンバーアカウントのすべてのポリシー結果を表示したりすることができます。機密データの結果は、機密結果ジョブを作成したアカウントでのみ表示できます。詳細については、Macie のドキュメントの「Amazon Macie で複数アカウントを管理する」を参照してください。

Macie の検出結果は、レビューと分析のために AWS Security Hub に流れます。また、Macie は Amazon と統合 EventBridge して、アラート、セキュリティ情報とイベント管理 (SIEM) システムへのフィード、自動修復などの検出結果への自動応答を容易にします。

設計上の考慮事項
  • S3 オブジェクトが管理する AWS Key Management Service (AWS KMS) キーで暗号化されている場合は、Macie のサービスにリンクされたロールをキーユーザーとしてその KMS キーに追加して、Macie がデータをスキャンできるようにします。

  • Macie は Amazon S3 内のオブジェクトのスキャンに最適化されています。その結果、Amazon S3 に (永続的または一時的に) 配置できる Macie がサポートするオブジェクトタイプ は、機密データをスキャンできます。つまり、Amazon Amazon Relational Database Service (Amazon RDS) や Amazon Aurora データベースの定期的なスナップショットエクスポートエクスポートされた Amazon DynamoDB テーブル、ネイティブアプリケーションやサードパーティーアプリケーションから抽出されたテキストファイルなど、他のソースからのデータは Amazon S3 に移動して Macie によって評価できます。

実装例

AWS SRA コードライブラリは、Amazon Macieの実装例を提供します。これには、メンバーアカウントに管理を委任し、AWS 組織内のすべての既存アカウントと将来のアカウントの委任された管理者アカウント内で Macie を設定することが含まれます。Macie は、AWS KMS のカスタマーマネージドキーで暗号化された中央 S3 バケットに結果を送信するようにも設定されています。

AWS IAM Access Analyzer

AWS クラウドの導入ジャーニーを加速し、イノベーションを続けるには、きめ細かなアクセス (アクセス許可) を厳しく制御し、アクセスの拡散を抑え、アクセス許可を効果的に使用することが重要です。過剰で未使用のアクセスはセキュリティ上の課題となり、企業は最小特権の原則を適用するのを難しくします。この原則は、セキュリティ要件と運用要件およびアプリケーション開発要件のバランスをとるために、IAM アクセス許可を継続的に適切なサイズに設定することを含む、セキュリティアーキテクチャの重要な柱です。この取り組みには、中央セキュリティチームや Cloud Center of Excellence (CCoE) チーム、分散型開発チームなど、複数の利害関係者のペルソナが含まれます。

AWS IAM Access Analyzer には、エンタープライズセキュリティ基準を満たすために未使用のアクセスを削除することで、きめ細かなアクセス許可を効率的に設定し、意図したアクセス許可を検証し、アクセス許可を絞り込むためのツールが用意されています。ダッシュボードと AWS Security Hub を通じて、外部および未使用のアクセスの検出結果を可視化できます。 https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-securityhub-integration.htmlさらに、イベントベースのカスタム通知および修復ワークフローのために Amazon EventBridge をサポートします。

IAM Access Analyzer の外部検出結果機能は、外部エンティティと共有されている Amazon S3 バケットや IAM ロールなど、AWS 組織およびアカウント内のリソースを識別するのに役立ちます。選択した AWS 組織またはアカウントは、信頼ゾーン と呼ばれます。アナライザーは自動推論を使用して、信頼ゾーン内のサポートされているすべてのリソースを分析し、信頼ゾーン外からリソースにアクセスできるプリンシパルの結果を生成します。これらの検出結果は、外部エンティティと共有されているリソースを特定し、リソース許可をデプロイする前に、ポリシーがリソースへのパブリックアクセスとクロスアカウントアクセスにどのように影響するかをプレビューするのに役立ちます。

IAM Access Analyzer の検出結果は、次のような AWS 組織およびアカウントで付与された未使用のアクセスを特定するのにも役立ちます。

  • 未使用の IAM ロール – 指定された使用期間内にアクセスアクティビティがないロール。

  • 未使用の IAM ユーザー、認証情報、アクセスキー – IAM ユーザーに属する認証情報で、AWS のサービスとリソースへのアクセスに使用されます。

  • 未使用の IAM ポリシーとアクセス許可 – 指定された使用ウィンドウ内でロールによって使用されなかったサービスレベルおよびアクションレベルのアクセス許可。IAM Access Analyzer は、ロールにアタッチされたアイデンティティベースのポリシーを使用して、それらのロールがアクセスできるサービスとアクションを決定します。アナライザーは、すべてのサービスレベルのアクセス許可について、未使用のアクセス許可のレビューを提供します。

IAM Access Analyzer から生成された検出結果を使用して、組織のポリシーとセキュリティ標準に基づいて、意図しないアクセスや未使用のアクセスを可視化し、修正できます。修復後、これらの検出結果は次にアナライザーが実行されるときに解決済みとしてマークされます。検出結果が意図的なものである場合は、IAM Access Analyzer にアーカイブ済みとしてマークし、セキュリティリスクが大きい他の検出結果を優先できます。さらに、アーカイブルールを設定して、特定の検出結果を自動的にアーカイブできます。例えば、定期的にアクセスを許可する特定の Amazon S3 バケットに関する検出結果を自動的にアーカイブするためのアーカイブルールを作成できます。

ビルダーは、IAM Access Analyzer を使用して、開発およびデプロイ (CI/CD) プロセスの早い段階で自動化された IAM ポリシーチェックを実行し、企業のセキュリティ標準に準拠できます。IAM Access Analyzer のカスタムポリシーチェックとポリシーレビューを AWS と統合 CloudFormation して、開発チームの CI/CD パイプラインの一部としてポリシーレビューを自動化できます。これには、以下が含まれます。

  • IAM ポリシーの検証 — IAM Access Analyzer は、IAM ポリシーの文法と AWS のベストプラクティス に照らしてポリシーを検証します。 https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.htmlセキュリティ警告、エラー、一般的な警告、ポリシーの提案など、ポリシー検証チェックの結果を表示できます。現在、100 を超えるポリシー検証チェックが利用可能で、AWS コマンドラインインターフェイス (AWS CLI) と APIs を使用して自動化できます。

  • IAM カスタムポリシーチェック — IAM Access Analyzer カスタムポリシーチェックは、指定されたセキュリティ標準に照らしてポリシーを検証します。カスタムポリシーチェックでは、自動推論を使用して、企業のセキュリティ基準を満たすためのより高いレベルの保証を提供します。カスタムポリシーチェックのタイプは次のとおりです。

    • 参照ポリシー と照合する: ポリシーを編集するときに、ポリシーの既存のバージョンなどの参照ポリシーと比較して、更新によって新しいアクセスが付与されるかどうかを確認できます。CheckNoNewAccess API は 2 つのポリシー (更新されたポリシーと参照ポリシー) を比較して、更新されたポリシーが参照ポリシーに新しいアクセスを導入するかどうかを判断し、合格または不合格の応答を返します。

    • IAM アクションのリストと照合する: CheckAccessNotGranted API を使用して、ポリシーがセキュリティ標準で定義されている重要なアクションのリストへのアクセスを許可しないようにすることができます。この API は、ポリシーと最大 100 個の IAM アクションのリストを取得して、ポリシーが少なくとも 1 つのアクションを許可しているかどうかを確認し、合格または不合格のレスポンスを返します。

セキュリティチームやその他の IAM ポリシーの作成者は、IAM Access Analyzer を使用して、IAM ポリシーの文法とセキュリティ標準に準拠したポリシーを作成できます。適切なサイズのポリシーを手動で作成すると、エラーが発生しやすく、時間がかかります。IAM Access Analyzer ポリシー生成機能は、プリンシパルのアクセスアクティビティに基づく IAM ポリシーの作成に役立ちます。IAM Access Analyzer は、サポートされているサービスの AWS CloudTrail ログを確認し、指定された日付範囲でプリンシパルによって使用されたアクセス許可を含むポリシーテンプレートを生成します。その後、このテンプレートを使用して、必要なアクセス許可のみを付与するきめ細かなアクセス許可を持つポリシーを作成できます。

  • アクセスアクティビティに基づいてポリシーを生成するには、アカウントで CloudTrail 証跡が有効になっている必要があります。

  • IAM Access Analyzer は、生成されたポリシーで Amazon S3 データイベントなどのデータイベントのアクションレベルのアクティビティを識別しません。

  • iam:PassRole アクションは によって追跡されず CloudTrail 、生成されたポリシーには含まれません。

Access Analyzer は、AWS Organizations の委任管理者機能を通じて Security Tooling アカウントにデプロイされます。委任された管理者は、AWS 組織を信頼ゾーンとして持つアナライザーを作成および管理するためのアクセス許可を持っています。

設計上の考慮事項
  • アカウントスコープの結果 (アカウントが信頼境界として機能する場所) を取得するには、各メンバーアカウントにアカウントスコープのアナライザーを作成します。これは、アカウントパイプラインの一部として実行できます。アカウントスコープの結果は、メンバーアカウントレベルで Security Hub に流れ込みます。そこから、Security Hub の委任管理者アカウント (Security Tooling) に流れます。

実装例

AWS Firewall Manager

AWS Firewall Manager は、複数のアカウントとリソースにわたる AWS WAF、AWS Shield Advanced、Amazon VPC セキュリティグループ、AWS Network Firewall、Route 53 Resolver DNS Firewall の管理およびメンテナンスタスクを簡素化することで、ネットワークを保護するのに役立ちます。Firewall Manager では、AWS WAF ファイアウォールルール、Shield Advanced 保護、Amazon VPC セキュリティグループ、AWS Network Firewall ファイアウォール、および DNS Firewall ルールグループの関連付けを 1 回だけセットアップします。ルールと保護が既存のアカウントとリソースに (追加する新しいリソースにも) 自動的に適用されます。

Firewall Manager は、少数の特定のアカウントやリソースではなく AWS 組織全体を保護する場合や、保護する新しいリソースを頻繁に追加する場合に特に便利です。Firewall Manager は、セキュリティポリシーを使用して、デプロイする必要がある関連するルール、保護、アクション、および含めるか除外するアカウントとリソース (タグで示される) を含む、一連の設定を定義できます。細分化された柔軟な設定を作成しながら、多数のアカウントと VPC に制御をスケールアウトさせることが可能です。これらのポリシーは、新しいアカウントとリソースが作成された場合でも、設定したルールを自動的かつ一貫して適用します。Firewall Manager は AWS Organizations を通じてすべてのアカウントで有効になり、設定と管理は Firewall Manager の委任された管理者アカウント (この場合は Security Tooling アカウント) の適切なセキュリティチームによって実行されます。 

保護するリソースを含む AWS リージョンごとに AWS Config を有効にする必要があります。すべてのリソースに対して AWS Config を有効にしない場合は、 を使用する Firewall Manager ポリシーのタイプに関連付けられているリソースに対して有効にする必要があります。AWS Security Hub と Firewall Manager の両方を使用すると、Firewall Manager は自動的に結果を Security Hub に送信します。Firewall Manager は、コンプライアンス違反のリソースと検出した攻撃に対しての結果を作成し、Security Hub に送信します。AWS WAF の Firewall Manager ポリシーを設定すると、対象範囲内のすべてのアカウントのウェブアクセスコントロールリスト (ウェブ ACLs) のログ記録を一元的に有効にし、ログを 1 つのアカウントで一元管理できます。 

設計上の考慮事項
  • AWS 組織内の個々のメンバーアカウントのアカウントマネージャーは、特定のニーズに応じて Firewall Manager マネージドサービスで追加のコントロール (AWS WAF ルールや Amazon VPC セキュリティグループなど) を設定できます。

実装例

AWS SRA コードライブラリは、AWS Firewall Manager のサンプル実装を提供します。委任管理 (Security Tooling) のデモ、最大許容セキュリティグループのデプロイ、セキュリティグループポリシーの設定、複数の WAF ポリシーの設定を行います。

Amazon EventBridge

Amazon EventBridge は、アプリケーションをさまざまなソースのデータに簡単に接続できるようにするサーバーレスイベントバスサービスです。セキュリティオートメーションによく使用されます。お客様は、データの送信先を判断するためのルーティングルールを設定して、すべてのデータソースにリアルタイムで反応するアプリケーションアーキテクチャを構築できます。各アカウントでデフォルトのイベントバスを使用するだけでなく、カスタムアプリケーションからイベントを受信するためにカスタムイベントバスを作成することができます。Security Tooling アカウントで、AWS 組織内の他のアカウントからセキュリティ固有のイベントを受信できるイベントバスを作成できます。例えば、AWS Config ルール GuardDutyと Security Hub を にリンクすることで EventBridge、セキュリティデータのルーティング、アラートの発行、問題解決のためのアクションの管理のための柔軟で自動化されたパイプラインを作成できます。 

設計上の考慮事項
  • EventBridge は、さまざまなターゲットにイベントをルーティングできます。セキュリティアクションを自動化するための重要なパターンの 1 つは、特定のイベントを個々の AWS Lambda 応答者に接続して、適切なアクションを実行することです。例えば、特定の状況では、 EventBridge を使用して、バケットポリシーを修正し、パブリックアクセス許可を削除する Lambda レスポンダーにパブリック S3 バケットの検出結果をルーティングできます。これらの応答者は、調査プレイブックとランブックに統合して、応答アクティビティを調整できます。

  • セキュリティ運用チームが成功するためのベストプラクティスは、セキュリティイベントと結果事項のフローを、チケッティングシステム、バグ/イシューシステム、またはその他のセキュリティ情報およびイベント管理 (SIEM) システムなどの通知およびワークフローシステムに統合することです。これにより、電子メールおよび静的レポートからワークフローを取り除き、イベントや結果をルーティング、エスカレーション、管理することが可能になります。の柔軟なルーティング機能は、この統合の強力なイネーブラー EventBridge です。

Amazon Detective

Amazon Detective は、セキュリティアナリストのセキュリティ検出結果または疑わしいアクティビティの根本原因を簡単に分析、調査、および迅速に特定できるようにすることで、応答性の高いセキュリティコントロール戦略をサポートします。Detective は、ログイン試行、API コール、ネットワークトラフィックなどの時間ベースのイベントを AWS CloudTrail ログと Amazon VPC フローログから自動的に抽出します。Detective を使用して、最大 1 年間の履歴イベントデータにアクセスできます。Detective は、 CloudTrail ログと Amazon VPC フローログの独立したストリームを使用して、これらのイベントを使用します。Detective は、機械学習とビジュアライゼーションにより、リソースの動作とリソース間のインタラクションを時系列で統合したインタラクティブなビューを作成します。これは ビヘイビアグラフ と呼ばれます。ビヘイビアグラフを詳しく確認して、失敗したログオン試行や疑わしい API コールなどのさまざまなアクションを調べることができます。

Detective は Amazon Security Lake と統合され、セキュリティアナリストが Security Lake に保存されているログをクエリおよび取得できるようにします。この統合を使用して、Detective でセキュリティ調査を実行している間に Security Lake に保存されている AWS CloudTrail ログと Amazon VPC フローログから追加情報を取得できます。

Detective は、GuardDuty Runtime Monitoring によって検出された脅威など GuardDuty、Amazon によって検出された検出結果も取り込みます。アカウントで Detective を有効にすると、そのアカウントがビヘイビアグラフの管理者アカウントになります。Detective を有効にする前に、アカウントが少なくとも 48 時間 に登録 GuardDutyされていることを確認してください。この要件を満たさない場合、Detective を有効にすることはできません。

Detective は、単一のセキュリティ侵害イベントに関連する複数の検出結果を検出結果グループ に自動的にグループ化します。脅威アクターは通常、時間やリソースにまたがる複数のセキュリティ検出結果につながる一連のアクションを実行します。したがって、検出結果グループは、複数のエンティティと検出結果を含む調査の開始点となる必要があります。また、Detective は、検出結果グループを自動的に分析し、セキュリティ調査の迅速化に役立つインサイトを自然言語で提供する生成 AI を使用して、検出結果グループの概要も提供します。

Detective は AWS Organizations と統合されています。組織管理アカウントは、メンバーアカウントを Detective 管理者アカウントとして委任します。AWS SRA では、これは Security Tooling アカウントです。Detective 管理者アカウントは、組織内のすべての現在のメンバーアカウントを検出メンバーアカウントとして自動的に有効にし、AWS 組織に追加される新しいメンバーアカウントを追加することもできます。Detective 管理者アカウントは、現在 AWS 組織に存在しないが、同じリージョン内にあるメンバーアカウントを招待して、プライマリアカウントの動作グラフにデータを提供することもできます。メンバーアカウントが招待を承諾して有効になると、Detective は、メンバーアカウントのデータを取り込み、その動作グラフに抽出し始めます。

設計上の考慮事項
  • GuardDuty および AWS Security Hub コンソールから Detective の検出結果プロファイルに移動できます。これらのリンクは、調査プロセスを合理化するのに役立ちます。アカウントは、Detective とピボット元のサービス (GuardDuty または Security Hub) の両方の管理アカウントである必要があります。サービスのプライマリアカウントが同じであれば、統合リンクはシームレスに機能します。

AWS Audit Manager

AWS Audit Manager は、AWS の使用状況を継続的に監査し、監査の管理方法と規制や業界標準への準拠を簡素化するのに役立ちます。これにより、証拠の手動による収集、レビュー、管理から、証拠の収集を自動化するソリューションへの移行、監査証拠のソースを追跡する簡単な方法の提供、チームワークのコラボレーションの有効化、証拠のセキュリティと整合性の管理に役立ちます。監査の時期において、Audit Manager は、コントロールのステークホルダーのレビューを管理するのに役立ちます。

Audit Manager を使用すると、Center for Internet Security (CIS) ベンチマーク、CIS AWS Foundations Benchmark、System and Organization Controls 2 (SOC 2)、Payment Card Industry Data Security Standard (PCI DSS) などの構築済みのフレームワークに対して監査を行うことができます。また、内部監査の特定の要件に基づいて、標準コントロールまたはカスタムコントロールを使用して独自のフレームワークを作成することもできます。

Audit Manager は 4 種類の証拠を収集します。自動化される証拠には、AWS Config と AWS Security Hub からのコンプライアンスチェックの証拠、AWS からの管理イベントの証拠 CloudTrail、AWS service-to-service API コールの設定の証拠の 3 種類があります。自動化できない証拠については、Audit Manager では手動証拠をアップロードできます。

注記

Audit Manager は、特定のコンプライアンス標準および規制への準拠の検証に関連する証拠の収集を支援します。ただし、コンプライアンスは評価されません。したがって、Audit Manager を通じて収集された証拠には、監査に必要な運用プロセスの詳細が含まれていない場合があります。Audit Manager は、法律顧問やコンプライアンスの専門家に代わるものではありません。評価対象のコンプライアンスフレームワークの認定を受けているサードパーティーの評価機関のサービスをエンゲージすることをお勧めします (複数可)。

Audit Manager の評価は、AWS 組織内の複数のアカウントで実行できます。Audit Manager は、AWS Organizations の委任された管理者アカウントに証拠を収集して統合します。この監査機能は、主にコンプライアンスチームと内部監査チームによって使用され、AWS アカウントへの読み取りアクセスのみが必要です。

設計上の考慮事項
  • Audit Manager は、Security Hub や AWS Config などの他の AWS セキュリティサービスを補完して、リスク管理フレームワークの実装を支援します。Audit Manager は独立したリスク保証機能を提供しますが、Security Hub はリスクの監視に役立ち、AWS Config コンフォーマンスパックはリスクの管理に役立ちます。内部監査機関 (IIA) によって開発された 3 行モデルに精通している監査プロフェッショナルは、AWS のサービスのこの組み合わせが 3 つの防衛線をカバーするのに役立つことに注意してください。詳細については、AWS クラウド運用と移行ブログの 2 部構成のブログシリーズを参照してください。

  • Audit Manager が Security Hub の証拠を収集するには、両方のサービスの委任管理者アカウントが同じ AWS アカウントである必要があります。このため、AWS SRA では、Security Tooling アカウントが Audit Manager の委任管理者になります。

AWS Artifact

AWS Artifact は Security Tooling アカウント内でホストされ、コンプライアンスアーティファクト管理機能を AWS 組織管理アカウントから分離します。絶対に必要な場合を除き、デプロイに AWS 組織管理アカウントを使用しないことをお勧めします。代わりに、メンバーアカウントにデプロイを渡します。監査アーティファクト管理はメンバーアカウントから実行でき、関数はセキュリティおよびコンプライアンスチームと密接に連携するため、Security Tooling アカウントは AWS Artifact の管理者アカウントとして指定されます。AWS Artifact レポートを使用して、AWS ISO 認定、Payment Card Industry (PCI)、System and Organization Controls (SOC) レポートなどの AWS セキュリティおよびコンプライアンスドキュメントをダウンロードできます。

AWS Artifact は委任管理機能をサポートしていません。代わりに、この機能を監査チームとコンプライアンスチームに関連する Security Tooling アカウントの IAM ロールのみに制限して、必要に応じてこれらのレポートをダウンロード、レビュー、外部監査人に提供できます。さらに、特定の IAM ロールが IAM ポリシーを通じて特定の AWS Artifact レポートのみにアクセスできるように制限することもできます。IAM ポリシーの例については、AWS Artifact ドキュメント を参照してください。

設計上の考慮事項
  • 監査チームとコンプライアンスチーム専用の AWS アカウントを持つことを選択した場合、セキュリティツールアカウントとは別のセキュリティ監査アカウントで AWS Artifact をホストできます。AWS Artifact レポートは、組織が文書化されたプロセスに従っているか、特定の要件を満たしていることを示す証拠を提供します。監査アーティファクトは、システム開発ライフサイクルを通じて収集およびアーカイブされ、内部または外部の監査および評価の証拠として使用できます。

AWS KMS

AWS Key Management Service (AWS KMS) を使用すると、暗号化キーの作成と管理を容易にし、AWS のサービスとアプリケーション内での幅広い範囲に渡ってそれらの使用を管理できます。AWS KMS は、ハードウェアセキュリティモジュールを使用して暗号化キーを保護する、安全で回復力のあるサービスです。キーのストレージ、ローテーション、アクセス制御など、キーマテリアルの業界標準のライフサイクルプロセスに従います。AWS KMS は、暗号化キーと署名キーを使用してデータを保護するのに役立ち、AWS Encryption SDK によるサーバー側の暗号化とクライアント側の暗号化の両方に使用できます。保護と柔軟性のために、AWS KMS は、カスタマーマネージドキー、AWS マネージドキー、AWS 所有キーの 3 種類のキーをサポートしています。カスタマーマネージドキーは、ユーザーが作成、所有、管理する AWS アカウントの AWS KMS キーです。AWS マネージドキーは、AWS KMS と統合された AWS サービスによってユーザーに代わって作成、管理、使用される アカウントの AWS KMS キーです。AWS 所有キーは、AWS サービスが複数の AWS アカウントで使用するために所有および管理する AWS KMS キーのコレクションです。KMS キーの使用の詳細については、AWS KMS ドキュメントおよび AWS KMS 暗号化の詳細を参照してください

デプロイオプションの 1 つは、KMS キー管理の責任を 1 つのアカウントに一元化し、キーポリシーと IAM ポリシーを組み合わせてアプリケーションリソース別にアプリケーションアカウントのキーを使用する機能を委任することです。このアプローチは安全かつ簡単に管理できますが、AWS KMS スロットリングの制限、アカウントサービスの制限、セキュリティチームが運用キー管理タスクに悩まされているため、ハードルが発生する可能性があります。もう 1 つのデプロイオプションは、AWS KMS を複数のアカウントに配置することを許可する分散モデルを用意し、特定のアカウントのインフラストラクチャとワークロードを担当するユーザーに独自のキーの管理を許可することです。このモデルにより、ワークロードチームは暗号化キーの使用に対する制御、柔軟性、俊敏性が向上します。また、API の制限を回避し、影響範囲を 1 つの AWS アカウントのみに制限し、レポート、監査、その他のコンプライアンス関連のタスクを簡素化することもできます。分散モデルでは、分散キーが同じ方法で管理され、確立されたベストプラクティスとポリシーに従って KMS キーの使用が監査されるように、ガードレールをデプロイして適用することが重要です。詳細については、ホワイトペーパーAWS Key Management Service のベストプラクティス」を参照してください。AWS SRA では、KMS キーが使用されるアカウント内にローカルに存在する分散キー管理モデルを推奨しています。すべての暗号化関数に対して、1 つのアカウントで 1 つのキーを使用しないことをお勧めします。キーは、関数とデータ保護の要件に基づいて作成でき、最小特権の原則を適用できます。場合によっては、暗号化アクセス許可は復号アクセス許可とは別に保持され、管理者はライフサイクル関数を管理しますが、管理するキーを使用してデータを暗号化または復号化することはできません。 

Security Tooling アカウントでは、AWS KMS は、AWS 組織が管理する AWS CloudTrail 組織の証跡などの一元化されたセキュリティサービスの暗号化を管理するために使用されます。

AWS Private CA

AWS Private Certificate Authority (AWS Private CA) は、EC2 インスタンス、コンテナ、IoT デバイス、オンプレミスリソースのプライベートエンドエンティティ TLS 証明書のライフサイクルを安全に管理するためのマネージドプライベート CA サービスです。これにより、実行中のアプリケーションへの暗号化された TLS 通信が可能になります。を使用すると AWS Private CA、独自の CA 階層 (下位 CA を介してルート CAs、エンドエンティティ証明書) を作成し、それを使用して証明書を発行して、内部ユーザー、コンピュータ、アプリケーション、サービス、サーバー、その他のデバイスを認証し、コンピュータコードに署名できます。プライベート CA によって発行された証明書は、インターネットではなく、AWS 組織内でのみ信頼されます。

パブリックキーインフラストラクチャ (PKI) またはセキュリティチームが、すべての PKI インフラストラクチャの管理を担当できます。これには、プライベート CA の管理と作成が含まれます。ただし、ワークロードチームが証明書の要件をセルフサービスできるようにするプロビジョニングが必要です。AWS SRA は、ルート CA が Security Tooling アカウント内でホストされている集中型 CA 階層を示しています。これにより、ルート CA は PKI 全体の基盤となるため、セキュリティチームは厳格なセキュリティコントロールを適用できます。ただし、プライベート CA からのプライベート証明書の作成は、AWS Resource Access Manager (AWS RAM) を使用して CA をアプリケーションアカウントと共有することで、アプリケーション開発チームに委任されます。AWS RAM は、クロスアカウント共有に必要なアクセス許可を管理します。これにより、すべてのアカウントでプライベート CA が不要になり、よりコスト効率の高いデプロイ方法が提供されます。ワークフローと実装の詳細については、ブログ記事「AWS RAM を使用して AWS Private CA クロスアカウント を共有する方法」を参照してください。

注記

ACM は、AWS サービスで使用するパブリック TLS 証明書のプロビジョニング、管理、デプロイにも役立ちます。この機能をサポートするには、ACM がパブリック証明書を使用する AWS アカウントに存在する必要があります。これは、このガイドの「アプリケーションアカウント」セクションで後ほど説明します。

設計上の考慮事項
  • では AWS Private CA、最大 5 つのレベルの認証機関の階層を作成できます。また、それぞれ独自のルートを持つ複数の階層を作成することもできます。 AWS Private CA 階層は組織の PKI 設計に従う必要があります。ただし、CA 階層を増やすと、証明書パス内の証明書の数が増え、エンドエンティティ証明書の検証時間が長くなることに注意してください。明確に定義された CA 階層には、各 CA に適したきめ細かなセキュリティコントロール、異なるアプリケーションへの下位 CA の委任などの利点があり、管理タスクの分割、取り消し可能な信頼が制限された CA の使用、異なる有効期間を定義する機能、パス制限を適用する機能につながります。理想的には、ルート CA と下位 CAs は別々の AWS アカウントにあります。を使用して CA 階層を計画する方法の詳細については AWS Private CA、 AWS Private CA ドキュメントとブログ記事「How to secure an enterprise scale AWS Private CA hierarchy for Automotive and manufacturing 」を参照してください。

  • AWS Private CA は既存の CA 階層と統合できます。これにより、ACM の自動化およびネイティブ AWS 統合機能を、現在使用している既存の信頼のルートと組み合わせて使用できます。オンプレミスの親 CA AWS Private CA によってバックアップされた下位 CA を に作成できます。実装の詳細については、 AWS Private CA ドキュメントの「外部親 CA によって署名された下位 CA 証明書のインストール」を参照してください。

Amazon Inspector

Amazon Inspector は、Amazon EC2 インスタンス、Amazon Container Registry (Amazon ECR) のコンテナイメージ、および AWS Lambda 関数を自動的に検出してスキャンする自動脆弱性管理サービスで、既知のソフトウェアの脆弱性や意図しないネットワークへの露出を検出してスキャンします。

Amazon Inspector は、リソースに変更を加えるたびにリソースを自動的にスキャンすることで、リソースのライフサイクル全体を通じて環境を継続的に評価します。リソースの再スキャンを開始するイベントには、EC2 インスタンスへの新しいパッケージのインストール、パッチのインストール、リソースに影響する新しい一般的な脆弱性と露出 (CVE) レポートの公開が含まれます。Amazon Inspector はEC2 インスタンスのオペレーティングシステムの Center of Internet Security (CIS) Benchmark 評価をサポートしています。

Amazon Inspector は、コンテナイメージ評価 TeamCity のために Jenkins や などのデベロッパーツールと統合されます。継続的インテグレーションおよび継続的デリバリー (CI/CD) ツール内のソフトウェアの脆弱性についてコンテナイメージを評価し、ソフトウェア開発ライフサイクルの以前の時点にセキュリティをプッシュできます。評価結果は CI/CD ツールのダッシュボードで利用できるため、ビルドのブロックやコンテナレジストリへのイメージプッシュなどの重大なセキュリティ問題に応じて、自動アクションを実行できます。アクティブな AWS アカウントがある場合は、CI/CD ツールマーケットプレイスから Amazon Inspector プラグインをインストールし、Amazon Inspector サービスをアクティブ化することなく、ビルドパイプラインに Amazon Inspector スキャンを追加できます。この機能は、AWS、オンプレミス、ハイブリッドクラウドなど、任意の場所でホストされる CI/CD ツールで動作するため、すべての開発パイプラインで 1 つのソリューションを一貫して使用できます。Amazon Inspector を有効にすると、すべての EC2 インスタンス、Amazon ECR および CI/CD ツールのコンテナイメージ、AWS Lambda 関数が大規模に自動的に検出され、既知の脆弱性がないか継続的にモニタリングされます。

Amazon Inspector のネットワーク到達可能性の検出結果は、インターネットゲートウェイ、VPC ピアリング接続、仮想ゲートウェイ経由の仮想プライベートネットワーク (VPN) などの VPC エッジとの間の EC2 インスタンスのアクセシビリティを評価します。 VPNs これらのルールは、AWS ネットワークのモニタリングを自動化し、管理ミスのセキュリティグループ、アクセスコントロールリスト (ACL)、インターネットゲートウェイなどを通じて EC2 インスタンスへのネットワークアクセスが誤って設定される可能性のある場所を特定するのに役立ちます。 ACLs さらなる詳細については、Amazon Inspector documentation を参照してください。

Amazon Inspector が脆弱性またはオープンネットワークパスを特定すると、調査できる検出結果が生成されます。検出結果には、リスクスコア、影響を受けるリソース、修復の推奨事項など、脆弱性に関する包括的な詳細が含まれます。リスクスコアは、環境に合わせて特別に調整され、 up-to-date CVE 情報をネットワークアクセシビリティやエクスプロイト可能性情報などの時間的および環境的要因と関連付けて、コンテキストに応じた検出結果を提供することによって計算されます。

脆弱性をスキャンするには、AWS Systems Manager エージェント (SSM エージェント) を使用して AWS Systems Manager で EC2 インスタンスを管理する必要があります。Amazon ECR または Lambda 関数の EC2 インスタンスのネットワーク到達可能性やコンテナイメージの脆弱性スキャンにエージェントは必要ありません。

Amazon Inspector は AWS Organizations と統合されており、委任された管理をサポートしています。AWS SRA では、Security Tooling アカウントが Amazon Inspector の委任管理者アカウントになります。Amazon Inspector の委任された管理者アカウントは、AWS 組織のメンバーの検出結果データと特定の設定を管理できます。これには、すべてのメンバーアカウントの集約された結果の詳細の表示、メンバーアカウントのスキャンの有効化または無効化、AWS 組織内のスキャンされたリソースの確認が含まれます。

設計上の考慮事項
  • 両方のサービスが有効になっている場合、Amazon Inspector は AWS Security Hub と自動的に統合されます。この統合を使用して、すべての検出結果を Amazon Inspector からSecurity Hub に送信できます。これにより、Security Hub には、これらの検出結果をセキュリティ体制の分析に含めることができます。

  • Amazon Inspector は、検出結果、リソースカバレッジの変更、個々のリソースの初期スキャンのイベントを Amazon に自動的にエクスポートし EventBridge、オプションで Amazon Simple Storage Service (Amazon S3) バケットにエクスポートします。アクティブな検出結果を S3 バケットにエクスポートするには、Amazon Inspector が検出結果を暗号化するために使用できる AWS KMS キーと、Amazon Inspector がオブジェクトをアップロードできるようにするアクセス許可を持つ S3 バケットが必要です。 EventBridge 統合により、既存のセキュリティおよびコンプライアンスワークフローの一部として、ほぼリアルタイムで検出結果をモニタリングおよび処理できます。 EventBridge イベントは、元のメンバーアカウントに加えてAmazon Inspector の委任された管理者アカウントに発行されます。

実装例

AWS SRA コードライブラリは、Amazon Inspector の実装例を提供します。これは、委任管理 (Security Tooling) を示し、AWS 組織内のすべての既存アカウントと将来のアカウントに Amazon Inspector を設定します。

すべての AWS アカウントに共通のセキュリティサービスをデプロイする

このリファレンスの前半の「AWS 組織全体にセキュリティサービスを適用する」セクションでは、AWS アカウントを保護するセキュリティサービスが強調表示され、これらのサービスの多くは AWS Organizations 内で設定および管理できることに注意しました。これらのサービスの一部はすべてのアカウントにデプロイする必要があり、AWS SRA に表示されます。これにより、一貫したガードレールのセットが可能になり、AWS 組織全体で一元的なモニタリング、管理、ガバナンスが可能になります。 

Security Hub、 GuardDuty、AWS ConfigAccess Analyzer、および AWS CloudTrail 組織の証跡は、すべてのアカウントに表示されます。最初の 3 つは、 管理アカウント、信頼されたアクセス、および委任された管理者セクションで前述した委任された管理者機能をサポートしています。 CloudTrail は現在、別の集約メカニズムを使用しています。

AWS SRA GitHubコードリポジトリは、 GuardDutyAWS 組織管理アカウントを含むすべてのアカウントで Security Hub、、AWS Config、Firewall Manager、および CloudTrail 組織の証跡を有効にするサンプル実装を提供します。

設計上の考慮事項
  • 特定のアカウント設定では、追加のセキュリティサービスが必要になる場合があります。例えば、S3 バケットを管理するアカウント (アプリケーションアカウントとログアーカイブアカウント) には Amazon Macie も含め、これらの一般的なセキュリティサービスで CloudTrail S3 データイベントのログ記録を有効にすることを検討する必要があります。(Macie は、一元化された設定とモニタリングによる委任管理をサポートします。) もう 1 つの例は Amazon Inspector です。これは、EC2 インスタンスまたは Amazon ECR イメージをホストするアカウントにのみ適用されます。

  • このセクションで前述したサービスに加えて、AWS SRA には、AWS Organizations の統合と委任された管理者機能をサポートする Amazon Detective と AWS Audit Manager という 2 つのセキュリティに焦点を当てたサービスが含まれています。ただし、これらのサービスは以下のシナリオで最適に使用されることがわかっているため、アカウントベースライン作成の推奨サービスには含まれていません。

    • これらの機能を実行する専用のチームまたはリソースグループがあります。Detective はセキュリティアナリストチームが最適に活用されており、Audit Manager は内部監査チームやコンプライアンスチームに役立ちます。

    • プロジェクトの開始時は、 GuardDuty や Security Hub などのツールのコアセットに重点を置き、追加の機能を提供する サービスを使用してこれらを構築します。