top of page

【初心者向け】Amazon Inspectorのはじめかた

  • hinoue2826
  • 3 日前
  • 読了時間: 10分
ree


   目次



この記事で分かること

  • Amazon Inspectorの概要

  • EC2のスキャン方法4つと事前設定の内容

  • Amazon ECRコンテナイメージスキャンの概要

  • Lambda関数スキャンの概要



   1. はじめに


この記事では、Amazon Inspectorの利用を開始する際の設定などについて解説します。

先日、Amazon Inspectorを利用していないAWSアカウントに新規導入する機会がありました。色々と考慮すべき点がありましたので、これからAmazon Inspectorを利用する方のために、スキャンを行う前の設定方法をまとめておきます。



   2. Amazon Inspectorとは


Amazon Inspectorとは、ソフトウェアの脆弱性や、意図しないネットワークの露出がないかを、AWS側で継続的にスキャンしてくれる脆弱性管理サービスです。

以下のリソースに対応しています。(2025/6/30現在)

  • Amazon EC2

  • Amazon ECR

  • Lambda関数

  • Code Security 


Code Security のスキャンは2025/6/17に新規リリースされた機能のようです。

GitHubなどと連携可能なようですが、機能の整理・検証を実施できていないため本記事では割愛とさせていただきます。

公式ドキュメントを以下に記載します。



なお、Amazon Inspectorには[Amazon Inspector classic]と[Amazon Inspector v2]が存在しますが、本記事で解説するのは[Amazon Inspector v2]です。

※[Amazon Inspector classic]は2026/5/20にサポート終了


早速、Amazon Inspectorを利用するまでの手順を解説します。


\AWSの設定でお困りですか?専門エンジニアがサポートします/



   3. Amazon Inspectorの有効化


まずはAmazon Inspectorの有効化を行います。


Amazon Inspectorはリージョナルサービスなので、利用したいリージョン毎に有効化する必要があります。


ree

この際、Amazon Inspectorの対応するリソース全てに対してスキャンが開始される点に注意してください。

初回有効化時は15日間の無料トライアルがありますが、有効化時点で大量のリソースが構築されている場合は、急激なコスト増加に繋がる可能性があります。

[Inspectorをアクティブ化]をクリックすることでAmazon Inspectorの有効化は完了します。


ree

この時点で特定のスキャン実施が不要な場合は、アカウント管理から非アクティブ化も可能です。(下記画像参照)


ree

続いて、各リソースのスキャンについて解説を行います。



   4. Amazon EC2スキャン


EC2についてはスキャン方法が複数存在します。

スキャン方法に応じた設定が必要となりますので、それぞれ解説します。

※プライベートサブネットに配置されたEC2でのスキャンを想定しています。


EC2のスキャン方法は複数存在しますが、共通して以下のVPCエンドポイントが必要になりますので、忘れずに作成しておきましょう。

・com.amazonaws.【リージョン】.inspector2



4.1.標準スキャン(エージェントベース)

AWS Systems Manager Agent(SSM Agent)を通じたスキャンを行います。

OSのパッケージの脆弱性や、ネットワークの経路の問題を検出します。

エージェントベースでのEC2標準スキャンを実施するためには①〜③の3つの条件を満たす必要があります。


①EC2がマネージドインスタンスであること

マネージドインスタンス化するためには以下の設定が必要になります。


●EC2インスタンスにSSMAgentがインストールされていること。

●EC2インスタンスのロールに[AmazonSSMManagedInstanceCore]ポリシーが付与されていること。

●以下のVPCエンドポイントがEC2インスタンスの所属するVPCに存在すること。

・com.amazonaws.【リージョン】.ssm

・com.amazonaws.【リージョン】.ssmmessages

・com.amazonaws.【リージョン】.ec2messages


②標準スキャン(エージェントベース)に必要となる関連付けが全て正常終了していること


ree

Amazon Inspectorを有効化すると、上記画像の関連付けがSystems Manager に自動作成されます。

標準スキャン(エージェントベース)を実施するためにはいくつかの関連付けが正常終了している必要があります。ここからは各関連付けの用途および留意点について記載します。


InspectorInventoryCollection-do-not-delete

EC2インスタンス(Windows/Linux)のインベントリ情報を収集するための関連付けです。

[Inventory data size per request]のクォータ上限に到達すると失敗するので注意して下さい。

※LinuxのEC2インスタンスは、本関連付けが成功していれば標準スキャンが実行されます。


InspectorDistributor-do-not-delete

Windows用のInspectorSSMプラグインをインストールするための関連付けです。

InspectorSSMプラグインはAWS管理のS3から取得するため、以下のVPCエンドポイントが必要になります。

・com.amazonaws.【リージョン】.s3


AWS管理のS3バケット名は[inspector2-oval-prod-【リージョン】]です。

S3エンドポイントでポリシー制御を実施している場合は、許可ポリシーの追記が必要となります。


【エンドポイントポリシー記載例(東京リージョン)】

{
 "Sid": "Inspector",
 "Effect": "Allow",
 "Principal": "*",
  "Action": "s3:GetObject",
 "Resource": "arn:aws:s3:::inspector2-oval-prod-ap-northeast-1/*"
}

InvokeInspectorSsmPlugin-do-not-delete

Windows用のInspectorSSMプラグインの実行ファイルを実行する関連付けです。

WindowsのEC2インスタンスにInspectorSSMプラグインが存在しない場合失敗します。

[InspectorDistributor-do-not-delete]が成功していれば問題なく動作するはずです。


③エージェントスキャンに対応したOSであること

古いOSなどはエージェントスキャンに対応していません。

対応OSは以下のドキュメントを参照してください。


④インスタンスにAmazon Inspector EC2 除外タグが付与されていないこと

タグキー「InspectorEc2Exclusion」のタグがEC2インスタンスに付与されているとInspectorのスキャン対象外となります。

値はオプションですのでキーが指定されていればスキャン対象外となります。


①〜④の条件を満たすEC2インスタンスでスキャンを試したところ、[Agent-based]でスキャンされていることが確認できました。


ree

エージェントスキャンの説明は以下のドキュメントに記載されています。



4.2.標準スキャン(エージェントレス)

AWS Systems Manager Agent(SSM Agent)を使用せずスキャンを行います。

InspectorによりEC2のボリュームからスナップショットを取得し、スナップショットからインスタンス内部の情報を取得します。

エージェントベースに比べてスキャンの網羅性が低く、LinuxのEC2の詳細スキャンも実行できません。

後述するCISスキャンも、エージェントレススキャンのEC2インスタンスには実行できません。


エージェントレススキャンを実行するためには①〜⑤の5つの条件を満たす必要があります。


①エージェントレススキャンに対応したOSであること

WindowsOSはエージェントレススキャンに対応していません。

対応OSは以下のドキュメントを参照してください。


②インスタンスのステータスが以下のいずれかであること

・Unmanaged EC2 instance:EC2がアンマネージドインスタンスである

・Stale inventory:EC2のインベントリ情報が6時間以上更新されていない

・No inventory:EC2のインベントリ情報が取得されていない


インスタンスのボリュームがEBSであること

Inspectorにより自動作成されるスナップショットが情報の取得元となりますので、ボリュームがEBSである必要があります。

また、EBSが以下のファイルタイプである必要があります。

・ext3

・ext4

・xfs

インスタンスストア内のデータはエージェントレススキャンの対象外となります。


インスタンスにAmazon EC2 除外タグが付与されていないこと

インスタンスは、Amazon EC2 除外タグによるスキャンから除外されません。


インスタンスにアタッチされたボリュームの数が 8 未満で、合計サイズが 1200 GB 以下であること

エージェントレススキャンはスキャン対象EC2毎のボリューム数およびサイズに条件がありますので注意してください。



※意図①〜⑤の条件を満たすEC2インスタンスが、[Agent-less]でスキャンされていることが確認できました。

意図的にIAMロールを付与せずアンマネージドインスタンスにしています。


ree

エージェントレススキャンの説明は以下のドキュメントに記載されています。



4.3.詳細スキャン

EC2 インスタンス内のアプリケーションプログラミング言語パッケージの脆弱性を検出する機能です。

デフォルトではEC2インスタンスの以下4つのパスに配置された言語パッケージのスキャンを行います。

  • /usr/lib

  • /usr/lib64

  • /usr/local/lib

  • /usr/local/lib64


詳細スキャンを実行するためには①〜②の2つの条件を満たす必要があります。


①EC2インスタンスがLinuxベースのインスタンスであること

詳細スキャンはLinuxベースのEC2インスタンスのみ対応しています。


②詳細スキャンに必要となる関連付けが全て正常終了していること

詳細スキャンを実施する上で正常終了している必要がある関連付けの用途および留意点について記載します。


InspectorLinuxDistributor-do-not-delete

Linux用のInspectorSSMプラグインをインストールするための関連付けです。

インストールのために必要な設定はWindowsと同様です。


InvokeInspectorLinuxSsmPlugin-do-not-delete

Linux用のInspectorSSMプラグインの実行ファイルを実行する関連付けです。

LinuxのEC2インスタンスにInspectorSSMプラグインが存在しない場合失敗します。

[InspectorLinuxDistributor-do-not-delete]が成功していれば問題なく動作するはずです。


詳細スキャンの説明は以下のドキュメントに記載されています。



4.4.CISスキャン

CISベンチマーク(Center for Internet Securityが策定した安全な設定基準)に沿ってEC2インスタンスのOSやミドルウェアの設定が基準を満たしているかをスキャンする機能です。


本スキャン実施のためには、以下の①〜⑤の5つの条件を満たす必要があります。


①CISスキャンの対象がエージェントスキャンでスキャンされていること

エージェントスキャンの条件は前述していますので割愛します。


②EC2インスタンスがCISスキャンに必要な権限を付与されていること

EC2インスタンスのロールに[AmazonInspector2ManagedCisPolicy]ポリシーが付与されている必要があります。

CISスキャンを行う場合は忘れずに付与しておきましょう。


③AWS管理のS3への疎通が可能であること

CIS スキャン実行時はAWS管理のS3に存在する OVAL 定義ファイルを参照します。

S3バケット名は[cis-datasets-prod-arn-【リージョン毎の固定値】]です。

エージェントスキャンの関連付けと同様に、S3エンドポイントでポリシー制御を実施している場合は許可ポリシーの追記が必要となります。


【エンドポイントポリシー記載例(東京リージョン)】

{
 "Sid": "Inspector",
 "Effect": "Allow",
 "Principal": "*",
 "Action": "s3:GetObject",
 "Resource": "arn:aws:s3:::cis-datasets-prod-nrt-464f684/*"
}

リージョン毎の固定値は以下のドキュメントを参照してください。


④CISスキャンに対応したOSであること

対応OSは以下のドキュメントを参照してください。


⑤CISスキャン対象のタグが付与されていること

CISスキャンは、Amazon Inspectorを有効化しただけでは実行されません。

コンソールのCISスキャンメニューからCISスキャンの設定を行う必要があります。

ree

以下画像は タグキー:cis-scan  タグの値:True が付与されているインスタンスにCISスキャンを実行する設定です。 

※ワンタイム(一度きりの実行)とcronによるスケジュールベースでの実行が可能です。今回は検証用にワンタイムでの実行を行います。


ree

①~⑤の条件を満たしており、該当するタグが付与されたEC2インスタンスに、CISスキャンが実行された事が確認できました。


ree

CISスキャンの説明は以下のドキュメントに記載されています。


\AWSの設定でお困りですか?専門エンジニアがサポートします/


   5. Amazon ECRコンテナイメージスキャン


Amazon ECRコンテナイメージスキャンについては、Amazon Inspectorを有効化した時点でスキャンが開始されます。

エンドポイントの作成などは不要のため、利用者側での事前設定は不要です。


スキャン可能なOSに制限がありますのでその点のみ留意してください。

対応OSは以下のドキュメントを参照してください。


ree

ECRスキャンの説明は以下のドキュメントに記載されています。



   6. Lambda関数スキャン


Lambda関数も、Amazon Inspectorを有効化した時点でスキャンが開始されます。

Lambda関数のスキャンには標準スキャンとコードスキャンの2種類のスキャンが存在しますが、ECRと同様に利用者側での事前設定は不要です。

それぞれスキャン可能なランタイムに制限がありますので留意してください。


標準スキャンに対応しているランタイムは以下のドキュメントを参照してください。


コードスキャンに対応しているランタイムは以下のドキュメントを参照してください。


ree

Lambda関数スキャンの説明は以下のドキュメントに記載されています。



   7. おわりに


Amazon Inspectorの利用のための各種設定は以上となります。

EC2インスタンスのスキャンに関しては事前に設定する項目が多いですが、本記事の記載内容を順番に確認することで、Amazon Inspectorのスキャンを開始することができるはずです。

実体験として、ポリシーの許可ルールの追記漏れでスキャンが実施されずに躓いたため、既に運用中のアカウントで有効化する際は意識しておくと良いかと思います。

各種スキャンの詳細な仕様については、今後別記事にて記載しようと考えてますので、お楽しみに。


\3分で読める!サービス紹介資料 ダウンロード/




ree

bottom of page