これらのセキュリティ制御は、ゲスト OS のベスト プラクティスのベースライン セットを提供します。それらは、制御を実装した場合のメリットとトレードオフを説明する形で構成されています。これらの制御を変更するには、提供される PowerCLI または vSphere Client を使用します。
使用される変数
このセクションの PowerCLI コマンドでは、次の変数を使用します。
- $VM = "virtual_machine_name"
VMware Tools のパス
VMware Tools のデフォルトのインストール パスは、C:\Program Files\VMware\VMware Tools です。
ゲスト OS のセキュア ブートを構成する
ゲスト OS では、セキュア ブートを有効にする必要があります。
最新のすべてのゲスト OS でサポートされているセキュア ブートは、パブリック キー暗号化を使用して、ファームウェア、ブートローダー、ドライバ、および OS カーネルを検証します。セキュア ブートは、ブート チェーンの妥当性が不確実なシステム起動を防止することで、マルウェアを効果的に制限します。
- デフォルト値を変更した場合の潜在的な機能上の影響
- ゲスト OS のインストール後にセキュア ブートを有効にすると、さらに多くの手順が必要になる場合があります。手順については、ゲスト OS のドキュメントを参照してください。
- PowerCLI コマンドの修正例
-
$VMobj = (Get-VM -Name $VM) $ConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec $bootOptions = New-Object VMware.Vim.VirtualMachineBootOptions $bootOptions.EfiSecureBootEnabled = $true $ConfigSpec.BootOptions = $bootOptions $task = $VMobj.ExtensionData.ReconfigVM_Task($ConfigSpec)
MSI 変換の使用を制限する
ゲスト OS は、VMware Tools の再構成時に MSI 変換の使用を制限する必要があります。
MSI 変換を使用すると、Microsoft Windows ゲスト OS のインストール データベースを変更できます。これは役に立つこともありますが、vSphere からゲスト OS のセキュリティ プロファイルを変更する機会を与えることにもなります。
Appinfo を無効にする
ゲスト OS は、必要な場合を除き、Appinfo 情報の収集を無効にする必要があります。
Appinfo は、VMware Tools を使用してアプリケーション検出を実行するための手段です。このツールを使用していない場合は、モジュールを無効にして、攻撃対象領域を減らします。
- 値
- インストールのデフォルト値:False
- 必要なアクション
- インストールのデフォルトを変更します。
- デフォルト値を変更した場合の潜在的な機能上の影響
- VMware エコシステム内の製品とサービスに、この機能が必要になる場合があります。
- PowerCLI コマンドの評価
-
VMwareToolboxCmd.exe config get appinfo disabled
ContainerInfo を無効にする
ゲスト OS は、必要な場合を除き、ContainerInfo を無効にする必要があります。
VMware Tools の Linux 用 ContainerInfo プラグインは、Linux ゲスト OS 内で実行中のコンテナのリストを収集します。
ゲスト操作の無効化
必要な場合を除き、ゲスト操作を無効にします。
ゲスト操作は、ホストとゲスト間のほとんどのやり取りを支える一連の機能です。無効にすると攻撃対象領域が減少しますが、機能も大幅に低下します。実際の環境でこれらの機能が不要であることを確認します。テンプレート仮想マシンでは、ゲスト操作を無効にしないでください。
機能のリストについては、次のドキュメントを参照してください。
ゲスト OS の再カスタマイズを防止する
デプロイしてカスタマイズした仮想マシン上のゲスト OS が再カスタマイズされないようにする必要があります。
仮想マシンのデプロイ プロセスには、vSphere 管理者がスクリプトを使用し、コマンドを実行して仮想マシンをカスタマイズするための多くのオプションがあります。これらのカスタマイズ アプローチは、攻撃者がクローン作成と再カスタマイズを通じて仮想マシン内のデータにアクセスするための手段になる可能性もあります。仮想マシンをデプロイした後、仮想マシンが再度カスタマイズされないようにします。この変更は、いつでも元に戻すことができます。
- 値
- インストールのデフォルト値:True
- 必要なアクション
- インストールのデフォルトを変更します。
- デフォルト値を変更した場合の潜在的な機能上の影響
- 設定すると、仮想マシンはクローン作成時にカスタマイズできるようになります。テンプレート仮想マシンに対しては、この変更を行わないでください。
- PowerCLI コマンドの評価
-
VMwareToolboxCmd.exe config get deployPkg enable-customization
- PowerCLI コマンドの修正例
-
VMwareToolboxCmd.exe config set deployPkg enable-customization false
GuestStore アップグレード操作を無効にする
ゲスト OS は、必要な場合を除き、GuestStore アップグレード操作を無効にする必要があります。
GuestStore 機能は、VMware 固有のコンテンツまたはカスタム コンテンツを GuestStore リポジトリから複数のゲストに同時に配布する、シンプルで柔軟なメカニズムを提供します。この機能を使用していない場合は、プラグインを無効にして、攻撃対象領域を減らします。
サービス検出を無効にする
ゲスト OS は、必要な場合を除き、サービス検出を無効にする必要があります。
VMware Tools のサービス検出プラグインは、Aria Operations に接続し、ゲスト OS とワークロードに関する追加データをその製品に提供します。この機能を使用していない場合は、プラグインを無効にして、攻撃対象領域を減らします。
VMware Tools のログ作成を有効にする
ゲスト OS は、VMware Tools のログ作成を有効にする必要があります。
VMware Tools が適切に情報をログに記録するようにします。例については、「https://github.com/vmware/open-vm-tools/blob/master/open-vm-tools/tools.conf」を参照してください。
VMware Tools のログをシステム ログ サービスに送信する
ゲスト OS は、VMware Tools のログをシステム ログ サービスに送信する必要があります。
デフォルトでは、VMware Tools はディスク上のファイルにログを送信します。管理と一元的なアーカイブのために、Linux ゲストの Syslog、および Microsoft Windows ゲストの Windows イベント サービスにログが送信されるように構成します。
- PowerCLI コマンドの評価
-
VMwareToolboxCmd.exe config get logging vmsvc.handler VMwareToolboxCmd.exe config get logging toolboxcmd.handler VMwareToolboxCmd.exe config get logging vgauthsvc.handler VMwareToolboxCmd.exe config get logging vmtoolsd.handler
VMware Tools のバージョンが最新であることを確認する
ゲスト OS は、VMware Tools が最新であることを確認する必要があります。
VMware Tools は、VMware エコシステムの重要な部分です。VMware Tools を使用すると、次のようなゲスト OS 管理を実行できます。
- 正常なシャットダウン
- ライフサイクル管理
- 準仮想化デバイスのドライバの取得
- 仮想マシン テンプレートのカスタマイズとデプロイ
すべてのソフトウェアと同様に、必要に応じて VMware Tools を管理および更新する必要があります。ゲスト OS が、Linux ディストリビューションの一部として提供されているか、Microsoft Windows 用にインストールされているかに関係なく、そのゲスト OS でサポートされているバージョンが実行されていることを確認してください。
- 値
- インストールのデフォルト値:該当なし
- 必要なアクション
- インストールのデフォルト値を監査します。
- デフォルト値を変更した場合の潜在的な機能上の影響
- なし
- PowerCLI コマンドの評価
-
Get-VM -Name $VM | Select-Object -Property Name,@{Name='ToolsVersion';Expression={$_.Guest.ToolsVersion}}
- PowerCLI コマンドの修正例
- サイト固有。VMware Tools を更新する方法は、複数あります。VMXNET3 および PVSCSI 用のドライバも Windows Update から入手できるので、WSUS などのツールにインポートしてください。
- vSphere Client で場所を設定する
GlobalConf を無効にする
ゲスト OS は、必要な場合を除き、GlobalConf を無効にする必要があります。
VMware Tools の GlobalConf は、tools.conf
ファイル構成を仮想マシンにプッシュする機能を提供します。
VMware Tools 機能の自動更新を制限する
ゲスト OS は、VMware Tools 機能の自動削除を制限する必要があります。
VMware Tools の自動アップグレード プロセスでは、VMware Tools のインストールに対する機能の追加または削除が可能です。これは、役に立つこともありますが、vSphere からゲスト OS のセキュリティ プロファイルを変更する機会を与えることにもなります。
VMware Tools の自動アップグレードを構成する
ゲスト OS は、環境に応じて、VMware Tools の自動アップグレードを構成する必要があります。
VMware Tools の更新は、vSphere によって開始できます。これは、現在の VMware Tools バージョンを維持するのに役立ちます。VMware Tools を他の方法で管理および更新する場合は、この機能を無効にします。通常、自動更新は有効のままにしておきます。
仮想マシンのハードウェア バージョンを確認する
ゲスト OS は、仮想マシンのハードウェアがバージョン 19 以降(サポートされている場合)であることを確認する必要があります。
仮想マシン ハードウェア 19 は、ESXi 7.0 Update 2 以降と互換性があります。より新しいバージョンの仮想マシン ハードウェアを使用すると、新機能を利用でき、パフォーマンスが向上します。vSphere 8.0 以降に完全に更新する場合は、仮想マシン ハードウェア 20 へのアップグレードを検討してください。通常どおり、アップグレードの際は注意し、システム全体にロールアウトする前にアップグレード プロセスを十全にテストしてください。
仮想マシンが実行される可能性がある場所、または仮想マシンをリストアすることが必要になる可能性がある場所をすべて考慮します。たとえば、VMware Cloud Disaster Recovery サービスのユーザーは、潜在的なリカバリ SDDC の vSphere レベルを考慮する必要があります。VMware Cloud が vSphere 上で実行されていても、サポートされている同じ仮想ハードウェア バージョンを使用できない場合があります。
VMware 提供の仮想アプライアンスの構成に対する変更はサポートされていないため、サービスが中断する可能性があります。
- 値
- インストールのデフォルト値:サイト固有
- 必要なアクション
- インストールのデフォルト値を変更します。
- デフォルト値を変更した場合の潜在的な機能上の影響
- 仮想マシンのハードウェア バージョンを変更すると、ゲスト内のデバイス バージョンが変更されます。これにより、影響が生じる可能性があります。仮想ハードウェア バージョンのアップグレードを必ずテストし、必要があればバージョンを元に戻すことができるように、スナップショットには仮想マシンのバージョンも忘れずに取り込んでください。
- PowerCLI コマンドの評価
-
(Get-VM -Name $VM | Get-View) | Select-Object -Property Name,@{Name='HW Version';Expression={$_.Config.Version}}
- PowerCLI コマンドの修正例
-
Set-VM -VM $VM -HardwareVersion vmx-19