質問内容

インターネットやWSUSのようなWindows Updateサーバーに接続できない環境でWindowsホストをローカルスキャンすることができますか?

回答

インターネット、またはWSUSのようなWindows Updateサーバーに接続できない環境でもWindowsのホストのローカルスキャン可能です。

そのような環境の場合「Windows Updateから提供されているcabファイル」を用いて未適用な更新プログラムを検出し脆弱性を検知できます。

<aside> ⚠️ 継続的にWindowsホストをスキャンするためには、新規にWindowsアップデートが提供されたタイミングで新しいcabファイルを取得してスキャンする必要があります

</aside>

以降はcabファイルを使用したWindows ホストスキャン方法について説明します。この機能はyamory-cli 0.9.0以降でサポートしています。

cabファイルを使用したWindows ホストスキャン(ローカルスキャン)方法

cabファイルを使用したWindows ホストスキャン(ローカルスキャン)

cabファイルを使用したWindows ホストスキャン(ローカルスキャン)

  1. インターネットに接続可能な環境でyamory-cli をインストール(ダウンロード)します。

    インストール(ダウンロード)方法は ドキュメント を参照ください。

  2. インターネットに接続可能な端末でMicrosoft社が運営するwindowsupdate.comから wsusscn2.cab を入手します。

    http://download.windowsupdate.com/microsoftupdate/v6/wsusscan/wsusscn2.cab

    PowerShellでcabファイルを取得する場合以下を実行します。

    Windows 10 Ver.1803(RS3)以降、Windows Server 2016 Ver.1803 以降の場合

    curl.exe -sS -o C:\\yamory_host_scan\\wsusscn2.cab "<http://download.windowsupdate.com/microsoftupdate/v6/wsusscan/wsusscn2.cab>"
    

ダウンロードした wsusscn2.cab と 1. でダウンロードした yamory.exe をスキャン対象のホストに何らかの手段で転送してください。

以降はスキャン対象のホストの C:\\yamory_host_scan フォルダーに格納したものとして説明します。

<aside> ⚠️ cabファイルのサイズは約800MBあります(2023/06/30時点)。ネットワーク帯域やディスクの空き容量に注意してください。

</aside>

  1. スキャン対象のホストでPowerShellを管理者権限で起動します。C:\\yamory_host_scan に移動し以下を実行することで、Windowsホストのスキャン結果が yamory_result_<yyyyMMddHHmm>_<hostname>.json の形式で出力されます。

    以降は yamory_result_202306301800_test-host.json に結果が出力されたこととして説明します。


.\\yamory exec --output --wsusScanFilePath='C:\\yamory_host_scan\\wsusscn2.cab' --winUpdateType="CAB"