掲載日:2023/06/07

実践サイバーハイジーン:Microsoft Endpoint Manager(Intune)とHP Image Assistant(HPIA)によるドライバー更新の自動化

実践サイバーハイジーン

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

 

はじめに

今回は、Microsoft Endpoint Manager(Intune)とHP Image Assistant(HPIA)を使用してHPビジネスPCのデバイスドライバーの更新を自動化する方法を説明します。HPIAは実行したPCのOSイメージ(BIOS、ドライバー、HPソフトウェアなど)をHPの工場イメージの最新の構成と比較し、推奨するドライバーやソフトウェアをHP.COMからダウンロードしてインストールすることができます。対象のPCに事前にインストールされているHPIAを、Intuneの「プロアクティブな修復」の機能を利用して定期的に実行し、デバイスのドライバーが最新かどうかチェックし、最新でなかった場合にはドライバー更新します。

 

前提条件

対象のPCはMicrosoft Endpoint Manager(Intune)に登録されていている必要があります。対象のPCにはHPIAがインストールされている必要があります。Microsoft Endpoint Manager(Intune)を使用してHPIAをインストールする方法は、「実践サイバーハイジーン:Microsoft Endpoint Manager(Intune)でHP Image Assistant(HPIA)を展開する」を参照してください。次のいずれかのライセンスが必要です。

  • Windows 10/11 Enterprise E3またはE5、またはMicrosoft 365 F3、E3、またはE5
  • Windows 10/11 Education A3またはA5、またはMicrosoft 365 A3またはA5

 

事前準備

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

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

注記:下記のスクリプトではHIPAがC:\SWSetup\SP143766フォルダにインストールされていることを前提としています。違うフォルダにインストールされている場合はC:\SWSetup\SP143766の部分を実際のフォルダに置き換えてください。

 

$HPIA_folder = "C:\SWSetup\SP143766"

$HPIA_reco = "$HPIA_folder\Recommendations"

$HPIA_exe = "$HPIA_folder\HPImageAssistant.exe"

$HPIA_category = "Drivers,Firmware"

 

        if([System.IO.File]::Exists($HPIA_exe)){

        if(Test-Path $HPIA_reco){Remove-Item $HPIA_reco -Recurse -Force}

        Start-Process $HPIA_exe -ArgumentList "/Operation:Analyze /Category:$HPIA_category /Action:List /Silent /ReportFolder:""$HPIA_reco""" -Wait

        $HPIA_analyze = Get-Content "$HPIA_reco\*.json" | ConvertFrom-Json

 

        if($HPIA_analyze.HPIA.Recommendations.count -lt 1){

            Write-Output "Compliant, no drivers needed"

            Exit 0

        }else{

            Write-Warning "Found drivers reccomend to be installed: $($HPIA_analyze.HPIA.Recommendations)"

            Exit 1

        }

       

       }else{

        Write-Error "HP Image Assistant missing"

        Exit 1

    }

 

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

注記:下記のスクリプトではHIPAがC:\SWSetup\SP143766フォルダにインストールされていることを前提としています。違うフォルダにインストールされている場合はC:\SWSetup\SP143766の部分を実際のフォルダに置き換えてください。

 

$HPIA_folder = "C:\SWSETUP\SP143766"

$HPIA_report = "$HPIA_folder\Report"

$HPIA_exe = "$HPIA_folder\HPImageAssistant.exe"

$HPIA_category = "Drivers"

 

Start-Process $HPIA_exe -ArgumentList "/Operation:Analyze /Action:Install /Category:$HPIA_category /Silent /AutoCleanup /reportFolder:""$HPIA_report""" -Wait

    $HPIA_analyze = Get-Content "$HPIA_report\*.json" | ConvertFrom-Json

    Write-Output "Installation completed:

$($HPIA_analyze.HPIA.Recommendations)"

 

Intuneの設定

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

  • Microsoft Endpoint Manager admin center portalにサインインします。
  • 「レポート」→「エンドポイント分析」→「プロアクティブな修復」を開き、「スクリプト パッケージの作成」をクリックします。
図1.プロアクティブな修復-スクリプトパッケージの作成 図1.プロアクティブな修復-スクリプトパッケージの作成

 

  • カスタムスクリプトの作成の基本タブで名前を入力します。
  • 任意で説明を入力し、「次へ」をクリックします。

 

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

 

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

 

  • 割り当てタブでこのプロアクティブな修復によるドライバー更新を割り当てるデバイスのグループを追加します。
  • スケジュールを変更したい場合は、スケジュールの下の「毎日」をクリックし、割り当て先の設定の編集画面から行います。
  • 「次へ」をクリックします。
図3.カスタムスクリプトの作成ー設定の編集 図3.カスタムスクリプトの作成ー設定の編集

 

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

 

これでプロアクティブな修復にドライバーを最新の状態にするスクリプトパッケージが作成されました。割り当てたデバイスグループに所属するPCに対して、設定したスケジュールに従い、ドライバー更新のスクリプトが展開されるようになり、PCのドライバーを最新に保つことができます。

 

Author : 日本HP