Il contenuto dei sistemi Windows che non utilizzano la crittografia dell’intera unità (hard disk o SSD) è facilmente accessibile da parte di terzi, utenti non autorizzati o veri e propri malintenzionati. Se l’unità non fosse cifrata con Bitlocker o VeraCrypt basta usare un semplice supporto di boot (Windows PE, una distribuzione Linux o anche il semplice supporto d’installazione di Windows) per accedere senza limitazioni al contenuto di file e cartelle, con la possibilità di copiare altrove il materiale (ad esempio in un supporto rimovibile o in un percorso di rete).
Con quest’articolo vogliamo dimostrare che chiunque abbia accesso fisico a un sistema Windows 10 aggiornato all’ultima versione (Windows 10 21H1 compreso) può addirittura creare nuovi utenti dotati di privilegi amministrativi e cambiare la password dei vari account presenti. A meno che, come evidenziato in apertura, sul sistema non siano stati attivati Bitlocker o strumenti similari.
Un trucco che permette di accedere al sistema Windows 10 in caso di password dimenticata
In molti conoscono il trucchetto che con le prime build di Windows 10 e con i sistemi operativi Microsoft più vecchi permetteva di aggiungere e attivare un nuovo account amministratore e modificare le password degli account utente in uso.
L’espediente si basava sull’utilizzo di alcuni strumenti di sistema per l’accessibilità ovvero progettati e sviluppati per migliorare l’esperienza d’uso dei dispositivi Windows da parte delle persone diversamente abili.
Utilizzando la console di ripristino di Windows 10 oppure il supporto d’installazione del sistema operativo si poteva resettare la password di qualunque account rinominando per esempio il file di sistema \windows\system32\sethc.exe
in \windows\system32\sethc.old
e copiando al suo posto il prompt dei comandi (copy c:\windows\system32\cmd.exe c:\windows\system32\sethc.exe
).
Fino a qualche tempo fa, riavviando la macchina e premendo per almeno cinque volte di fila il tasto MAIUSC
alla comparsa della schermata di logon di Windows 10, si poteva forzare la comparsa del prompt dei comandi dotato di diritti amministrativi.
Da quando sono state introdotte alcune modifiche al comportamento di Windows Defender (recentemente rinominato in Microsoft Defender) il “giochetto” non funziona più.
Windows Defender si accorge della modifica e mostra il messaggio d’errore “Impossibile completare l’operazione. Il file contiene un virus o un software potenzialmente indesiderato” relativamente al file \windows\system32\sethc.exe
. Eloquente la segnalazione: “Win32/Accessibility.Escalation.A“.
C’è un però. A conferma di quanto sia importante oggi crittografare l’intera unità con Bitlocker o soluzioni similari, è possibile – in maniera peraltro piuttosto agevole – a superare i controlli addizionali introdotti in Windows 10.
Si può quindi rimuovere la password di altri account, resettare la password di qualunque genere di account utente e creare nuovi account in Windows 10 forzando la comparsa del prompt dei comandi alla schermata di logon.
Di seguito spieghiamo i passaggi per procedere in modo manuale ma chi volesse usare una procedura del tutto automatizzata per accedere al sistema in caso di password dimenticata è possibile saltare direttamente al paragrafo Creare nuovi account amministrativi e reimpostare la password con un file batch.
1) Inserire in una chiavetta USB il supporto d’installazione di Windows 10. Allo scopo è possibile portarsi in questa pagina, fare clic su Scarica ora lo strumento quindi preparare una chiavetta USB avviabile con i file d’installazione di Windows 10.
2) Effettuare l’avvio del sistema dal tale supporto.
3) Alla comparsa della schermata per la scelta della lingua e del layout di tastiera, premere MAIUSC+F10
in modo da far apparire il prompt dei comandi.
4) Verificare l’unità nella quale è installato Windows 10. In questo ambiente, non necessariamente può trattarsi dell’unità C:. Digitare ad esempio dir C:\windows
e poi dir D:\windows
o ancora dir E:\windows
fino a trovare la lettera identificativa di unità corretta.
5) Digitare quindi regedit
, cliccare sul ramo HKEY_LOCAL_MACHINE
, scegliere il menu File, Carica hive quindi digitare D:\windows\system32\config\SOFTWARE
nella casella Nome file.
6) Dopo aver fatto clic sul pulsante Apri, l’Editor del registro di sistema chiederà di inserire un nome per la chiave che si sta caricando. Suggeriamo di inserire WINDOWS10
.
In questo modo si ha accesso al contenuto della chiave HKEY_LOCAL_MACHINE\SOFTWARE
dell’installazione di Windows 10 in uso.
7) Cliccare sul ramo HKEY_LOCAL_MACHINE\WINDOWS10
.
8) Portarsi in corrispondenza della chiave HKEY_LOCAL_MACHINE\WINDOWS10\Policies\Microsoft\Windows Defender
quindi, nel pannello di destra, cliccare con il tasto destro del mouse, selezionare Nuovo, Valore DWORD (32 bit) assegnandogli il nome DisableAntiSpyware
e il valore 1
.
In questo modo si è temporaneamente disattivato Windows Defender nell’installazione in uso di Windows 10.
9) Portarsi nella chiave HKEY_LOCAL_MACHINE\WINDOWS10\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
.
Cliccare quindi con il tasto destro del mouse su Image File Execution Options e scegliere Nuovo, Chiave.
Alla nuova sottochiave appena inserita attribuire il nome sethc.exe
.
10) Selezionare la chiave HKEY_LOCAL_MACHINE\WINDOWS10\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe
, cliccare nel pannello di destra quindi selezionare Nuovo, Valore stringa.
11) Assegnare al valore stringa appena aggiunto il nome debugger
e come valore c:\windows\system32\cmd.exe
.
12) Portarsi nella chiave HKEY_LOCAL_MACHINE\WINDOWS10\Microsoft\Windows Defender\Features
quindi modificare il valore DWORD TamperProtection
impostandolo a 0.
13) Premere ripetutamente la “X” delle varie finestre aperte per riavviare la macchina ed estrarre il supporto contenente i file d’installazione di Windows.
14) Alla comparsa della finestra di logon di Windows 10, premendo per cinque volte consecutivamente il tasto MAIUSC
, apparirà la finestra del prompt dei comandi.
Da qui, digitando ad esempio quanto segue, si potrà creare un nuovo account amministrativo:
net user testadmin /add
net localgroup administrators testadmin /add
Con il comando net user testadmin *
si potrà eventualmente impostare una password.
Lo stesso comando, specificando al posto di testadmin
il nome di un account realmente presente sulla macchina, permette di resettare la password di qualunque altro account: Windows 10 chiederà la nuova password da impostare.
Per annullare le modifiche apportate in precedenza, è possibile accedere a Windows 10 con un account dotato dei privilegi di amministratore, digitare cmd
nella casella di ricerca quindi premere CTRL+MAIUSC+INVIO
. Al prompt dei comandi scrivere quanto segue:
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe"
reg delete "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender" /v DisableAntiSpyware
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender\Features" /v TamperProtection /t REG_DWORD /d 1 /f
Dimenticata la password di un account utente Windows, anche amministrativo, la procedura illustrata nel nostro articolo si rivela utilissima.
Importante: gli interventi sopra indicati non funzionano se sul sistema Windows 10 in uso si fossero disattivati (manualmente o mediante script) i tasti di accessibilità ovvero la funzione del sistema operativo che di norma, premendo per almeno 5 volte consecutivamente il tasto MAIUSC
, determina la comparsa della finestra riprodotta in figura.
Per risolvere il problema semplificando e automatizzando il tutto, suggeriamo di usare il file batch presentato di seguito.
Creare nuovi account amministrativi e reimpostare la password con un file batch
Anziché effettuare tutta la procedura descritta in precedenza in modo manuale, è possibile creare il supporto di installazione di Windows 10 su supporto USB quindi copiarvi – nella directory radice – il file batch admin.bat
contenuto in questo archivio compresso.
Si tratta di un semplice script che abbiamo realizzato e che permette di effettuare automaticamente tutte le operazioni illustrate nel dettaglio nella prima parte dell’articolo.
Dopo aver avviato il sistema dal supporto di installazione di Windows 10, alla comparsa della schermata per la scelta della lingua e del layout di tastiera, si deve premere MAIUSC+F10
quindi spostarsi dalla cartella X:\Sources
all’unità contenente la cartella radice dell’unità USB (di solito da D:
in avanti).
Si può digitare ad esempio dir D:\admin.bat
o dir E:\admin.bat
o ancora dir F:\admin.bat
fino a trovare la lettera identificativa di unità corretta.
A questo punto si può digitare tale lettera rilevata in precedenza seguita da \admin.bat
.
Esempio d:\admin.bat
oppure e:\admin.bat
e così via.
Premendo il tasto invio file batch provvederà a modificare la configurazione della prima installazione di Windows 10 sull’hard disk o sull’SSD.
Al termine dell’operazione la macchina si avvierà automaticamente (dopo circa 10 secondi).
Come indicato nel messaggio mostrato sullo schermo, si deve rimuovere il supporto di installazione di Windows 10 e attendere che il sistema si riavvii.
Alla comparsa della schermata di logon di Windows 10 si dovrà premere per almeno 5 volte di seguito il tasto MAIUSC
. Comparirà così il prompt dei comandi utilizzabile per modificare le password degli account già presenti o creare un nuovo account dotato dei diritti amministrativi (vedere i comandi net user
presentati in precedenza).
Come si vede nell’immagine, nel nostro caso abbiamo creato un nuovo account testadmin
assegnandogli i diritti amministrativi. Tale account, una volta creato, diverrà immediatamente accessibile.
Se non lo si vedesse apparire nell’angolo inferiore sinistro della schermata di logon di Windows 10, riavviare il sistema operativo.
Nel caso in cui, come nell’esempio, non si fosse assegnata alcuna password all’account amministratore appena aggiunto (comando net user testadmin *
), a ogni successivo riavvio Windows 10 effettuerà automaticamente il login con tale account. Per uscire dall’account in uso si dovrà premere la combinazione di tasti ALT+F4
quindi scegliere la voce Esci.
Si può anche eventualmente abilitare e usare l’account amministratore nascosto in Windows ed effettuare l’accesso con quello senza password.
Se premendo 5 volte il tasto MAIUSC
non dovesse appare il prompt dei comandi al caricamento della schermata di logon si può risolvere come segue:
– Riavviare il sistema dal supporto di installazione di Windows 10
– Premere la combinazione di tasti MAIUSC+F10
in corrispondenza della schermata per la selezione della lingua e del layout di tastiera.
– Scrivere i seguenti comandi al prompt:
reg load HKU\WINDOWS10 E:\Users\Amministratore\NTUSER.DAT
reg add "HKU\WINDOWS10\Control Panel\Accessibility\StickyKeys" /v Flags /t REG_SZ /d "510" /f
reg add "HKU\WINDOWS10\Control Panel\Accessibility\ToggleKeys" /v Flags /t REG_SZ /d "62" /f
reg add "HKU\WINDOWS10\Control Panel\Accessibility\Keyboard Response" /v Flags /t REG_SZ /d "126" /f
reg unload HKU\WINDOWS10
Al posto di E: va specificata la lettera identificativa di unità corrispondente all’installazione di Windows 10 mentre al posto di Amministratore digitare il nome di un account utente dotato dei privilegi amministrativi.
Annullare le modifiche dopo l’utilizzo del file batch
Per annullare le modifiche dopo aver effettuato normalmente il login in Windows 10 con un qualunque account, basterà usare il file admin_remove.bat
cliccandovi con il tasto destro del mouse e scegliendo Esegui come amministratore.
Una soluzione alternativa: NTPWEdit
Basata sul noto tool chntpw, l’utilità NTPWEdit permette di modificare la password di qualunque account usando un approccio differente. Il programma non decodifica la password ma consente al boot di modificare il contenuto del file \WINDOWS\SYSTEM32\CONFIG\SAM
che appunto ospita le credenziali degli account utente in uso.
Per modificare la password dimenticata di un account Windows basta:
1) Creare la cartella ntpwedit
nella directory radice del supporto d’installazione di Windows 10 (creato utilizzando un supporto USB).
2) Salvare all’interno di tale cartella il contenuto di questo file compresso.
3) Riavviare il sistema dal supporto USB così configurato.
4) Alla schermata che permette di scegliere lingua e layout di tastiera, premere la combinazione di tasti MAIUSC+F10
.
5) Spostarsi dalla cartella X:\Sources
nell’unità contenente la cartella radice dell’unità USB (di solito da D:
in avanti).
Si può digitare ad esempio dir D:\ntpwedit
o dir E:\ntpwedit
o ancora dir F:\ntpwedit
fino a trovare la lettera identificativa di unità corretta.
6) Digitare tale lettera (ad esempio D:, E:, F: o altre) e premere Invio.
7) Scrivere cd ntpwedit
quindi ntpwedit64
.
8) Alla comparsa della finestra principale di NTPWEdit basterà assicurarsi che venga mostrato il percorso corretto nella casella Path to SAM file quindi cliccare su Open.
9) Selezionando uno degli account utente Windows e cliccando su Change password, si potrà scegliere e impostare una nuova password.
10) Come passaggio finale, ricordarsi di cliccare sul pulsante Save changes. Con un clic su Exit quindi sulle “X” delle varie finestre si potrà riavviare il sistema.
Quanto illustrato nell’articolo mette in evidenza come sia ormai fondamentale crittografare il contenuto dell’intera unità. A questo proposito suggeriamo di approfondire l’utilizzo di BitLocker per capire cos’è e come funziona e verificare come funzionano il recupero delle chiavi e lo sblocco con USB.
In alternativa si può usare anche l’opensource VeraCrypt.