Inspector v2はSystems ManagerのVPCエンドポイントを使ってプライベートに設置したEC2のスキャンができる(Windows版)

2022.10.03

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、つくぼし(tsukuboshi0755)です!

最近、Inspector v2がWindows OSに対応しました。

このアップデートにより、プライベートサブネットに属するWindowsインスタンスについても、VPCエンドポイント経由でInspector v2のスキャンを行えるようになったので試してみます!

前提条件

プライベートWindowsインスタンスでInspector v2を使用するには、以下の要件を満たす必要があります。

なお、以下の公式ドキュメントにも記載があります。(現時点では英語版のみ記載があります)

インスタンスがSSMマネージドインスタンスとして登録されている事

対象インスタンスにてSSMエージェントがインストールされているか確認した上で、SSM用のIAMインスタンスプロファイルをアタッチする必要があります。

また今回のようにプライベートEC2インスタンスをSSMに登録する場合、SSM用のVPCエンドポイントを作成する必要があります。

InspectorでサポートされているWindows OSを使用している事

今回のアップデートにより、以下のWindows OSにてInspector v2を使用できるようになっています。

  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2016
  • Windows Server 2019
  • Windows Server 2022

上記のWindows OS以外は、現状Inspector v2のサポート対象外ですのでご注意ください。

インスタンスにAmazon Inspector SSMプラグインがインストールされている事

Inspector v2が開始されると、Windows インスタンス検出時に以下のAmazon Inspector SSMプラグインが自動的にインストールされます。

C:\Program Files\Amazon\Inspector\inspectorssmplugin.exe


もし上記のファイルが何らかの要因で存在しない場合、Inspector v2でWindows OSを正常にスキャンする事ができない事には留意しておきましょう。

インスタンスがS3エンドポイントにアクセスできる事(プライベートWindowsインスタンスのみ)

プライベートWindowsインスタンスをInspector v2でスキャンしたい場合のみ、以下の通り同一リージョンにS3エンドポイントを設定する必要があります。

If your host is running in an Amazon VPC without outgoing internet access, Windows scanning requires your host to be able access regional Amazon S3 endpoints.

ちなみにプライベートLinuxインスタンスでは本条件は必要ないため、プライベートWindowsインスタンスをスキャンする場合にひっかかりやすく要注意です!

実施内容

以下のブログと、検証内容はほとんど同じです!

ただし以下2点について、検証内容を一部変更しています。

  • 対象インスタンスのOSには、Windows Server 2022を使用(AMI名:Windows_Server-2022-Japanese-Full-Base-2022.06.15)
  • 対象インスタンスが属するVPCに対して、S3ゲートウェイエンドポイントをアタッチ

やってみた

それでは検証してみましょう。  

初めにVPCをインターネットアクセスなしのプライベートサブネット付きで作成した後、以下の通り該当サブネットに属するWindowsインスタンスを起動します。

次に以下の公式Q&Aの手順を参考に、起動したプライベートWindowsインスタンスをSSMマネージドインスタンスとして登録します。

以下の画像の通り、フリートマネージャー画面にてプライベートWindowsインスタンスが表示されれば、正常にSSMマネージドインスタンスとして登録されています。

さらにインスタンスが属するVPCに対して、以下の通りS3ゲートウェイエンドポイントを作成します。

上記を全て実施した上で、Inspector v2を有効化すると、最初はスキャンしないタブにインスタンスが表示されます。

しばらく待った後、以下の通りスキャンタブにインスタンスが表示されるようになれば、正常にプライベートWindowsインスタンスがスキャンされています!

インスタンス詳細の検出結果を確認すると、脆弱性もきちんと一覧表示されてますね。

最後に

Amazon Inspector v2がWindowsインスタンスのスキャンに対応しより便利になった一方で、プライベートLinuxインスタンスとは一部前提条件が異なる箇所もあり注意が必要ですね。
(私は当初S3エンドポイントが必要な事に気づかず、スキャンができない原因の調査にしばらくハマってしまいました。。。)

とはいえ一度スキャン用の設定を実施してしまえば、既存のプライベートWindowsインスタンスもまとめてスキャン可能なので、ぜひ使用してみてはいかがでしょうか。

以上、つくぼしでした!