掲載日:2021/09/24

実践サイバーハイジーン:Microsoft Endpoint Manager(Intune)とHP Client Management Script Library(HPCMSL)によるBIOS更新

実践サイバーハイジーン

サイバー攻撃の多くは脆弱性を悪用して行われます。パッチや修正プログラムを適用して脆弱性を解消することは、サイバーセキュリティの基本ですが、リモートワークやハイブリッドワークを前提とした分散されたワークプレイスにおいて、インターネット経由してデバイスに対しOS、ドライバー、BIOSの修正プログラムの適用、各種設定を行うことは容易ではありません。“実践サイバーハイジーン”シリーズでは、このような環境下でHPのビジネスPCに対して効果的にパッチや修正プログラムを適用するノウハウを解説します。

 

はじめに

今回は、Microsoft Endpoint Manager(Intune)とHP Client Management Script Library(HPCMSL)を使用してHPビジネスPCのBIOSおよびシステムファームウェアを更新する方法を説明します。Intuneの「プロアクティブな修復」の機能を利用してデバイスのBIOSが最新かどうかチェックした後、BIOSおよびシステムファームウェアの更新をします。

 

前提条件

  • デバイスはIntuneに登録されていてHP Client Management Script Library(HPCMSL)がインストールされている。(HPCMSLの展開方法は「Microsoft Endpoint Manager(Intune)でHP Client Management Script Library(HPCMSL)を展開する」のブログ記事をご参照ください。)
  • 次のいずれかのライセンスがある。
    • Windows 10 Enterprise E3またはE5、またはMicrosoft 365 F3、E3、またはE5
    • Windows 10 Education A3またはA5、またはMicrosoft 365 A3またはA5
図1.プロアクティブな修復の条件 図1.プロアクティブな修復の条件

 

 

事前準備

PowerShellスクリプトファイルの作成

次の内容のPowerShellスクリプトファイル「detect.ps1」を作成します。

 

exit ([int](-not (Get-HPBIOSUpdates -check)))

 

次の内容のPowerShellスクリプトファイル「remediate.ps1」を作成します。

 

if (-not (Get-HPBIOSUpdates -check))

{

  Get-HPBIOSUpdates -Flash  -Bitlocker Suspend -Yes

}

exit 0

 

Intuneの設定

Intuneにプロアクティブな修復を設定します。

Microsoft Endpoint Manager admin center portalにサインインします。

「レポート」→「エンドポイント分析」→「プロアクティブな修復」を開き、「スクリプト パッケージの作成を」をクリックします。

図2.プロアクティブな修復-スクリプトパッケージの作成 図2.プロアクティブな修復-スクリプトパッケージの作成

 

カスタムスクリプトの作成の基本タブで名前を入力します。

任意で説明を入力し、「次へ」をクリックします。

図3.カスタムスクリプトの作成ー基本 図3.カスタムスクリプトの作成ー基本

 

  • 設定タブで検出スクリプト ファイルに「detect.ps1」を選択します。
  • 修復スクリプトファイルに「remediate.ps1」を選択します。
  • このスクリプトをログインした資格情報を使用して実行するに「いいえ」を選択します。
  • スクリプト署名チェックを強制に「いいえ」を選択します。
  • 64ビットのPowerShellでスクリプトを実行するに「はい}を選択します。

「次へ」をクリックします。

 

図4.カスタムスクリプトの作成ー設定 図4.カスタムスクリプトの作成ー設定

 

スコープタグではそのまま「次へ」をクリックします。

図5.カスタムスクリプトの作成ースコープ 図5.カスタムスクリプトの作成ースコープ

 

割り当てタブでこのプロアクティブな修復によるBIOS更新を割り当てるデバイスのグループを追加します。

スケジュールを変更したい場合は割り当て先の設定の編集画面から行います。

「次へ」をクリックします。

図6.カスタムスクリプトの作成ー割り当て 図6.カスタムスクリプトの作成ー割り当て

 

確認および作成タブでは設定した内容を確認し、「追加」をクリックします。

これでプロアクティブな修復にBIOSを最新の状態にするスクリプトパッケージが作成され、割り当てたデバイスグループにBIOS更新のスクリプトが展開されます。

  • BIOS更新のスクリプトが実行されたデバイスではスクリプトによる強制的な再起動は行いません。
  • 次回起動時にBIOSおよびファームウェアの更新が実行されます。
  • デバイスのBIOSが最新の場合、スクリプトは実行されますがBIOSの更新は実行されません。
図7.プロアクティブな修復に追加されたスクリプトパッケージ 図7.プロアクティブな修復に追加されたスクリプトパッケージ

 

Intuneのエンドポイント分析 | プロアクティブな修復画面で、追加したスクリプトパッケージ名「BIOSを最新の状態にする」をクリックすると検出の状態と修復の状態が確認できます。

 

検出の状態

問題なし:検出スクリプトを実行した結果、BIOSが最新であることが確認されました。

問題あり:検出スクリプトを実行した結果、BIOSが最新でないことが確認されました。

失敗:検出スクリプトの実行に失敗しました。

 

修復の状態

問題解決:修復スクリプトを実行して問題が解決しました。

再発:修復スクリプトを実行した後の2回目の検出で「問題あり」となりました。

失敗:修復スクリプトの実行に失敗しました。

 

注記:今回設定した修復スクリプトでは前述の通り、スクリプトが実行されたデバイスでは強制的な再起動は行わず、次回起動時にBIOSおよびファームウェアの更新が行われるため、修復の状態は「問題解決」にはならず、「再発」になります。次回のスクリプトの実行までの間に再起動してBIOSが更新されていればそのデバイスの検出の状態が「問題なし」になります。

図8.検出および修復の状態 図8.検出および修復の状態

 

「デバイスの状態」をクリックするとデバイスごとの検出と修復の状態のが確認できます。

図9.デバイスの状態 図9.デバイスの状態

関連記事