APM: Fehler 0x00000020 – Prozess kann nicht auf Datei zugreifen

By | 21. August 2018

Beim Rollout von APM (Ivanti Advanced Patch Management) kam es vermehrt zu folgenden Einträgen in das Log:

Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. (0x00000020)

 

Der entsprechende Patch ließ sich nicht installieren, das Paket ging in den Status „Rot“. Auch ein erneutes Installieren brachte keinen Erfolg.

Das Log (C:\Program Files (x86)\Common Files\enteo\NiLogs\PatchMgmt\InstallPatch_SYSTEM_AGG.log) zeigt beispielsweise folgende vollständige Meldung:

07:12.02.342 0 NiWuPrxy.exe Adding ‚C:\Program Files (x86)\Common Files\enteo\RepositoryCache\153640\rev\1\windows10.0-kb4343902-x64-1709.msu‘
07:12.02.342 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\Common Files\enteo\RepositoryCache\153640\rev\1\windows10.0-kb4343902-x64-1709.msu‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\windows10.0-kb4343902-x64-1709.msu‘
07:12.02.358 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\7z.dll‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\7z.dll‘
07:12.02.358 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\CL5.exe‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\CL5.exe‘
07:12.02.358 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\DeployEvents.dll‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\DeployEvents.dll‘
07:12.02.358 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\SafeReboot.exe‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\SafeReboot.exe‘
07:12.02.373 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\SafeReboot64.exe‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\SafeReboot64.exe‘
07:12.02.373 1 NiWuPrxy.exe Copying ‚C:\Program Files (x86)\DSM Patch Management\STDeploy.exe‘->’C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\STDeploy.exe‘
07:12.02.389 0 NiWuPrxy.exe Deploying patch
07:12.02.389 2 NiWuPrxy.exe Deploying package: C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\install.zip
07:12.02.389 2 NiWuPrxy.exe Using deployment base directory: C:\APM\deploy
07:12.02.389 2 NiWuPrxy.exe Staging directory will be removed after the installation: ‚C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58‘
07:12.02.389 2 NiWuPrxy.exe Setting result path: C:\APM\result.txt
07:12.02.389 2 NiWuPrxy.exe Process name: C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\STDeploy.exe
07:12.02.389 2 NiWuPrxy.exe Command line: „C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\STDeploy.exe“ package=“C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58\install.zip“ removeStaging=yes baseDir=“C:\APM\deploy“
07:12.02.389 2 NiWuPrxy.exe Working directory: C:\APM\MS18-08-AFP-4343902 (Q4343902)#2018-08-20T07~11~58
07:12.02.389 2 NiWuPrxy.exe Timeout = 14400000
07:12.02.389 2 NiWuPrxy.exe Process has to be terminated after timeout of 14400000 ms expired. Creating job object.
07:12.02.389 2 NiWuPrxy.exe Job object created successfully, process will be started suspended.
07:12.02.389 2 NiWuPrxy.exe Starting process now
07:12.02.639 0 NiWuPrxy.exe Assigning process to job
07:12.02.639 0 NiWuPrxy.exe Waiting for process to finish
07:12.02.717 0 NiWuPrxy.exe Process finished
07:12.02.717 2 NiWuPrxy.exe Process finished with exit code 32
07:12.02.717 E Warning (Module:NiWuPrxy.exe, Severity:0x03): NiWuPrxy.exe STDeploy failed
Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. (0x00000020)
07:12.02.717 : End Of Logfile

 

Was jedoch half, war die Deaktivierung unserer Antivirus-Lösung TrendMicro. Danach liefen die Pakete ohne Probleme durch. Nach Rücksprache mit dem Ivanti Support sind wir auch nicht die einzigen mit dem Problem „APM Patches in Kombination mit TrendMicro“. Daraufhin habe ich ein Ticket bei TM eröffnet und erhielt auch prompt eine Antwort:

Staring from XG SP1, Predictive Machine Learning detects unknown security risks in an aggressive way and it may cause this kind of side effect.

Our developers provided this feature for users to approve programs to run with deferred scanning by Predictive Machine Learning to prevent similar issues the customer encountered.

* DS_ProcessCount=the number of programs in the approved list, supports any integer from 1 to

1000

* DS_ProcessName000=process name of the approved program, where „000“ notes the first item on the list For example:

* [Global Setting]

* DS_ProcessCount=4

* DS_ProcessName000=iexplore.exe

* DS_ProcessName001=Chrome.exe

* DS_ProcessName002=FireFox.exe

* DS_ProcessName003=WINWORD.EXE

 

Aus dieser Vorlage habe ich mir zum Testen folgende Einstellungen erstellt:

[Global Setting]
DS_ProcessCount=7
DS_ProcessName000=NiAgnt32.exe
DS_ProcessName001=NIInst32.exe
DS_ProcessName002=NiWuPrxy.exe
DS_ProcessName003=STDeploy.exe
DS_ProcessName004=CL5.exe
DS_ProcessName005=SafeReboot64.exe
DS_ProcessName006=SafeReboot.exe

Dazu habe ich alle ausführbaren Dateien, die von APM kopiert bzw. benutzt werden, dort eingetragen und die beiden üblichen für die SW-Verteilung verantwortlichen (man weiß ja nie).

Die Einstellungen kommen dann auf dem OfficeScan Server in die Datei „Ofcscan.ini“ im Ordner \PCCSRV. Es ist nötig, den master service anzuhalten, sonst darf man nicht in die Datei schreiben. Danach müssen die Agents über die Webkonsole noch aktualisiert werden. Wenn das geklappt hat, findet man auf dem Client in der Datei TXS.ini folgenden Eintrag:

[TrendX_Settings]

DS_ProcessCount=4

DS_ProcessName000=“The encrypted string of the preferred program“

DS_ProcessName001=“The encrypted string of the preferred program“

DS_ProcessName002=“The encrypted string of the preferred program“

DS_ProcessName003=“The encrypted string of the preferred program“

 

Danach verlief die Installation auf Hardware ohne Probleme, VM’s haben die Einstellung nicht angezogen. Das Ticket dazu ist noch offen, Update folgt.

Update:

Die VM’s haben die Einstellung nun auch, warum konnte mir der Support auch nicht erklären. Nach einem Monat testen sind jedoch wieder einige Pakete auf Rot gegangen (z.B. Office Shared Components). Ein Tip aus dem Ivanti Forum brachte dann die Lösung:

Man kann in der TrendMicro Konsole Hash-Werte der betroffenen Dateien eintragen. Dazu eine Poweshell-Console öffnen und folgenden Befehl absetzen:

C:\Program Files (x86)\DSM Patch Management> Get-FileHash .\STDeploy.exe -Algorithm SHA1

Den Befehl am besten für jede oben genannte Datei ausführen (Ordner und Dateiname muss entsprechend angepasst werden). In TrendMicro sieht das dann so aus:

 

Schreibe einen Kommentar