Windows Subsystem for Linux 2 (WSL 2) ovvero la seconda versione del Sottosistema Linux per Windows che Microsoft ha portato al debutto con il lancio di Windows 10 Aggiornamento di maggio 2020 (versione 2004), poi esteso anche alle release 1909 e 1903 del sistema operativo (WSL2: avviare le principali distribuzioni Linux anche da Windows 10 release 1909 e 1903) sta destando più di qualche timore sul piano della sicurezza.
La prima versione di WSL, strumento che consente di eseguire le principali distribuzioni Linux in finestra, da Windows 10, utilizzava uno speciale layer di compatibilità che traduceva le chiamate Linux e le rendeva compatibili con il sottostante kernel di Windows.
Il traffico di rete generato all’interno di WSL veniva quindi correttamente gestito attraverso il firewall di Windows e filtrato ove necessario nel pieno rispetto delle regole impostate: Cos’è il firewall e come funziona quello di Windows.
Con WSL 2 Microsoft ha introdotto l’utilizzo di un vero e proprio kernel Linux che viene caricato e gestito dall’hypervisor di Hyper-V usando la virtualizzazione. Il traffico di rete da e verso le macchine virtuali Linux avviate con WSL 2 transita attraverso un’interfaccia di rete virtuale creata con Hyper-V.
In queste ore è venuto a galla che la nuova impostazione di fatto bypassa tutte le regole di Windows Firewall: bloccando ad esempio il traffico in uscita su alcune porte, ad esempio 80 (HTTP) e 443 (HTTPS), le distribuzioni Linux eseguite in Windows 10 con WSL 2 riescono regolarmente a connettersi a server web remoti.
La stessa cosa accade per le regole firewall in ingresso.
Il problema di fondo è che finora nessuno era al corrente di questo comportamento che invece ha importanti ripercussioni in termini di sicurezza.
La buona notizia è che usando le implementazioni firewall utilizzate in ambiente Linux (iptables, ufw, firewalld,…) è comunque possibile imporre delle regole per limitare il traffico in uscita e in ingresso quindi da e verso la macchina virtuale avviata con WSL 2.
Il comportamento in questione è stato portato alla luce da Mullvad VPN, azienda che sviluppa l’omonimo servizio VPN, su segnalazione di un utente che lamentava il mancato utilizzo della VPN da parte delle applicazioni Linux caricate mediante WSL 2.