Resettare la password di Windows usando Linux

Stamattina, in una delle tante minuscole aziende di consulenza informatica, cioè di “supporto tecnico sottopagato”, si è verificata una scena già vista milioni di volte: un cliente entra in preda al panico col computer in mano, e piangendo e gridando e roteando i pugni in aria e sparando fulmini dalle orecchie e non so che altro, annuncia di non ricordarsi più la password di Windows e scaraventa il computer su una scrivania con una forza tale da scinderla in due. La scrivania era quella del proprietario dell’azienda, nonché unico dipendente, che con calma ieratica ha detto «Vedremo cosa si può fare.» e ha immediatamente appaltato il lavoro a 3agle3ye in base a logiche che non starò a spiegare.

3agle3ye decide di usare Mint per risolvere il problema, ma solo perché in quel preciso istante era lì di fianco e aveva una chiavetta con Mint nella mano destra.

L’intera vicenda mi è stata raccontata da 3agle3ye, ma per qualche ragione l’articolo lo devo scrivere io: vabbbbbbè…

Il primo passo è montare la partizione NTFS nella quale si annida Windows, ma ciò va in contro a un primo ostacolo: a causa dell’inutile Fast Boot, la partizione non può essere montata. E allora giù di ntfsfix!

mint@mint ~ $ sudo ntfsfix /dev/sda3
Mounting volume... Windows is hibernated, refused to mount.
FAILED
Attempting to correct errors... 
Processing $MFT and $MFTMirr...
Reading $MFT... OK
Reading $MFTMirr... OK
Comparing $MFTMirr to $MFT... OK
Processing of $MFT and $MFTMirr completed successfully.
Setting required flags on partition... OK
Going to empty the journal ($LogFile)... OK
Windows is hibernated, refused to mount.
Remount failed: Operation not permitted

Stando a internet era l’unica soluzione, finale e definitiva, ma non sta chiaramente funzionando, non ha il coraggio e le capacità di rimuovere il file di ibernazione, non ce la fa, sarebbe chiedere troppo, nonostante secondo chiunque sia il meglio software per compiere questo temibile affronto verso Windows.

L’alternativa sarebbe avviare Windows e disattivare il Fast Boot con powercfg /h, ma ciò non è possibile perché 3agle3ye non sa la password (e il cliente nemmeno), e si era momentaneamente dimenticato dell’esistenza della modalità provvisoria, credo.

Comincia quindi una disperata ricerca di altre soluzioni su internet, ma saltano solo fuori guide sciamaniche senza senso sul forum di Ubuntu e gente che dice «A me non funzionava a caso e si è risolto da solo :DDDDD».

Alla fine salta fuori un comando, a quanto pare deprecato e proibito da utilizzare anche se mi sembra strano e non ho voglia di cercare se è deprecato davvero, ma che è l’unica cosa che funziona, intanto:

mint@mint ~ $ sudo mkdir /mnt/win
mint@mint ~ $ sudo ntfs-3g /dev/sda3 /mnt/win -o remove_hiberfile

E finalmente il disco è montato.

Il passo successivo è scaricare chntpw, con un banale sudo apt-get install chntpw e infatti non ci sono stati altri inghippi.

Con tale programma bisogna andare a modificare il file SAM che sta in una consona cartella nella partizione di Windows:

mint@mint ~ $ cd /mnt/win/Windows/System32/config
mint@mint /mnt/win/Windows/System32/config $ sudo chntpw SAM -i

Poi sostanzialmente bisogna selezionare l’utente, fare “blank password”, salvare e uscire, e così la password è stata completamente cancellata e rimossa e si può effettuare il login. Si può anche fare “unlock” da chntpw, ma probabilmente non era necessario.

3agle3ye mi ha fornito l’intero output (e anche input) del comando, che è abbastanza inutile ma riporto comunque:

chntpw version 1.00 140201, (c) Petter N Hagen
Hive <SAM> name (from header): <\SystemRoot\System32\Config\SAM>
ROOT KEY at offset: 0x001020 * Subkey indexing type is: 686c <lh>
File size 49152 [c000] bytes, containing 4 pages (+ 1 headerpage)
Used for data: 232/19752 blocks/bytes, unused: 6/8792 blocks/bytes.



<>========<> chntpw Main Interactive Menu <>========<>

Loaded hives: <SAM>

  1 - Edit user data and passwords
  2 - List groups
      - - -
  9 - Registry editor, now with full write support!
  q - Quit (you will be asked if there is something to save)


What to do? [1] -> 1


===== chntpw Edit User Info & Passwords ====

| RID -|---------- Username ------------| Admin? |- Lock? --|
| 01f4 | Administrator                  | ADMIN  | dis/lock |
| 03ea | Cliente                        | ADMIN  | dis/lock |
| 01f7 | DefaultAccount                 |        | dis/lock |
| 01f5 | Guest                          |        | dis/lock |

Please enter user number (RID) or 0 to exit: [3ea] 03ea
================= USER EDIT ====================

RID     : 1002 [03ea]
Username: Cliente
fullname: 
comment : 
homedir : 

00000221 = Users (which has 3 members)
00000220 = Administrators (which has 2 members)

Account bits: 0x0214 =
[ ] Disabled        | [ ] Homedir req.    | [X] Passwd not req. | 
[ ] Temp. duplicate | [X] Normal account  | [ ] NMS account     | 
[ ] Domain trust ac | [ ] Wks trust act.  | [ ] Srv trust act   | 
[X] Pwd don't expir | [ ] Auto lockout    | [ ] (unknown 0x08)  | 
[ ] (unknown 0x10)  | [ ] (unknown 0x20)  | [ ] (unknown 0x40)  | 

Failed login count: 4, while max tries is: 0
Total  login count: 28

- - - - User Edit Menu:
 1 - Clear (blank) user password
 2 - Unlock and enable user account [probably locked now]
 3 - Promote user (make user an administrator)
 4 - Add user to a group
 5 - Remove user from a group
 q - Quit editing user, back to user select
Select: [q] > 2
Unlocked!
================= USER EDIT ====================

RID     : 1002 [03ea]
Username: Cliente
fullname: 
comment : 
homedir : 

00000221 = Users (which has 3 members)
00000220 = Administrators (which has 2 members)

Account bits: 0x0214 =
[ ] Disabled        | [ ] Homedir req.    | [X] Passwd not req. | 
[ ] Temp. duplicate | [X] Normal account  | [ ] NMS account     | 
[ ] Domain trust ac | [ ] Wks trust act.  | [ ] Srv trust act   | 
[X] Pwd don't expir | [ ] Auto lockout    | [ ] (unknown 0x08)  | 
[ ] (unknown 0x10)  | [ ] (unknown 0x20)  | [ ] (unknown 0x40)  | 

Failed login count: 0, while max tries is: 0
Total  login count: 10

- - - - User Edit Menu:
 1 - Clear (blank) user password
(2 - Unlock and enable user account) [seems unlocked already]
 3 - Promote user (make user an administrator)
 4 - Add user to a group
 5 - Remove user from a group
 q - Quit editing user, back to user select
Select: [q] > 1
Password cleared!
================= USER EDIT ====================

RID     : 1002 [03ea]
Username: Cliente
fullname: 
comment : 
homedir : 

00000221 = Users (which has 3 members)
00000220 = Administrators (which has 2 members)

Account bits: 0x0214 =
[ ] Disabled        | [ ] Homedir req.    | [X] Passwd not req. | 
[ ] Temp. duplicate | [X] Normal account  | [ ] NMS account     | 
[ ] Domain trust ac | [ ] Wks trust act.  | [ ] Srv trust act   | 
[X] Pwd don't expir | [ ] Auto lockout    | [ ] (unknown 0x08)  | 
[ ] (unknown 0x10)  | [ ] (unknown 0x20)  | [ ] (unknown 0x40)  | 

Failed login count: 0, while max tries is: 0
Total  login count: 10
** No NT MD4 hash found. This user probably has a BLANK password!
** No LANMAN hash found either. Try login with no password!

- - - - User Edit Menu:
 1 - Clear (blank) user password
(2 - Unlock and enable user account) [seems unlocked already]
 3 - Promote user (make user an administrator)
 4 - Add user to a group
 5 - Remove user from a group
 q - Quit editing user, back to user select
Select: [q] > q


<>========<> chntpw Main Interactive Menu <>========<>

Loaded hives: <SAM>

  1 - Edit user data and passwords
  2 - List groups
      - - -
  9 - Registry editor, now with full write support!
  q - Quit (you will be asked if there is something to save)


What to do? [1] -> q

Hives that have changed:
 #  Name
 0  <SAM>
Write hive files? (y/n) [n] : y
 0  <SAM> - OK

mint@mint /mnt/win/Windows/System32/config $ exit

La vera domanda, a questo punto, è: se ci fosse stato BitLocker o la sua versione semplificata che c’è su Windows 8/8.1/10 Home che non va chiamata BitLocker pur essendo la stessa cosa, cos’avrebbe potuto fare 3agle3ye? Sospetto “nulla”, ma tanto “figurati se gli utonti attivano BitLocker!”. Che su Windows 8.1 è attivato automaticamente e su Windows 10 non si capisce e nessuno lo sa. Beh, in ogni caso una copia della chiave di backup viene gettata su OneDrive di nascosto all’insaputa dell’utente. Chissà come si fa a recuperare, se dovesse succedere qualcosa del genere…

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...