Acronimo di Server Message Block SMB è il noto protocollo che permette di condividere cartelle e file in Windows. Attraverso l’implementazione libera e open source Samba, le risorse sono accessibili anche sui sistemi Unix-like sia in modalità client che server.
SMB fu ideato addirittura nel 1983 da Barry Feigenbaum presso IBM ma i tecnici Microsoft vi applicarono diverse modifiche all’inizio degli anni ’90 quando svilupparono LAN Manager, piattaforma inizialmente progettata per il sistema operativo OS/2, anch’esso prodotto da Big Blue.
Il supporto arrivò in Windows for Workgroups nel 1992, sistema operativo della famiglia Windows 3.1 che introdusse la possibilità di condividere risorse in rete senza ricorrere a un server di autenticazione centralizzato.
SMB1 (o SMBv1), com’è ancora oggi chiamato, era stato progettato per operare al di sopra di NetBIOS, un protocollo di rete che risale agli anni ’80 e che era stato messo a punto da IBM.
Soltanto con il lancio di Windows 2000, tra fine dicembre 1999 e gennaio 2000, SMB1 poté essere utilizzato con il protocollo TCP usando la porta 445.
SMB1 è un protocollo estremamente “chiacchierone”, cosa che non è un problema su una rete locale a bassa latenza ma che può diventare un problema quando si lavora su risorse remote distribuite su più sedi.
Microsoft ha indicato SMB1 come “deprecato” già a giugno 2013: Windows Server 2016 e Windows 10 versione 1709 non abilitavano più SMB1 per impostazione predefinita.
Il fatto è che nonostante Microsoft abbia via via rilasciato patch correttive, SMB1 è un protocollo non sicuro e come tale dovrebbe essere sempre evitato. È intrinsecamente insicuro perché non integra funzioni di sicurezza adottate nelle implementazioni più recenti e resta comunque vulnerabile a un ampio ventaglio di codici exploit.
Con un annuncio ufficiale Microsoft ha decretato la fine di SMB1 che non verrà più supportato nelle prossime versioni di Windows 11.
Come disattivare SMB1 in Windows
Per controllare se si stesse ancora utilizzando SMB1 sui propri sistemi, basta aprire una finestra PowerShell premendo Windows+X
quindi scegliendo Windows PowerShell (amministratore) in Windows 10 oppure Terminale Windows (Admin) in Windows 11. Al prompt si può incollare quanto segue:
Tutte le voci devono essere su Disabled. Se così non fosse si deve premere Windows+R
, digitare optionalfeatures
quindi disattivare tutte le caselle in corrispondenza di Supporto per condivisione file SMB 1.0/CIFS.
CIFS (Common Internet File System) è semplicemente un “dialetto” di SMB: Microsoft utilizzò l’acronimo CIFS a partire dal 1996 quando Sun Microsystems e Microsoft, per tutta risposta, aggiunse più funzionalità al protocollo per la condivisione di file e cartelle come il supporto per i link simbolici, le giunzioni, i file di grandi dimensioni e un primo tentativo di trasferimento dei file via TCP sulla porta 445 culminato con il rilascio in grande stile con Windows 2000, come detto in precedenza.
Per disattivare SMBv1 in Windows 7, sistema operativo ormai non più supportato da Microsoft se non nell’ambito del programma ESU (Extended Security Updates), si può digitare cmd
nella casella di ricerca, scegliere Esegui come amministratore quindi digitare quanto segue:
Nelle edizioni Home e Pro di Windows, spiega oggi Microsoft, SMB1 potrà essere eventualmente attivato su richiesta dell’utente attraverso la finestra optionalfeatures
. Ciò viene permesso per fare in modo che i sistemi Windows possano continuare a connettersi con la vasta schiera di dispositivi di terze parti che ancora oggi, purtroppo, supportano ancora soltanto la versione SMB1 del protocollo.
La novità è che se Windows non rileverà traffico SMB1 in uscita, dopo 15 giorni provvederà a disattivare automaticamente il protocollo. In futuro, prosegue Microsoft, le installazioni di Windows e Windows Server non integreranno più driver e librerie DLL per abilitare SMB1.
Inutile dire che la protezione del perimetro della rete resta sempre essenziale e che le patch via via rilasciate da Microsoft risolvono problemi che possono essere sfruttati da parte di malintenzionati per eseguire codice dannoso anche su quei sistemi che usano versioni più aggiornate del protocollo SMB.