All’avvio di Windows 11 compare un avviso in cui il sistema segnala che SecurityHealthSSO.dll
“non è progettato per essere eseguito in Windows” (errore 0xc000012f). Il messaggio ricompare a ogni riavvio: seguendo questa guida potrai eliminarlo in modo sicuro, aggiornando la piattaforma di sicurezza o sostituendo la DLL corrotta.
Sintomo
All’accensione o al riavvio di Windows 11 viene visualizzata la finestra con titolo “Bad Image” e testo simile:
C:\Windows\System32\SecurityHealth\10.0.27777.1008-0\SecurityHealthSSO.dll
is either not designed to run on Windows or it contains an error (0xc000012f).
Dopo avere premuto OK il desktop si carica regolarmente, ma l’avviso ritorna a ogni sessione.
Causa
SecurityHealthSSO.dll
è parte integrante di Windows Security (ex Windows Defender). Se la DLL:
- è stata danneggiata da uno spegnimento improvviso,
- è stata sostituita da software di terze parti,
- appartiene a una build insider o precedente,
- non corrisponde alla versione effettiva della piattaforma di sicurezza,
Windows blocca il caricamento del modulo, generando l’errore Bad Image.
Soluzione rapida consigliata
Prima di ricorrere alla sostituzione manuale, prova ad aggiornare la piattaforma di sicurezza. Microsoft rilascia periodicamente il pacchetto securityhealthsetup_<versione>.exe
tramite Windows Update e Catalog Update:
- Scarica l’ultima versione coerente con la tua build del sistema.
- Avvia il file (non mostra finestre né richiede opzioni).
- Riavvia il PC e verifica se l’avviso è sparito.
Se il problema persiste, applica la procedura completa di sostituzione DLL descritta di seguito.
Procedura dettagliata di sostituzione DLL
Prerequisiti
• Utente con diritti amministrativi.
* Ripristino configurazione di sistema attivo (consigliato).
* Antivirus aggiornato per verificare la libreria scaricata.
Scaricare la libreria corretta
- Identifica esattamente il numero di versione nel percorso dell’errore (esempio:
10.0.27777.1008-0
). - Recupera
SecurityHealthSSO.dll
con lo stesso numero di versione da una fonte affidabile (PC con la stessa build, ISO ufficiale, repository interno). - Scansiona il file con l’antivirus.
Preparare la cartella temporanea
mkdir C:\Temp
copy <percorso_download>\SecurityHealthSSO.dll C:\Temp
Prendere possesso e sostituire la DLL
Apri Prompt dei comandi (amministratore) e inserisci:
cd /d C:\Windows\System32\SecurityHealth\10.0.27777.1008-0
takeown /f SecurityHealthSSO.dll /a
icacls SecurityHealthSSO.dll /grant *S-1-5-32-544:(F)
copy /y C:\Temp\SecurityHealthSSO.dll
- takeown imposta il gruppo Administrators come proprietario.
- icacls assegna controllo completo all’amministratore corrente.
- copy /y sovrascrive la DLL corrotta senza chiedere conferma.
Riavviare e verificare
Al riavvio l’avviso non dovrebbe più comparire. Se Persiste, controlla di aver copiato la libreria nella cartella esatta e con la stessa versione numerica.
Pulizia facoltativa
rmdir /s /q C:\Temp
Procedura alternativa di aggiornamento piattaforma
Se non vuoi sostituire manualmente la DLL, puoi aggiornare l’intera piattaforma:
- Scarica da Catalog Update il pacchetto
securityhealthsetup_<numero>.exe
più recente. - Esegui il file (non richiede parametri).
- Durante il riavvio Windows installerà automaticamente i binari aggiornati in
C:\Windows\System32\SecurityHealth\
. - Al termine controlla in Impostazioni → Privacy e sicurezza → Sicurezza di Windows → Informazioni versione che il campo Piattaforma antimalware corrisponda alla build scaricata.
Se l’errore continua, torna alla Procedura dettagliata di sostituzione DLL.
Varianti e precauzioni
Scenario | Adattamento |
---|---|
Numero di versione diverso (es. 10.0.27703.1006-0 ) | Adegua il percorso nelle istruzioni e usa la DLL con lo stesso numero. |
Permessi negati durante la copia | Verifica di aver aperto il Prompt come amministratore e di avere eseguito correttamente takeown e icacls . |
Impossibile estrarre la DLL | Usa “Estrai tutto” del menu ZIP o un tool come 7‑Zip, quindi copia manualmente la DLL in C:\Temp . |
Risoluzione dei problemi successivi
- Sicurezza di Windows non si apre – Assicurati di aver riavviato; in caso contrario esegui il reboot. Se resta il problema, raccogli log con FRST e analizza le voci relative a
SecurityHealth
. - Altri file di sistema corrotti – Lancia
SFC /scannow
per riparare i componenti base. Se non basta, usaDISM /Online /Cleanup-Image /RestoreHealth
. - Event Viewer – Controlla in Registri di Windows → Applicazione gli eventi
1000
e1001
per confermare cheSecurityHealthSSO.dll
non venga più caricato con errore.
Domande frequenti
Perché l’errore appare solo dopo un aggiornamento cumulativo?
Dopo alcuni aggiornamenti mensili, Windows sposta i moduli di sicurezza in nuove sottocartelle con numero di build superiore. Se il vecchio file rimane registrato nel sistema, Windows tenta comunque di caricarlo all’avvio generando il conflitto.
Posso usare Ripristino configurazione di sistema anziché sostituire la DLL?
Sì, a patto che tu disponga di un punto di ripristino creato prima della comparsa dell’errore. Nel caso non ne avessi, la sostituzione manuale resta il metodo più veloce.
La mia installazione è Windows 10: la guida vale lo stesso?
Sì, il componente SecurityHealthSSO.dll
è condiviso fra Windows 10 (1809 e successivi) e Windows 11. Le cartelle e i comandi rimangono identici; cambia solo il numero di build.
Verifiche aggiuntive consigliate
Dopo la riparazione, puoi eseguire questi controlli per massima sicurezza:
- Apri Task Manager → Dettagli e assicurati che il processo
SecurityHealthService.exe
punti alla stessa sottocartella della DLL sostituita. - Esegui una scansione rapida di Windows Defender per confermare che il motore antimalware funzioni.
- Controlla con
Get-MpComputerStatus
in PowerShell che i campi AMServiceEnabled e AntispywareEnabled siano True.
Riepilogo essenziale
• Prova prima a installare securityhealthsetup_*.exe
per aggiornare la piattaforma.
* Se il messaggio d’errore persiste, sostituisci SecurityHealthSSO.dll
con la versione corretta usando takeown → icacls → copy
.
* Riavvia il PC, elimina la cartella temporanea e verifica che Sicurezza di Windows funzioni.
* Per anomalie residue usa FRST, SFC e DISM per ulteriori diagnosi.