Amazon Inspector による Amazon EC2 インスタンスのスキャン - Amazon Inspector

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

Amazon Inspector による Amazon EC2 インスタンスのスキャン

Amazon Inspector の Amazon EC2 向けエージェントレススキャンはプレビューリリース中です。Amazon EC2 エージェントレススキャン機能の使用には、「AWS のサービス条件」の第 2 項 (「ベータ版とプレビュー」) が適用されます。

Amazon Inspector EC2 スキャンは、EC2 インスタンスからメタデータを抽出し、このメタデータをセキュリティアドバイザリから収集されたルールと比較して、検出結果を生成します。Amazon Inspector はインスタンスをスキャンして、パッケージの脆弱性とネットワークの到達性の問題がないか調べます。これらの問題について生成される結果のタイプについては、「Amazon Inspector での 検出結果タイプ」を参照してください。

Amazon Inspector は、24 時間ごとにネットワーク到達可能性のスキャンを実行しますが、パッケージの脆弱性スキャンに関してはインスタンスに関連付けられたスキャン方式に応じてさまざまな頻度で実行されます。

スキャン方式

パッケージの脆弱性スキャンは、エージェントベースまたはエージェントレスのスキャン方式を使用して実行できます。これらのスキャン方式により、Amazon Inspector がパッケージの脆弱性スキャンのために EC2 インスタンスからソフトウェアインベントリを収集する方法と時期が決まります。エージェントベース方式では SSM エージェントに依存してソフトウェアインベントリを収集しますが、エージェントレス方式ではエージェントの代わりに Amazon EBS スナップショットを使用します。

Amazon Inspector で使用されるスキャン方式は、アカウントの [スキャンモード] 設定によって異なります。詳細については、「スキャンモードの管理」を参照してください。

Amazon EC2 スキャンをアクティブ化するには、「スキャンタイプをアクティブ化する」を参照してください。

エージェントベースのスキャン

エージェントベースのスキャンは、対象となるすべてのインスタンスで SSM エージェントを使用して継続的に実行されます。エージェントベースのスキャンの場合、Amazon Inspector は SSM 関連付けと、これらの関連付けを通じてインストールされたプラグインを使用して、インスタンスからソフトウェアインベントリを収集します。Amazon Inspector のエージェントベースのスキャンでは、オペレーティングシステムパッケージに対するパッケージの脆弱性スキャンに加えて、Linux ベースのインスタンス内のアプリケーションプログラミング言語パッケージに対するパッケージの脆弱性も Amazon EC2 Linux インスタンス向け Amazon Inspector 詳細検査 によって検出できます。

以下のプロセスでは、Amazon Inspector が SSM を使用してインベントリを収集し、エージェントベースのスキャンを実行する方法について説明します。

  1. Amazon Inspector は、インスタンスからインベントリを収集するために、アカウントに SSM 関連付けを作成します。一部のインスタンスタイプ (Windows および Linux) では、これらの関連付けによって、インベントリが収集するために個々のインスタンスにプラグインがインストールされます。

  2. Amazon Inspector は SSM を使用してインスタンスからパケージインベントリを抽出します。

  3. Amazon Inspector は抽出されたインベントリを評価し、検出された脆弱性について検出結果を生成します。

対象インスタンス

Amazon Inspector は、インスタンスが以下の条件を満たす場合、エージェントベース方式でスキャンします。

  • サポートされている OS がインスタンスに備わっている。サポートされている OS のリストについては、「サポートされているオペレーティングシステム: Amazon EC2スキャン」の「エージェントベースのスキャンのサポート」コラムを参照してください。

  • インスタンスが Amazon Inspector の EC2 除外タグによってスキャンから除外されていない。

  • SSM マネージドインスタンスである。エージェントを確認および設定する手順については、「SSM Agent の設定」を参照してください。

エージェントベーススキャンの動作

エージェントベースのスキャン方式を使用する場合、Amazon Inspector は、以下の状況において EC2 インスタンスの脆弱性スキャンを新たに開始します。

  • 新しい EC2 インスタンスを起動するとき。

  • 既存の EC2 インスタンス (Linux および Mac) に新しいソフトウェアをインストールするとき。

  • Amazon Inspector がデータベースに新しい共通脆弱性識別子 (CVE) 項目を追加し、その CVE が EC2 インスタンス (Linux と Mac) に関連する場合。

Amazon Inspector は、初回スキャンが完了すると EC2 インスタンスの [最終スキャン日] フィールドを更新します。この後、Amazon Inspector が SSM インベントリを評価したとき (デフォルトでは 30 分ごと)、またはインスタンスに影響を与える CVE が Amazon Inspector データベースに新たに追加されたためにインスタンスが再スキャンされたときに、[最終スキャン日] フィールドが更新されます。

EC2 インスタンスの脆弱性の最終スキャン日は、[アカウント管理] ページの [インスタンス] タブから、または ListCoverage コマンドを使用して確認できます。

SSM Agent の設定

Amazon Inspector がエージェントベースのスキャン方式を使用して Amazon EC2 インスタンスのソフトウェア脆弱性を検出するには、そのインスタンスが Amazon EC2 Systems Manager (SSM) のマネージドインスタンスである必要があります。SSM マネージドインスタンスには SSM Agent がインストールされ実行されており、SSM にはインスタンスを管理するアクセス許可があります。すでに SSM を使用してインスタンスを管理している場合、エージェントベースのスキャンのために必要な他の手順はありません。

SSM Agent は、一部の Amazon マシンイメージ (AMI) から作成された EC2 インスタンスにデフォルトでインストールされます。詳細については、「AWS Systems Manager ユーザーガイド」の「SSM Agent について」を参照してください。ただし、SSM Agent がインストールされている場合でも、それを手動でアクティブ化し、SSM にインスタンスを管理するためのアクセス許可の付与が必要の場合があります。

以下の手順では、IAM インスタンスプロファイルを使用して Amazon EC2 インスタンスをマネージドインスタンスとして設定する方法について説明します。この手順では、「AWS Systems Manager ユーザーガイド」にあるより詳細な情報のリンクも提供しています。

AmazonSSMManagedInstanceCore は、インスタンスプロファイルをアタッチするときに使用する推奨ポリシーです。このポリシーには、Amazon Inspector EC2 スキャンに必要なすべてのアクセス許可が含まれています。

注記

SSM デフォルトのホスト管理設定を使用すると、IAM インスタンスプロファイルを使用しなくても、すべての EC2 インスタンスの SSM 管理を自動化できます。詳細については、「デフォルトのホスト管理設定」を参照してください。

Amazon EC2 インスタンス用に SSM を設定する方法
  1. オペレーティングシステムベンダーがまだ SSM Agent をインストールしていない場合は、SSM Agent をインストールします。詳細については、「SSM Agent の使用」を参照してください。

  2. を使用して AWS CLI 、SSM エージェントが実行されていることを確認します。詳細については、「SSM Agent ステータスの確認とエージェントの起動」を参照してください。

  3. SSM にインスタンスを管理するアクセス許可を付与します。IAM インスタンスプロファイルを作成してインスタンスにアタッチすることで、アクセス許可を付与できます。AmazonSSMManagedInstanceCore ポリシーを使用することをお勧めします。このポリシーには、Amazon Inspector がスキャンに必要な SSM ディストリビューター、SSM インベントリ、および SSM ステートマネージャーのアクセス許可があるためです。これらの許可を持つインスタンスプロファイルを作成してインスタンスにアタッチする手順については、「Configure instance permissions for Systems Manager」を参照してください。

  4. (オプション) SSM Agent の自動アップデートをアクティブ化にします。詳細については、「SSM Agent への更新の自動化」を参照してください。

  5. (オプション) Amazon Virtual Private Cloud (Amazon VPC) エンドポイントを使用するように Systems Manager を設定します。詳細については、「Create Amazon VPC endpoints」を参照してください。

重要

Amazon Inspector では、ソフトウェアアプリケーションインベントリを収集するために、お客様のアカウントに Systems Manager ステートマネージャーの関連付けが必要です。まだ存在しない場合は、Amazon Inspector によって InspectorInventoryCollection-do-not-delete という名前の関連付けが自動的に作成されます。

Amazon Inspector ではリソースデータの同期も必要で、まだ存在しない場合は自動的に InspectorResourceDataSync-do-not-delete という名前で作成されます。詳細については、「AWS Systems Manager ユーザーガイド」の「インベントリのリソースデータの同期の設定」を参照してください。各アカウントは、リージョンごとに設定された数のリソースデータを同期することができます。詳細については、「SSM エンドポイントのリソースデータ同期の最大数 (各リージョンの AWS アカウント あたり)」および「クォータ」を参照してください。 https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssmこの最大数に達した場合は、リソースデータ同期を削除する必要があります。「Managing resource data syncs」を参照してください。

スキャン用に作成された SSM リソース

Amazon Inspector では、Amazon EC2 スキャンを実行するためにアカウントに多数の SSM リソースが必要です。Amazon Inspector EC2 スキャンを初めてアクティブ化すると、以下のリソースが作成されます。

注記

アカウントで Amazon Inspector Amazon EC2 スキャンが有効になっている間にこれらの SSM リソースのいずれかが削除された場合、Amazon Inspector は次のスキャン間隔でリソースの再作成を試みます。

InspectorInventoryCollection-do-not-delete

これは Amazon Inspector が Amazon EC2 インスタンスからソフトウェアアプリケーションインベントリを収集するために使用するSystems Manager ステートマネージャー (SSM) 関連付けです。InstanceIds* からインベントリを収集するための SSM 関連付けがすでにアカウントに存在する場合、Amazon Inspector は独自のものを作成する代わりにその関連付けを使用します。

InspectorResourceDataSync-do-not-delete

これは Amazon Inspector が、Amazon EC2 インスタンスから収集したインベントリデータを所有する Amazon S3 バケットに送信するために使用するリソースデータ同期です。詳細については、「AWS Systems Manager ユーザーガイド」の「インベントリのリソースデータの同期の設定」を参照してください。

InspectorDistributor-do-not-delete

これは Amazon Inspector が Windows インスタンスのスキャンに使用する SSM 関連付けです。この関連付けにより、Windows インスタンスに Amazon Inspector SSM プラグインがインストールされます。プラグインファイルが誤って削除された場合、この関連付けは次の関連付け間隔でプラグインを再インストールします。

InvokeInspectorSsmPlugin-do-not-delete

これは Amazon Inspector が Windows インスタンスのスキャンに使用する SSM 関連付けです。この関連付けにより、Amazon Inspector はプラグインを使用してスキャンを開始できます。また、これを使用して Windows インスタンスのスキャンのカスタム間隔を設定することもできます。詳細については、「Windows インスタンススキャンのカスタムスケジュールの設定」を参照してください。

InspectorLinuxDistributor-do-not-delete

これは、Amazon Inspector が Amazon EC2 Linux のディープインスペクションに使用する SSM の関連付けです。この関連付けにより、Amazon Inspector SSM プラグインが Linux インスタンスにインストールされます。

InvokeInspectorLinuxSsmPlugin-do-not-delete

これは、Amazon Inspector が Amazon EC2 Linux のディープインスペクションに使用する SSM 関連付けです。この関連付けにより、Amazon Inspector はプラグインを使用してスキャンを開始できます。

注記

Amazon Inspector Amazon EC2 スキャンまたはディープインスペクションを無効にすると、対応する Linux ホストからすべての SSM リソースが自動的にアンインストールされます。

エージェントレススキャン

アカウントがハイブリッドスキャンモード (エージェントベースのスキャンとエージェントレススキャンの両方を含む) の場合、Amazon Inspector は対象となるインスタンスに対してエージェントレススキャン方式を使用します。エージェントレススキャンの場合、Amazon Inspector は EBS スナップショットを使用してインスタンスからソフトウェアインベントリを収集します。エージェントレス方式を使用してスキャンされたインスタンスは、オペレーティングシステムパッケージとアプリケーションプログラミング言語パッケージの両方の脆弱性をスキャンされます。

注記

Linux インスタンスのアプリケーションプログラミング言語パッケージの脆弱性をスキャンする場合、エージェントレス方式では使用可能なすべてのパスがスキャンされます。一方、エージェントベーススキャンでは、デフォルトパスと、Amazon EC2 Linux インスタンス向け Amazon Inspector 詳細検査 の一部として指定した追加パスのみがスキャンされます。これにより、同じインスタンスでも、エージェントベース方式を使用してスキャンされたか、エージェントレス方式を使用してスキャンされたかによって、異なる検出結果が得られる可能性があります。

以下のプロセスでは、Amazon Inspector が EBS スナップショットを使用してインベントリを収集し、エージェントレススキャンを実行する方法について説明します。

  1. Amazon Inspector は、インスタンスにアタッチされたすべてのボリュームの EBS スナップショットを作成します。Amazon Inspector が使用している間、スナップショットはアカウントに保存され、タグキーとして InspectorScan、タグ値として一意のスキャン ID でタグ付けされます。

  2. Amazon Inspector は、EBS ダイレクト API を使用してスナップショットからデータを取得し、脆弱性がないか評価します。検出された脆弱性に対して検出結果が生成されます。

  3. Amazon Inspector は、アカウント内に作成した EBS スナップショットを削除します。

対象インスタンス

Amazon Inspector は、インスタンスが以下の条件を満たす場合、エージェントレス方式でスキャンします。

  • サポートされている OS がインスタンスに備わっている。サポートされている OS のリストについては、「サポートされているオペレーティングシステム: Amazon EC2スキャン」の「エージェントベースのスキャンのサポート」コラムを参照してください。

  • インスタンスが Amazon Inspector の EC2 除外タグによってスキャンから除外されていない。

  • インスタンスのステータスは Unmanaged EC2 instanceStale inventory、または ですNo inventory

  • インスタンスが EBS-backed で、以下のいずれかのファイルシステム形式である。

    • ext3

    • ext4

    • xfs

エージェントレススキャンの動作

アカウントが [ハイブリッドスキャン] 用に設定されている場合、Amazon Inspector は 24 時間ごとに対象インスタンスに対してエージェントレススキャンを実行します。Amazon Inspector は、新たに対象となるインスタンスを 1 時間ごとに検出してスキャンします。これには、SSM エージェントのない新しいインスタンス、またはステータスが SSM_UNMANAGED に変わった既存のインスタンスが含まれます。

Amazon Inspector は、エージェントレススキャンの後にインスタンスから抽出されたスナップショットをスキャンするたびに、Amazon EC2 インスタンスの [最終スキャン日] フィールドを更新します。

EC2 インスタンスの脆弱性の最終スキャン日は、[アカウント管理] ページの [インスタンス] タブから、または ListCoverage コマンドを使用して確認できます。

スキャンモードの管理

アカウントで EC2 スキャンを実行するときに Amazon Inspector がどのスキャン方式を使用するかは、EC2 スキャンモードで決まります。アカウントのスキャンモードは、[全般設定] の [EC2 スキャン設定] ページで確認できます。スタンドアロンアカウントまたは Amazon Inspector の委任管理者は、スキャンモードを変更できます。Amazon Inspector の委任管理者としてスキャンモードを設定すると、そのスキャンモードが組織内のすべてのメンバーアカウントに設定されます。Amazon Inspector には以下のスキャンモードがあります。

エージェントベースのスキャン — このスキャンモードでは、Amazon Inspector はパッケージの脆弱性をスキャンする際にエージェントベースのスキャン方式のみを使用します。このスキャンモードは、アカウント内の SSM マネージドインスタンスのみをスキャンしますが、新しい CVE やインスタンスへの変更に応じて継続的にスキャンできるという利点があります。エージェントベースのスキャンでは、対象となるインスタンスに対して Amazon Inspector の詳細検査を行うこともできます。これは、新しくアクティブ化されたアカウントではデフォルトのスキャンモードです。

ハイブリッドスキャン — このスキャンモードでは、Amazon Inspector はエージェントベースの方式とエージェントレス方式の両方を組み合わせてパッケージの脆弱性をスキャンします。SSM エージェントがインストールおよび設定されている適格な EC2 インスタンスでは、Amazon Inspector はエージェントベースの方式を使用します。SSM マネージドではない対象インスタンスの場合、Amazon Inspector は対象の EBS-backed インスタンスに対してエージェントレス方式を使用します。

スキャンモードを変更するには
  1. https://console.aws.amazon.com/inspector/v2/home で Amazon Inspector コンソールを開きます。

  2. ページの右上隅にある AWS リージョン セレクターを使用して、EC2 スキャンモードを変更するリージョンを選択します。

  3. サイドナビゲーションパネルの [全般設定] から、[EC2 スキャン設定] を選択します。

  4. [スキャンモード][編集] を選択します。

  5. スキャンモードを選択し、[変更を保存] を選択します。

Amazon Inspector スキャンからのインスタンスの除外

特定のインスタンスにタグを付けて、Amazon Inspector のスキャンからインスタンスを除外できます。インスタンスをスキャンから除外すると、実行不可能なアラートを防ぐことができます。除外されたインスタンスには課金されません。

EC2 インスタンスをスキャンから除外するには、そのインスタンスに次のキーをタグ付けします。

  • InspectorEc2Exclusion

値はオプションです。

タグの追加の詳細については、「Amazon EC2 リソースのタグ付け」を参照してください。

さらに、暗号化された EBS ボリュームをエージェントレススキャンから除外するには、そのボリュームの暗号化に使用される AWS KMS キーに InspectorEc2Exclusion タグを付けます。詳細については、「キーのタグ付け」を参照してください。

サポートされるオペレーティングシステム

Amazon Inspector は、サポートされている Mac、Windows、Linux の EC2 インスタンスをスキャンして、オペレーティングシステムパッケージの脆弱性を検出します。Linux インスタンスの場合、Amazon Inspector では Amazon EC2 Linux インスタンス向け Amazon Inspector 詳細検査 を使用してアプリケーションプログラミング言語パッケージの結果を生成できます。Mac および Windows インスタンスの場合、オペレーティングシステムパッケージのみがスキャンされます。

SSM エージェントなしでスキャンできるオペレーティングシステムなど、サポートされているオペレーティングシステムについては、「Amazon EC2 のスキャンでサポートされているオペレーティングシステム」を参照してください。