Amazon Inspector と AWS Security Hub を使用してクロスアカウントワークロードのセキュリティスキャンを自動化する - AWS 規範ガイダンス

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

Amazon Inspector と AWS Security Hub を使用してクロスアカウントワークロードのセキュリティスキャンを自動化する

作成者: Ramya Pulipaka (AWS) と Mikesh Khanal (AWS)

環境:本稼働

テクノロジー: セキュリティ、アイデンティティ、コンプライアンス、管理とガバナンス

AWS サービス: Amazon InspectorAmazon、SNSAWSLambda、AWSSecurity Hub、Amazon CloudWatch

[概要]

このパターンでは、Amazon Web Services (AWS) クラウド上のクロスアカウントワークロードの脆弱性を自動的にスキャンする方法について説明します。

このパターンは、タグ別にグループ化された Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのホストベースのスキャン、またはネットワークベースの Amazon Inspector スキャンのスケジュールを作成するのに役立ちます。AWS CloudFormation スタックは、必要なすべてのAWSリソースとサービスをAWSアカウントにデプロイします。

Amazon Inspector の検出結果は AWS Security Hub にエクスポートされ、アカウント、AWSリージョン、仮想プライベートクラウド (VPCs)、EC2インスタンス全体の脆弱性に関するインサイトを提供します。これらの検出結果を E メールで受信することも、HTTPエンドポイントを使用して検出結果をチケット発行ツール、セキュリティ情報とイベント管理 (SNS) ソフトウェア、またはその他のサードパーティーのセキュリティソリューションに送信する Amazon Simple Notification Service (Amazon SIEM) トピックを作成することもできます。

前提条件と制限

前提条件

  • Amazon から E メール通知を受信するための既存の E メールアドレスSNS。 

  • チケットツール、SIEMソフトウェア、またはその他のサードパーティーのセキュリティソリューションで使用される既存のHTTPエンドポイント。

  • 中央監査AWSアカウントを含む、クロスアカウントワークロードをホストするアクティブなアカウント。 

  • Security Hub、有効化および設定済み。このパターンは Security Hub がなくても使用できますが、生成される分析情報を考慮して Security Hub の使用を推薦します。詳細については、Security Hub ドキュメントの「Security Hub のセットアップAWS」を参照してください。

  • Amazon Inspector エージェントは、スキャンする各EC2インスタンスにインストールする必要があります。AWS Systems Manager Run Command を使用して、Amazon Inspector エージェントを複数のEC2インスタンスにインストールできます。 

スキル

  • でのスタックセットの self-managedおよび アクセスservice-managed許可の使用経験AWS CloudFormation。アクセスself-managed許可を使用してスタックインスタンスを特定のリージョンの特定のアカウントにデプロイする場合は、必要な AWS Identity and Access Management (IAM) ロールを作成する必要があります。アクセスservice-managed許可を使用して、特定のリージョンの AWS Organizations によって管理されるアカウントにスタックインスタンスをデプロイする場合は、必要なIAMロールを作成する必要はありません。詳細については、 AWS CloudFormation ドキュメントの「スタックセットの作成」を参照してください。 

機能制限

  • アカウントのEC2インスタンスにタグが適用されていない場合、Amazon Inspector はそのアカウントのすべてのEC2インスタンスをスキャンします。

  • AWS CloudFormation スタックセットと onboard-audit-account.yaml ファイル (添付) は、同じリージョンにデプロイする必要があります。

  • デフォルトでは、Amazon Inspector クラシック に集計結果が適用されません。Security Hub は、複数のアカウントまたはAWSリージョンの評価を表示するための推奨ソリューションです。

  • このパターンのアプローチは、米国東部 (バージニア北部TPS) リージョン (us-east-1) のSNSトピックの 1 秒あたり 30,000 トランザクション () の発行クォータでスケールできますが、制限はリージョンによって異なります。より効果的にスケーリングし、データ損失を回避するには、SNSトピックの前に Amazon Simple Queue Service (Amazon SQS) を使用することをお勧めします。

アーキテクチャ

次の図は、EC2インスタンスを自動的にスキャンするワークフローを示しています。

スキャンを実行するためのAWSアカウント、および通知を送信するための別の監査アカウント。

ワークフローの主なステップは、以下のとおりです。

1. Amazon EventBridge ルールは cron 式を使用して特定のスケジュールで自己開始し、Amazon Inspector を開始します。  

2. Amazon Inspector は、アカウント内のタグ付けされたEC2インスタンスをスキャンします。 

3. Amazon Inspector は結果をSecurity Hub に送信し、セキュリティハブはワークフロー、優先順位付け、修復に関するインサイトを生成します。

4. Amazon Inspector は、評価のステータスを監査アカウントの SNSトピックにも送信します。findings reported イベントがSNSトピックに発行されると、AWSLambda 関数が呼び出されます。 

5. Lambda 関数は、検出結果を取得、フォーマットし、監査アカウントの別のSNSトピックに送信します。

6. 検出結果は、SNSトピックにサブスクライブされている E メールアドレスに送信されます。詳細と推奨事項は、サブスクライブされたHTTPエンドポイントに JSON 形式で送信されます。

テクノロジースタック

  • AWS Control Tower

  • EventBridge 

  • IAM

  • Amazon Inspector

  • Lambda

  • Security Hub

  • Amazon SNS

ツール

  • AWS CloudFormation – AWS CloudFormation は、AWSリソースのモデル化とセットアップに役立つため、リソースの管理に費やす時間を減らし、アプリケーションに集中する時間を増やすことができます。

  • AWS CloudFormation StackSets – は、1 回のオペレーションで複数のアカウントとリージョンにまたがるスタックを作成、更新、または削除できるようにすることで、スタックの機能AWS CloudFormation StackSets を拡張します。

  • AWS Control Tower – AWS Control Tower は、AWSOrganizations を含む他のいくつかの AWS サービスの機能を組み合わせて統合する抽象化またはオーケストレーションレイヤーを作成します。

  • Amazon EventBridge – は、アプリケーションをさまざまなソースのデータに簡単に接続できるサーバーレスイベントバスサービス EventBridge です。

  • AWS Lambda – Lambda は、サーバーのプロビジョニングや管理を行わずにコードを実行するのに役立つコンピューティングサービスです。

  • AWS Security Hub – Security Hub は、 のセキュリティ状態を包括的に把握AWSし、セキュリティ業界標準とベストプラクティスに照らして環境をチェックするのに役立ちます。

  • Amazon SNS – Amazon Simple Notification Service (Amazon SNS) は、パブリッシャーからサブスクライバーへのメッセージ配信を提供するマネージドサービスです。

エピック

タスク説明必要なスキル

AWS CloudFormation テンプレートを監査アカウントにデプロイします。

onboard-audit-account.yaml ファイル (添付済み) をダウンロードして、コンピュータのローカルパスに保存します。 

監査アカウントの AWSマネジメントコンソールにサインインし、AWS CloudFormation コンソールを開き、スタックの作成 を選択します。 

前提条件セクションでテンプレートの準備 を選択してから、テンプレートの準備完了を選択します。テンプレートの準備ができています を選択し、テンプレートの指定 セクションで Amazon S3 URLを選択します。onboard-audit-account.yaml ファイルをアップロードし、要件に応じて残りのオプションを設定します。 

重要:以下の入力パラメータを設定することが必要があります。

  • DestinationEmailAddress — 検出結果を受け取るためのメールアドレスを入力します。

  • HTTPEndpoint – チケットまたはSIEMツールのHTTPエンドポイントを指定します。

コマンドラインインターフェイス (AWS) AWS を使用してAWS CloudFormation テンプレートをデプロイすることもできますCLI。詳細については、 AWS CloudFormation ドキュメントの「スタックの作成」を参照してください。

開発者、セキュリティエンジニア

Amazon SNSサブスクリプションを確認します。

E メールの受信トレイを開き、Amazon から受信した E メールのサブスクリプションの確認を選択しますSNS。これにより、ウェブブラウザウィンドウが開き、サブスクリプションの確認が表示されます。

開発者、セキュリティエンジニア
タスク説明必要なスキル

Audit アカウントでは、スタックセットを作成します。

vulnerability-management-program.yaml ファイル (添付済み) をコンピューターのローカルパスにダウンロードします。

AWS CloudFormation コンソールで、スタックセットの表示 を選択し、 の作成 StackSetを選択します。テンプレートは準備完了を選択し、 テンプレートファイルをアップロードを選択して、 vulnerability-management-program.yamlファイルをアップロードします。 

アクセスself-managed許可を使用する場合は、 AWS CloudFormation ドキュメントの「セルフマネージド型のアクセス許可を持つスタックセットを作成する」の指示に従ってください。これにより、個々のアカウントにスタックセットが作成されます。 

アクセスservice-managed許可を使用する場合は、「 AWS CloudFormation ドキュメント」の「サービスマネージド型のアクセス許可を持つスタックセットを作成する」の手順に従います。これにより、組織全体または指定された組織単位 () にスタックセットが作成されますOUs。

重要:スタックセットには次の入力パラメータが設定されていることを保証します。

  • AssessmentSchedule – cron 式 EventBridge を使用するためのスケジュール。 

  • Duration – Amazon Inspector 評価の実行の時間 (秒)

  • CentralSNSTopicArn – 中央SNSトピックの Amazon リソースネーム (ARN)。

  • Tagkey — リソースグループに関連付けられているタグキー。 

  • Tagvalue — リソースグループに関連付けられているタグ値。 

監査アカウントのEC2インスタンスをスキャンする場合は、監査アカウントの AWS CloudFormation スタックとして vulnerability-management-program.yaml ファイルを実行する必要があります。

開発者、セキュリティエンジニア

ソリューションを更新する

Amazon Inspector に指定したスケジュールに従って、E メールまたはHTTPエンドポイントで結果を受信していることを確認します。

開発者、セキュリティエンジニア

関連リソース

添付ファイル

このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip