Microsoft ha pubblicato martedì 10 agosto, nel solito pacchetto “Patch Tuesday“, un nuovo fix per la vulnerabilità PrintNightmare nello spooler di stampa di Windows. “La nostra indagine su diverse vulnerabilità indicate collettivamente come PrintNightmare ha determinato che il comportamento predefinito di Point and Print non fornisce ai clienti il livello di sicurezza necessario per proteggersi da potenziali attacchi”, ha annunciato Microsoft in un nuovo avviso.
Sfruttando questa vulnerabilità, un utente malintenzionato può eseguire codice arbitrario con privilegi SYSTEM.
Indice degli argomenti
La patch di Microsoft contro PrintNightmare
“Oggi, stiamo affrontando questo rischio cambiando il comportamento predefinito di installazione e aggiornamento del driver Point and Print per richiedere i privilegi di amministratore. L’installazione di questo aggiornamento con le impostazioni predefinite attenuerà le vulnerabilità pubblicamente documentate nel servizio Windows Print Spooler.”
Forse il fix non è definitivo
Alcuni esperti segnalano però che è ancora possibile sfruttare la vulnerabilità (vedi sotto).
Great #patchtuesday Microsoft, but did you not forgot something for #printnightmare? 🤔
Still SYSTEM from standard user…
(I may have missed something, but #mimikatz🥝mimispool library still loads… 🤷♂️) pic.twitter.com/OWOlyLWhHI
— 🥝 Benjamin Delpy (@gentilkiwi) August 10, 2021
PrintNightmare: perché la patch non basta
Già dopo la prima patch i ricercatori Matthew Hickey, co-fondatore di Hacker House, e Will Dormann, analista di vulnerabilità per CERT/CC, hanno scoperto che il blocco dell’esecuzione di codice remoto può essere facilmente aggirato semplicemente modificando gli exploit in circolazione in modo da poterli utilizzare sui sistemi in cui è attiva la modalità “Point And Print” che potrebbe consentire di installare driver dannosi.
Altri test condotti da ricercatori indipendenti hanno confermato la parziale inefficacia dell’aggiornamento, per cui la vulnerabilità PrintNightmare continua per il momento a rappresentare un vero e proprio incubo per tutti i sistemisti e gli esperti di sicurezza.
In particolare, l’aggiornamento Microsoft per la vulnerabilità CVE-2021-34527 non impedisce efficacemente lo sfruttamento dei sistemi in cui la chiave NoWarningNoElevationOnInstall di Point and Print è impostata sul valore 1.
La stessa Microsoft, da parte sua, ha confermato nel suo advisory che la funzionalità Point and Print non è direttamente collegata alla vulnerabilità PrintNightmare, ma la tecnologia indebolisce effettivamente la postura di sicurezza locale dei sistemi Windows consentendo lo sfruttamento malevolo del bug.
Cosa fare per mitigare la vulnerabilità PrintNightmare
In ogni caso, è sempre bene installare l’aggiornamento di sicurezza.
Per farlo, è sufficiente accedere alle Impostazioni di Windows (basta digitare Impostazioni nella barra delle applicazioni e premere Invio), spostarsi nella sezione Aggiornamento e sicurezza, poi in Windows Update e installare l’ultimo aggiornamento di luglio, se disponibile per il proprio sistema.
Detto questo, è ancora la stessa Microsoft a suggerire agli utenti di disabilitare temporaneamente lo spooler di stampa per mitigare il problema relativo al bug PrintNightmare e mettere in sicurezza i sistemi esposti.
In infrastrutture grandi e complesse, però, potrebbe essere difficile localizzare gli endpoint in cui viene usato lo spooler di stampa. In genere, questo servizio è necessario:
- quando si usano i servizi Citrix;
- sui server fax;
- nel caso in cui venga utilizzata la stampa virtuale o fisica di documenti in formato PDF, XPS e simili come ad esempio nel caso dei servizi di fatturazione e applicazioni salariali.
In altri casi, invece, lo spooler di stampa potrebbe essere attivo di default anche se non necessario. Ad esempio:
- nei Domain Controller e Active Directory;
- nei server SQL ed Exchange o nel File System;
- più in generale negli endpoint che non necessitano di stampare.
In questi casi, è possibile disabilitare lo spooler di stampa seguendo questi semplici passaggi:
- selezionare l’icona del menu Start con il tasto destro del mouse e selezionare la voce Windows PowerShell (amministratore);
- digitare il seguente comando Stop-Service -Name Spooler -Force e premere Invio per disabilitare lo spooler di stampa;
- digitare il comando Set-Service -Name Spooler -StartupType Disabled, sempre seguito da Invio, per bloccare il servizio;
- chiudere la finestra di PowerShell.
Qualora fosse necessario riattivare lo spooler di stampa, è sufficiente seguire questi altri passaggi:
- selezionare l’icona del menu Start con il tasto destro del mouse e selezionare la voce Windows PowerShell (amministratore);
- digitare il seguente comando Set-Service -Name Spooler -StartupType Automatic e premere Invio per abilitare lo spooler di stampa;
- digitare il comando Start-Service -Name Spooler, sempre seguito da Invio, per avviare il servizio;
- chiudere la finestra di PowerShell.
Una soluzione alternativa per mitigare il rischio
Infine, un altro workaround alternativo per mitigare la vulnerabilità PrintNightmare consiste nell’abilitare le richieste di sicurezza per Point and Print e limitare i privilegi di installazione dei driver di stampa solo agli amministratori configurando il valore di registro RestrictDriverInstallationToAdministrators: in questo modo, è possibile impedire agli utenti con bassi privilegi di installare i driver di stampa su un server di stampa.