TLS, che sta per “Transport Layer Security“, è un protocollo crittografico progettato per garantire la sicurezza delle comunicazioni in rete. La sua funzione principale è quella di proteggere i dati scambiati tra due parti (ad esempio, il browser e un server Web) rendendo impossibile per gli attaccanti intercettare o manipolare le informazioni trasmesse.
Negli anni sono state rilasciate diverse versioni di TLS per migliorare la sicurezza delle comunicazioni su Internet. TLS, che a sua volta è successore di SSL (Secure Sockets Layer), ha visto il rilascio della versione 1.0 nel 1999. La presenza di varie vulnerabilità scoperte nel corso del tempo, hanno indotto allo sviluppo e all’approvazione delle release successive tanto che oggi le versioni più recenti ed affidabili sono TLS 1.2 e TLS 1.3.
Microsoft ha annunciato a inizio settembre 2023 che Windows abbandonerà il supporto per TLS 1.0 e TLS 1.1, versioni del protocollo crittografico ormai considerate obsolete e vulnerabili. I principali browser Web, tuttavia, hanno da tempo abbandonato i due protocolli puntando soltanto sui più recenti e sicuri TLS 1.2 e TLS 1.3.
Come funziona TLS, in breve
Quando si stabilisce una connessione HTTPS con un server Web remoto, al lavoro “dietro le quinte” c’è proprio TLS. Dopo un handshake iniziale, client e server stabiliscono un collegamento sicuro attraverso una serie di passaggi.
In particolare, il client invia un messaggio “ClientHello” al server, specificando le versioni di TLS che supporta e una serie di opzioni di crittografia. Il server, a sua volta, risponde con un messaggio “ServerHello” confermando la versione di TLS da utilizzare e selezionando un insieme comune di opzioni crittografiche.
Il server invia poi al client il suo certificato digitale, che contiene una chiave pubblica. Il client verifica la validità del certificato del server e crea una chiave di sessione segreta. Questa chiave è utilizzata per crittografare i dati durante la sessione. Il client invia quindi una chiave pubblica cifrata con la chiave pubblica del server. Infine quest’ultimo decodifica la chiave pubblica utilizzando la sua chiave privata per poi avviare lo scambio di dati in forma crittografata. La chiave di sessione segreta permette di trasferire i dati in tutta sicurezza scongiurando attacchi da parte di soggetti terzi e impedendo loro la lettura dei messaggi scambiati.
TLS non solo protegge la riservatezza dei dati, ma anche la loro integrità. Utilizza algoritmi di hashing per verificare che i dati non siano alterati durante la trasmissione. Se anche un solo bit dei dati viene modificato durante il trasferimento, la verifica di integrità fallisce e la connessione viene interrotta.
Gli errori TLS con i moderni browser Web
Gli amministratori IT, i tecnici informatici e i professionisti a vario livello, ultimamente si trovano spesso in difficoltà. Perché se da un lato i browser Web hanno scelto per il “giro di vite” nei confronti dei protocolli TLS 1.0 e TLS 1.1, sono ancora tanti i dispositivi legacy che ancora fanno uso di quelle versioni del protocollo per consentire l’accesso ai rispettivi pannelli di amministrazione.
Parliamo di dispositivi dotati di funzionalità Web, prodotti del mondo dell’Internet delle Cose (IoT), firewall hardware, dispositivi embedded, DRAC (Dell Remote Access Controller), ILO (Integrated Lights-Out) e così via. DRAC, ad esempio, è un controller remoto che consente agli amministratori di sistema di gestire e monitorare i server Dell in modo remoto, anche quando il server stesso potrebbe essere fisicamente inaccessibile; ILO è un termine associato ai server Hewlett Packard Enterprise che si riferisce a un sistema simile a DRAC e che offre funzionalità di gestione remota.
Bene la sicurezza, bene evitare di usare protocolli ormai obsoleti. Ma come accedere ai dispositivi legacy se il browser Web impedisce di usare TLS 1.0 e TLS 1.1? Come fare se il dispositivo da amministrare non è accessibile e aggiornabile a distanza?
Ad oggi è sempre possibile accedere da browser Web a un sito non protetto che espone pagine in chiaro via HTTP. Lo si può fare senza problemi. E allora perché questo accanimento nei confronti di TLS 1.0 e TLS 1.1? Basterebbe visualizzare un messaggio di allerta, come peraltro fatto in passato, e consentire comunque la navigazione a chi vuole proseguire.
Eppure, oggi se si prova a visitare un sito che non supporta almeno TLS 1.2, Chrome ed Edge mostrano il messaggio d’errore ERR_SSL_VERSION_OR_CIPHER_MISMATCH
mentre Firefox ci delizia con un SSL_ERROR_UNSUPPORTED_VERSION
, senza possibilità di appello.
Come superare gli errori ERR_SSL_VERSION_OR_CIPHER_MISMATCH e SSL_ERROR_UNSUPPORTED_VERSION in Firefox ed Edge
Se si avesse la necessità di accedere al pannello di amministrazione di un dispositivo remoto ma il browser Web restituisce uno degli errori riportati in precedenza, è possibile risolvere con un semplice trucco che permette di riattivare TLS 1.0 e TLS 1.1.
Come fare con Mozilla Firefox
Nel caso di Firefox, basta digitare about:config
nella barra degli indirizzi quindi digitare security.tls.version.min
.
Per impostazione predefinita, tale valore è impostato a 3: ciò significa che il browser accetta soltanto connessioni con server remoti protette almeno attraverso TLS 1.2. Per attivare anche le connessioni TLS 1.0 e TLS 1.1, basta cliccare due volte su security.tls.version.min
quindi inserire il valore 1. Specificando 2, invece, TLS 1.0 non è consentito mentre è permesso l’utilizzo del protocollo TLS 1.1 e seguenti.
Usare la modalità IE con Microsoft Edge
Nel caso di Microsoft Edge, così come con Chrome, non sembra esserci un modo diretto per sbloccare TLS 1.0 e TLS 1.1, almeno temporaneamente.
Edge, tuttavia, include la modalità Internet Explorer attivabile dal menu principale del browser (tre puntini in alto a destra, accanto alla barra degli indirizzi). Il consiglio è quindi quello di premere Windows+R
, digitare inetcpl.cpl
, premere Invio e cliccare sulla scheda Impostazioni avanzate.
Qui è necessario scorrere il contenuto del riquadro Impostazioni abilitando poi le caselle Usa TLS 1.0 e Usa TLS 1.1.
A questo punto, si può digitare l’URL del sito Web da raggiungere nella barra degli indirizzi di Edge. Alla comparsa dell’errore La connessione per questo sito non è sicura, insieme con il messaggio ERR_SSL_VERSION_OR_CIPHER_MISMATCH
, basta fare clic sul menu principale del browser quindi sulla voce Ricarica nella modalità Internet Explorer.
Con un clic su Fatto quindi su Ulteriori informazioni e infine sul link Prosegui, è finalmente possibile raggiungere il sito Web che non supporta le versioni più recenti e aggiornate del protocollo TLS.
Credit immagine in apertura: iStock.com/RobertAx