KB5034768 per Windows Server 2019 può innescare un BSOD subito dopo il riavvio, in particolare su VM con agent EDR non compatibili (es. edrdrv.sys
di Xcitium/Comodo). In questa guida trovi cause, diagnosi e procedure verificate per ripristinare il server e prevenire recidive.
Panoramica del problema
Dopo l’installazione dell’aggiornamento cumulativo KB5034768 su Windows Server 2019 Standard v1809, alcuni amministratori hanno osservato il riavvio con schermata blu e successivo loop di arresti. Il comportamento è tipicamente associato alla build 17763.5458 ed è particolarmente frequente in ambienti virtualizzati Hyper‑V con SQL Server 2014 installato. VM derivate dallo stesso ISO ma prive di SQL o di specifici agent di sicurezza non manifestano il difetto.
Quando si manifesta
- Il server completa l’installazione della patch e richiede un riavvio.
- Al boot successivo, prima o immediatamente dopo la schermata d’accesso, compare il Blue Screen of Death.
- Lo stop può ripetersi in loop, impedendo l’avvio in modalità normale.
Sintomi e codici di errore
- 0xc000021a – arresto critico dei processi di sistema (STATUSSYSTEMPROCESS_TERMINATED: discrepanza tra Winlogon, CSRSS e relative DLL).
- DRIVERUNLOADEDWITHOUTCANCELLINGPENDING_OPERATIONS (BugCheck 0xCE) – in correlazione con il driver
edrdrv.sys
del client Xcitium/Comodo EDR.
Ambienti in cui è più probabile
- VM Hyper‑V con snapshot/backup consistenti a caldo eseguiti durante il ciclo di patching.
- Server con SQL Server 2014 (possibile fattore di amplificazione, non necessariamente causa primaria).
- Sistemi con agent EDR/AV di terze parti che installano driver in modalità kernel (es.
edrdrv.sys
).
Cause e fattori scatenanti
Possibile causa | Dettagli | Come incide |
---|---|---|
Driver di terze parti non compatibile | Il file edrdrv.sys appartiene al client Xcitium/Comodo EDR. Dopo l’aggiornamento, il driver viene scaricato in modo non corretto nella sequenza di bootstrap. | Genera BSOD con messaggio “DRIVER UNLOADED WITHOUT CANCELLING PENDING OPERATIONS”. |
Incongruenze nei file di sistema introdotte da KB5034768 | L’errore 0xc000021a segnala discrepanze tra processi di sistema e le rispettive DLL (es. versioni non allineate post‑patch). | Se il rollback della patch elimina il problema, la patch funge da trigger dell’incoerenza. |
Servizi SQL attivi durante l’update (ipotesi) | L’unica VM con SQL installato mostra il difetto; arrestare il servizio non basta sempre a prevenire l’effetto domino. | Fattore concausale che può aumentare la probabilità del BSOD senza esserne la causa principale. |
Verifiche preliminari e raccolta evidenze
Prima di intervenire, raccogli quanto segue (anche da WinRE o Safe Mode):
- Conferma versione e build:
ver systeminfo | findstr /B /C:"OS Name" /C:"OS Version" reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentBuildNumber
- Verifica della patch:
dism /online /Get-Packages | findstr 5034768 wmic qfe | find "KB5034768" powershell -Command "Get-HotFix -Id KB5034768"
- Ricerca del driver EDR:
dir C:\Windows\System32\drivers\edrdrv.sys wmic sysdriver where "PathName like '%edrdrv%'" get Name,State,PathName sc query type= driver state= all | findstr /I edr
- Dump e log:
copy C:\Windows\Minidump\*.dmp X:\raccolta\Minidump\ copy C:\Windows\memory.dmp X:\raccolta\memory.dmp wevtutil epl System X:\raccolta\System.evtx wevtutil epl Application X:\raccolta\Application.evtx
Procedure di ripristino verificate
Server ancora avviabile in modalità normale o provvisoria
- Avvio in Safe Mode: da Advanced Startup seleziona Startup Settings → Enable Safe Mode (o con rete se ti serve accesso ai repository interni).
- Abilita Windows Installer in Safe Mode (richiede prompt elevato):
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\MSIServer" /VE /T REG_SZ /D Service /F net start msiserver :: Se in "Safe Mode with Networking": reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\MSIServer" /VE /T REG_SZ /D Service /F net start msiserver
- Disinstalla l’EDR non compatibile (Xcitium/Comodo o altro software che installa
edrdrv.sys
). Usaappwiz.cpl
o l’uninstaller del vendor. In alternativa:wmic product where "Name like '%%EDR%%' or Name like '%%Xcitium%%' or Name like '%%Comodo%%'" call uninstall /nointeractive
- Riavvia normalmente e verifica la stabilità. Se il server riparte, potrai:
- aggiornare l’agente EDR alla build corretta;
- valutare la reinstallazione di KB5034768 dopo aver aggiornato o sostituito il driver.
Server non avviabile (loop di BSOD)
- Accedi al Recovery Environment: Repair your computer → Troubleshoot → Command Prompt.
- Individua la lettera dell’unità Windows:
diskpart list vol
Esci dadiskpart
e annota il volume che contiene la cartellaWindows
(nell’esempioD:
). - Revert delle azioni in sospeso:
DISM /Image:D:\ /Cleanup-Image /RevertPendingActions
Riavvia. Se il problema persiste, prosegui. - Elenco pacchetti installati:
DISM /Image:D:\ /Get-Packages | more DISM /Image:D:\ /Get-Packages | findstr /I 5034768
- Rimozione di KB5034768 (sostituisci il nome completo del pacchetto):
DISM /Image:D:\ /Remove-Package /PackageName:PackageforRollupFix~31bf3856ad364e35~amd64~~17763.5458.x.y
Al termine, riavvia. - Se il boot fallisce ancora, isola il driver EDR:
ren D:\Windows\System32\drivers\edrdrv.sys edrdrv.sys.bak
In casi estremi carica offline l’hive di registro per disabilitare il servizio:reg load HKLM\OFFLINE_SYSTEM D:\Windows\System32\Config\SYSTEM reg add "HKLM\OFFLINESYSTEM\ControlSet001\Services\edrdrv" /v Start /t REGDWORD /d 4 /f reg unload HKLM\OFFLINE_SYSTEM
Quindi riavvia e disinstalla l’agente dalla modalità provvisoria.
Variante con riparazione dei file di sistema
Se sospetti incoerenze lato sistema:
sfc /scannow /offbootdir=D:\ /offwindir=D:\Windows
DISM /Image:D:\ /Cleanup-Image /RestoreHealth
La seconda operazione richiede file di origine (WIM/ISO) compatibili con la stessa build. Valuta di eseguirla solo dopo aver rimosso il driver confliggente.
Strategie di prevenzione in attesa di un fix
Blocco mirato della patch
Finché non disponi di una versione aggiornata dell’agente EDR o di una revisione stabile dell’update, evita l’installazione di KB5034768 sui sistemi a rischio.
- PowerShell con PSWindowsUpdate (ambiente stand‑alone):
Install-Module -Name PSWindowsUpdate -Force Import-Module PSWindowsUpdate Hide-WindowsUpdate -KBArticleID KB5034768 -HideStatus:$true Get-WindowsUpdate -MicrosoftUpdate
Nota: in ambienti server è preferibile usare WSUS/ConfigMgr per un controllo centralizzato. - WSUS: contrassegna KB5034768 come Declined o non approvarla per i gruppi interessati; crea una regola di approvazione mirata per gli altri server.
- ConfigMgr: rimuovi la patch dal Software Update Group che alimenta la ADR; valuta un SUG dedicato con esclusioni per i workload sensibili.
- Intune/Windows Update for Business: applica pause o deferrals sugli anelli che includono server 2019 critici; usa Feature updates e Quality updates con Safeguard holds dove appropriato.
Aggiornamento o sostituzione dell’EDR
- Contatta il vendor per ottenere un hot‑fix o una release dell’agente che aggiorni/riscriva
edrdrv.sys
con versione compatibile. - Nel frattempo, usa un profilo di protezione ridotto o una soluzione temporanea che non installi driver in kernel-mode sui server di business‑critical path.
Buone pratiche prima di patch critiche
- Snapshot/checkpoint delle VM immediatamente prima del ciclo di patch (e rimozione dello snapshot appena validato il risultato).
- Staging su un gruppo pilota di server con carichi realistici e gli stessi agent di sicurezza.
- Backup consistenti (soprattutto per SQL): preferisci backup a freddo o backup VSS-aware coordinati; pianifica un ripristino rapido.
- Avvertenza per i controller di dominio: evita rollback improvvisati; se ripristini da snapshot, accertati che l’hypervisor supporti il VM‑Generation ID e che il ripristino sia USN rollback safe.
Script e procedure pronte all’uso
Individuazione e rimozione online di KB5034768
:: Esegui come amministratore in un prompt CMD
for /f "tokens=2 delims=:" %a in ('dism /online /Get-Packages ^| findstr /I 5034768') do @echo %a
\:: Copia e incolla il testo completo dopo /PackageName:
DISM /Online /Remove-Package /PackageName\:Package\for\RollupFix~31bf3856ad364e35~amd64~~17763.5458.x.y /Quiet /NoRestart
\:: In alternativa con PowerShell
powershell -Command "Get-WindowsPackage -Online | ?{ $\_.PackageName -match '5034768' } | Remove-WindowsPackage -Online -NoRestart"
Verifica e inventario del driver EDR
powershell -NoProfile -Command ^
"Get-ChildItem C:\Windows\System32\drivers\edrdrv.sys -ErrorAction SilentlyContinue | `
Select-Object Name,FullName,@{N='Versione';E={(Get-Item $_.FullName).VersionInfo.FileVersion}}, `
@{N='Data';E={(Get-Item $_.FullName).LastWriteTime}} | Format-List"
Blocco preventivo della patch su più server
powershell -NoProfile -Command ^
"$servers = Get-Content .\servers.txt; `
foreach($s in $servers){ Invoke-Command -ComputerName $s -ScriptBlock { `
Import-Module PSWindowsUpdate; Hide-WindowsUpdate -KBArticleID KB5034768 -HideStatus:$true }}"
Domande frequenti
È colpa della patch o del driver?
Nella maggior parte dei casi la patch funge da innesco: porta in luce un’incompatibilità latente nel driver in kernel‑mode (edrdrv.sys
) che non gestisce correttamente il ciclo di bootstrap post‑update. La rimozione del driver o l’aggiornamento dell’agente risolve l’arresto nella quasi totalità dei casi osservati.
Perché il problema compare solo su alcuni server derivati dallo stesso ISO?
Perché il software installato sopra l’immagine di base è diverso: presenza di EDR/AV, versioni e policy del vendor, componenti SQL e servizi che si avviano presto nella pipeline di boot fanno la differenza.
Posso limitarmi a rimuovere l’aggiornamento?
Se rimuovere KB5034768 ristabilisce l’avvio, il sistema tornerà operativo, ma resterà esposto alle vulnerabilità coperte dall’update. È consigliabile aggiornare o sostituire l’EDR e poi installare una versione stabile della patch.
È sicuro rinominare il driver edrdrv.sys
?
È un workaround di emergenza per recuperare l’avvio. Dopo il riavvio, disinstalla correttamente l’agente e ripristina una protezione compatibile. Alcuni prodotti hanno meccanismi di self‑protection: preferisci l’uninstaller ufficiale quando possibile.
Quali rischi specifici con SQL Server 2014?
Se il server si arresta durante operazioni di I/O, potresti trovarti con database in recovery al primo avvio. Avere backup coerenti e un ordine di avvio/stop dei servizi collaudato riduce l’impatto. Evita rollback non coordinati su nodi con Always On o cluster di failover.
Sintesi operativa
- Diagnosi: il BSOD dopo KB5034768 è spesso legato a
edrdrv.sys
(Xcitium/Comodo EDR) o a incoerenze di file di sistema che emergono al riavvio. - Rimedi rapidi: disinstalla l’EDR da Safe Mode; in alternativa, rimuovi la patch offline con DISM (
/RevertPendingActions
e/Remove-Package
). - Prevenzione: blocca KB5034768 sui sistemi a rischio, aggiorna l’agente EDR, applica un rollout graduale con checkpoint e test realistici.
Checklist finale
- Conferma presenza di KB5034768 e del driver
edrdrv.sys
. - Se avvio possibile: Safe Mode → abilita
MSIServer
→ disinstalla EDR. - Se avvio impossibile: WinRE →
DISM /RevertPendingActions
→DISM /Remove-Package
per KB5034768. - Se ancora in stallo: rinomina
edrdrv.sys
o disabilita il servizio via registro offline. - Riparti in modalità normale, aggiorna/sostituisci l’EDR, riesegui il ciclo di patch su un gruppo pilota.
- Quando stabile, rimuovi snapshot/checkpoint e registra l’incidente con log e dump raccolti.
Approfondimento tecnico su 0xc000021a
Lo stop code 0xc000021a segnala che un processo di sistema in user mode (tipicamente Winlogon.exe o CSRSS.exe) è terminato in modo inatteso o risulta in conflitto con le rispettive librerie. Dopo un aggiornamento cumulativo, una mancata sostituzione atomica di determinate DLL o il caricamento di driver filtri che agganciano funzioni di sistema può portare alla desincronizzazione, causando l’arresto controllato del kernel a protezione dell’integrità del sistema.
Raccomandazioni conclusive
- Adotta logging di avvio e conserva i mini‑dump (
C:\Windows\Minidump
), utili per correlare rapidamente driver e stack di chiamate. - Infrastrutture critiche: pianifica maintenance window con rollback plan esplicito, inclusi RevertPendingActions e rimozione di pacchetti via DISM.
- Coordina il change con il vendor EDR: richiedi release note e versione del driver (
edrdrv.sys
) allineata a Windows Server 2019 build 17763.5458 o successive.