software,

Non toccate quella cartella!

Sabino Maggi Sabino Maggi Segui 2-Jul-2017 · 3 minuti di lettura
Condividi

Volete fare uno scherzo ad un amico che che usa Windows 7 (o magari anche Windows 8.x) e crede fermamente nella massima “Non avrai altro sistema operativo al di fuori di Windows”? Volete far passare un quarto d’ora d’ansia al collega (o al vicino) spocchioso, secondo il quale Windows è sempre il non plus ultra?

Ci vuole poco. Tutto quello che dovete fare è lanciare il Terminale di WIndows, cmd.exe (potete farlo dal menu Start, cliccando in successione su Programmi > Accessori > Prompt dei comandi, oppure usando i metodi alternativi descritti qui), eseguire il comando,

cd c:\$MFT\123

ed andarvene (potete mettere quello che vi pare al posto di 123).

Apparentemente non succede niente, ma Windows smette immediatamente di rispondere a tutto: non riesce più ad eseguire i programmi, non apre i documenti, su un vecchio PC ho perfino perso il controllo del mouse. A volte può perfino andare in crash Windows, anche se succede in modo causale e poco riproducibile.

L’unico modo per ripristinare il funzionamento normale di Windows è spegnere brutalmente il PC – schiacciando a lungo il tasto di accensione o, nei casi patologici, staccando brutalmente la spina – e riavvivare da zero. Dopo di che tutto tornerà a funzionare come al solito (stavo per scrivere perfettamente, ma mi sono accorto che è impossibile che Windows funzioni perfettamente).

Accedere al Terminale del computer di qualcun altro però non è semplice, il malcapitato può sempre accorgersene, distruggendo così l’effetto dello scherzo.

Niente paura, potete sempre inserire il comando di sopra in un file di testo e salvarlo su una chiavetta USB formattata in NTFS (secondo me, funziona anche su una comune chiavetta formattata FAT, come quelle appena comprate, ma ammetto di non aver provato) come eseguimi.bat o simili. Il nome del file non importa, ma l’estensione deve per forza essere .bat, che su Windows è riservata ai file di testo contenenti comandi di sistema da eseguire in sequenza (più o meno come gli script bash di macOS o di Linux). A questo punto basta fare (o far fare) doppio click sul nome del file per bloccare Windows, almeno fino al riavvio forzato.

Inoltre, poiché Windows 7 graziosamente evita di default di mostrare le estensioni dei file, il file eseguimi.bat apparirà al malcapitato utente di Windows semplicemente come eseguimi (o simili). Una falla sfruttata per anni ed anni da tanti virus (quelli veri!) e malware sviluppati apposta per questo sistema operativo, che usavano nomi di file come guardami.jpg.bat per far credere al malcapitato di avere a che fare con l’immagine guardami.jpg, facendolo ritrovare in pochi istanti con il computer infettato da qualche porcheria informatica.

Perché succede tutto questo? Perché come è spiegato molto bene su ArsTechnica, $MFT è il nome di un file speciale usato dal driver NTFS di Windows. Sotto Windows, nessun utente può creare un file con questo nome, ma se si cerca di accedere ad una cartella contenente il nome $MFT nel percorso, anche se la cartella in questione non esiste, il driver NTFS impazzisce e blocca tutto il sistema.

Sono vent’anni che è così, ma Microsoft non si ancora degnata di correggere questo baco.

Diamo tempo al tempo.


Post Scriptum: Ho provato a bloccare Windows 7 facendogli accedere ad un percorso di rete contenente la stringa $MFT ma, a differenza di quanto riportato da The Verge, non ci sono riuscito, perfino usando Internet Explorer. Se qualcuno mi può aiutare, sarei proprio curioso di capire perché. Forse è necessario che la pagina web venga gestita da IIS (il server web di Microsoft) e non da Apache o altri. Ma diciamocelo: chi mai usa IIS come server web?

Post Scriptum #2: Il baco dovrebbe presentarsi anche su Windows XP ma, per quanto ci abbia provato, non sono riuscito a riprodurlo su questa versione ancora molto popolare di Windows. Windows Vista è inutile considerarlo, tanto non l’ha mai installato nessuno.

Sabino Maggi
Pubblicato da Sabino Maggi Segui
Commenti

Aggiungi un commento