[JPN-003] Cortex XDR Agent のインストール/アップグレード/アンインストールができない場合の調査方法 (Windows)

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 
L3 Networker
評価なし

はじめに

 

この記事では、Cortex XDR のトラブルシューティングに役立つ情報を紹介しています。下記の JPN-003 トレーニング動画よりも、詳細な情報が含まれています。

事前に JPN-003 トレーニング動画の視聴をお勧めいたします。

[JPN-003] Cortex XDR トラブル シューティング セミナー (情報収集編) [2023/4/28 更新]

 

また、実際に障害が発生しているにつきましては、弊社のナレッジベースもご活用ください。

 

本記事で説明する内容について

 

本記事では、Cortex XDR Agent のインストールやアップグレード、アンインストールが失敗する場合に、どのようなエラーが発生しているか、原因につながる情報を探す方法について解説します。

 

ログデータを用いた調査に進む前に

 

Cortex XDR Agent のインストールの要件や、リリースノート、エージェントが対応している OS の情報を参照し、インストールに必要な要件が揃っているか確認します。

Cortex XDR Agent for Windows Requirements

Cortex XDR Agent 8.4 Release Information

Where Can I Install the Cortex XDR Agent?

 

調査に使用するログデータ

 

  • Windows Installer ログ (MSIログ)
  • Windows Event ログ
  • trapsd.log

 

データの収集方法

 

A. インストールの場合

 

インストールに失敗する場合、サポートファイルの生成ができないため、下記のファイルを収集します。

%temp%\MSIxxxxx.LOG (xxxxx の部分はランダムで変更されます。) 

 

💡TIPS

ログは、インストールを実行したユーザーの Temp フォルダに格納されています。

%temp% を開く場合、インストールを実行したユーザがログインして開いてください。

 

B. アップグレードやアンインストールの場合

 

Cortex XDR サーバーからのアップグレードやアンインストールを行った場合は、ログファイルはサポートファイルに含まれています。アップグレードに失敗していても、ロールバックが正常に行われていれば、サポートファイルの生成は可能です。

そのため、まずはサポートファイルの収集を行ってみてください。

サポートファイルに含まれる内容については、こちらの記事もご参照ください。

[JPN-003] Support File に含まれるファイルについて (Windows)

アップグレードやアンインストールを Cortex XDR 管理コンソールから実行していたり、自動アップグレードでの実行の場合は、下記のフォルダにログが生成されています。

  • C:\programdata\cyvera\Logs\
    • uninstall-<日時>.log
    • upgrade-<日時>.log

サポートファイルの生成できない場合は、C:\programdata\cyvera フォルダを丸ごと収集します。

 

Windows Event ログは、サポートファイルに含まれています。
サポートファイルの生成ができない場合は、イベントビューアーを起動して、アプリケーションとシステムイベントログを保存します。

 

アップグレードやアンインストールを、ローカルで実行した場合は、インストール時と同様に %temp%\MSIxxxxx.LOG を収集します。また、インストール時のパラメータでログファイルのパスを指定して居る場合は、指定箇所から収集します。

 

MSI ログでのエラー内容の確認方法

 

インストーラが起動されると、Windows Installer ログ (診断ログ) に記録が残ります。

 

インストールが失敗する場合、ログの最後に下記のようにエラー番号が記録されます。

MSI (c) (88:AC) [08:54:27:095]: MainEngineThread is returning 1603

 

成功している場合は、0 が返されます。

MSI (c) (8C:B0) [10:28:23:636]: MainEngineThread is returning 0


インストールが失敗するほとんどのケースでは、1603 のエラーが返されています。この場合、エラーの意味は「インストール中に致命的なエラーが発生しました。」となりますが、このエラーからは原因と特定や判断することができません。
そのため、次に「Return Value 3」の文字列を探します。複数記録される場合がありますが、最初の「Return Value 3」の箇所より上の部分がエラーと内容です。

 

A. 事例その1

下記の例では、ExecServiceStartCA というアクションにより、Cortex XDR Agent のドライバやサービスが順次開始されています。他のドライバ類は開始に成功していますが、cyserver (Cortex XDR Service) を起動しようとしたところでエラーが発生しています。
エラーコード 0x800705b4 が出ていますので、これをインターネットや弊社のナレッジベースで検索すると、原因となる記事が見つかる場合があります。
ただし、インストーラのログのエラーだけで原因を特定できることはほとんどありません。未知の障害であった場合は、そこからさらに調査が必要となりますが、発生している事象がどういうものかを把握することに役立ちます。

Action 8:48:44: ExecServiceStartCA. Starting services
MSI (s) (40:08) [08:48:44:846]: Executing op: CustomActionSchedule(Action=ExecServiceStartCA,ActionType=3073,Source=BinaryData,Target=ExecServiceStartCA,CustomActionData=SchedServiceStartCA€cyvrmtgn€0€1€cyverak€0€1€cyvrfsfd€0€1€tedrdrv€0€1€cyserver€1€2)
MSI (s) (40:BC) [08:48:44:846]: Invoking remote custom action. DLL: C:\WINDOWS\Installer\MSI6F11.tmp, Entrypoint: ExecServiceStartCA
ExecServiceStartCA: Entering ExecServiceStartCA in C:\WINDOWS\Installer\MSI6F11.tmp, version 8.2.0.46438
ExecServiceStartCA: ServiceStartInternal: Starting cyvrmtgn service
ExecServiceStartCA: Service: cyvrmtgn
ExecServiceStartCA: StartServiceWait: Service is running
ExecServiceStartCA: ServiceStartInternal: Starting cyverak service
ExecServiceStartCA: Service: cyverak
ExecServiceStartCA: StartServiceWait: Service is running
ExecServiceStartCA: ServiceStartInternal: Starting cyvrfsfd service
ExecServiceStartCA: Service: cyvrfsfd
ExecServiceStartCA: StartServiceWait: Service is running
ExecServiceStartCA: ServiceStartInternal: Starting tedrdrv service
ExecServiceStartCA: Service: tedrdrv
ExecServiceStartCA: StartServiceWait: Service is running
ExecServiceStartCA: ServiceStartInternal: Starting cyserver service
ExecServiceStartCA: Service: cyserver
ExecServiceStartCA: Error 0x800705b4: Service failed transition to 4 state (current state 1)
ExecServiceStartCA: Error 0x800705b4: Failed, retrying (attempt no. 1)...
(中略)
ExecServiceStartCA: Error 0x800705b4: Failed, retrying (attempt no. 7)...
ExecServiceStartCA: Error 0x800705b4: Service failed transition to 4 state (current state 1)
ExecServiceStartCA: Error 0x800705b4: Failed to start service cyserver
ExecServiceStartCA: Error 0x800705b4: ServiceStartInternal failed
CustomAction ExecServiceStartCA returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
Action ended 8:53:31: InstallFinalize. Return value 3.

 

このようなサービスの起動失敗や、ドライバのロード失敗などは、Windows Event Log にエラーが記録されている場合があります。

サービスが起動しない要因は様々ありますが、上記の例では Application Error が発生していました。その場合、プロセスダンプを取得することでさらに調査を進めることができます。

 

B. 事例その2

 
下記の例では、Return Value 3 の戻り値の記録がありません。ログの内容も少なく、すぐに終了していることがわかります。
ログの最後に Windows Installer のエラー、1620 が記録されていますので。このエラーの内容は、下記の内容です。
  • ERROR_INSTALL_PACKAGE_INVALID
  • このインストール パッケージを開くことができませんでした。 アプリケーションの開発元に問い合わせて、これが有効な Windows インストーラー パッケージであることを確認してください。

このエラーが発生する場合、インストールパッケージが壊れています。新しいパッケージをダウンロードし直して対処します。

 

=== Verbose logging started: 2023/12/26 14:44:29 Build type: SHIP UNICODE 5.00.10011.00 Calling process: C:\WINDOWS\system32\msiexec.exe ===
MSI (c) (84:90) [14:44:29:671]: Resetting cached policy values
MSI (c) (84:90) [14:44:29:671]: Machine policy value 'Debug' is 0
MSI (c) (84:90) [14:44:29:671]: ******* RunEngine:
******* Product: c:\Installers\CortexXDR\Cortex_x64.msi
******* Action:
******* CommandLine: **********
MSI (c) (84:90) [14:44:29:671]: Client-side and UI is none or basic: Running entire install on the server.
MSI (c) (84:90) [14:44:29:671]: Grabbed execution mutex.
MSI (c) (84:90) [14:44:29:749]: Cloaking enabled.
MSI (c) (84:90) [14:44:29:749]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (84:90) [14:44:29:751]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (D4:10) [14:44:29:763]: Running installation inside multi-package transaction c:\Installers\CortexXDR\Cortex_x64.msi
MSI (s) (D4:10) [14:44:29:763]: Grabbed execution mutex.
MSI (s) (D4:80) [14:44:29:771]: Resetting cached policy values
MSI (s) (D4:80) [14:44:29:771]: Machine policy value 'Debug' is 0
MSI (s) (D4:80) [14:44:29:771]: ******* RunEngine:
******* Product: c:\Installers\CortexXDR\Cortex_x64.msi
******* Action:
******* CommandLine: **********
MSI (s) (D4:80) [14:44:29:772]: Note: 1: 2203 2: c:\Installers\CortexXDR\Cortex_x64.msi 3: -2147286775
MSI (s) (D4:80) [14:44:29:773]: MainEngineThread is returning 1620
MSI (s) (D4:10) [14:44:29:774]: User policy value 'DisableRollback' is 0
MSI (s) (D4:10) [14:44:29:774]: Machine policy value 'DisableRollback' is 0
MSI (s) (D4:10) [14:44:29:774]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (D4:10) [14:44:29:775]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (c) (84:90) [14:44:29:777]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (c) (84:90) [14:44:29:777]: MainEngineThread is returning 1620
=== Verbose logging stopped: 2023/12/26 14:44:29 ===

 

エラーコードの意味を調べる方法

A. Microsoft エラー ルックアップ ツールを利用する

 

各エラーコードの意味については、Microsoft エラー ルックアップ ツール を使用することで、それがどういったエラーなのか、確認することができます。

E:\>Err_6.4.5.exe 0x800705B4
# No results found for hex 0x800705b4 / decimal -2147023436
# as an HRESULT: Severity: FAILURE (1), FACILITY_WIN32 (0x7), Code 0x5b4
# for hex 0x5b4 / decimal 1460
ERROR_TIMEOUT winerror.h
# This operation returned because the timeout period expired.
# 1 matches found for "0x800705B4"

 

MSI のエラーコードも確認することができます。

E:\>Err_6.4.5.exe 1603
# for decimal 1603 / hex 0x643
ERROR_INSTALL_FAILURE winerror.h
# Fatal error during installation.
# No results found for hex 0x1603 / decimal 5635
# as an HRESULT: Severity: SUCCESS (0), FACILITY_NULL (0x0), Code 0x643
# for decimal 1603 / hex 0x643
ERROR_INSTALL_FAILURE winerror.h
# Fatal error during installation.
# 2 matches found for "1603"
E:\>Err_6.4.5.exe 1620
# for decimal 1620 / hex 0x654
ERROR_INSTALL_PACKAGE_INVALID winerror.h
# This installation package could not be opened. Contact the
# application vendor to verify that this is a valid Windows
# Installer package.
# No results found for hex 0x1620 / decimal 5664
# as an HRESULT: Severity: SUCCESS (0), FACILITY_NULL (0x0), Code 0x654
# for decimal 1620 / hex 0x654
ERROR_INSTALL_PACKAGE_INVALID winerror.h
# This installation package could not be opened. Contact the
# application vendor to verify that this is a valid Windows
# Installer package.
# 2 matches found for "1620"

 

B. マイクロソフト社のページを参照する

 

下記のページよりエラーコードの情報が見つかる場合があります。

エラー定数

Microsoft エージェントのエラー コード - Win32 apps 

アプリケーションのインストールに関する一般的なエラー コードのリファレンス


C. net helpmsg コマンドを使用する

 

0x8007 から始まるエラーの場合、下 4 桁を十進数に変換することで、エラーの確認できます。
例えば、0x800705b4 の場合、「05b4」を十進数に変換すると、「1460」となりますが、net helpmsg コマンドを実行すると、タイムアウトのエラーであることが確認できます。

C:\Windows\System32>net helpmsg 1460

タイムアウト期間が経過したため、この操作は終了しました。 

 

また、MSI のエラーコードも確認することができます。

C:\Windows\System32>net helpmsg 1620

このインストール パッケージを開くことができませんでした。 アプリケーションの開発元に問い合わせて、これが有効な Windows インストーラー パッケージであることを確認してください。

 

 

まとめ

 

インストール関連のエラーの原因調査は、その状況によっては追加のデータや詳細な調査が必要になる場合がありますが、どういうエラーが発生しているのか、を判断する材料となります。

また、複数端末でインストールに失敗している場合に、それらが同じ事象なのかを判断することができます。

複数の端末でインストール等が失敗していて、ログの出力内容が異なることが確認できた場合は、それぞれ別のケースとしてお問い合わせいただけると助かります。弊社での調査・対応をより円滑に行うことができます。

この記事を評価:
  • 83 閲覧回数
  • 0 コメント
  • 0 賞賛
  • 210 購読
Register or Sign-in
寄稿者
ラベル
記事ダッシュボード
バージョン履歴
最終更新日:
‎06-03-2024 07:28 PM
更新者: