Sono passati un paio di mesi dall’annuncio della scoperta di Krack, una vulnerabilità che affligge il protocollo di sicurezza Wpa 2 utilizzato da quasi tutti i dispositivi wireless per proteggere tramite crittografia le comunicazioni “senza fili”, e il mondo scopre che la quasi totalità dei processori montati su computer e smartphone in commercio sono afflitti da due gravi debolezze battezzate Meltdown e Spectre. Se nel primo caso era stato un ricercatore belga a scoprire il “bug”, questa volta l’onore è toccato al team di Google Project Zero, gruppo di ricerca in materia di sicurezza del gigante di Mountain View.
Come per Krack anche in questo caso c’è chi corre ai ripari, ma non sono i produttori di processori come Intel e AMD, quanto i big della Silicon Valley a partire da Microsoft, Apple e lo stesso Google, che stanno rilasciando correzioni per i propri sistemi operativi che funzionano sfruttando la capacità di calcolo di quei processori. Tra gli effetti collaterali previsti c’è una riduzione delle performance dei dispositivi, ma questo sembra essere il prezzo da pagare in nome della sicurezza. La ragione dell’inerzia dei primi, invece, non è un caso di colpevole sottovalutazione, ma un problema di impossibilità oggettiva determinato dalla natura dei bug. Si tratta infatti di vulnerabilità di progetto, cioè di errori concettuali nell’ideazione dell’architettura dei processori. Volendo fare un paragone è come se una casa automobilistica sviluppasse una nuova vettura “dimenticandosi” dei freni: non è possibile semplicemente richiamare il veicolo e aggiustarlo, ma si deve ripensarlo daccapo.
Vero che queste ultime falle scoperte sono tutt’altro che semplici da sfruttare, richiedono competenze notevoli e risorse per nulla trascurabili, considerazioni che hanno spinto Intel e gli altri produttori a minimizzare il rischio che queste vulnerabilità siano effettivamente sfruttate in modo criminale, ma i comunicati rassicuranti non devono far perdere di vista alcune questioni fondamentali. In primo luogo qualsiasi criminale valuta l’economia dello sforzo e non si può trascurare come un “buco” comune a miliardi di dispositivi potrebbe essere la candela per la quale il gioco vale. Il secondo e forse più importante tema riguarda la tipologia delle vulnerabilità. Quando gli errori sono a livello di progettazione, come nel caso di Meltdown e Spectre e ancora prima di Krack (a essere sensibile al possibile attacco non era una tecnologia, ma il protocollo sul quale tutte si dovevano basare), allora significa che il tema della sicurezza non è ancora realmente integrato nei processi di progettazione e produzione dei sistemi.
Probabilmente gli operatori economici delle tecnologie dell’informazione sono ancora costantemente vittime del “time to market” ovvero della necessità commerciale di immettere sul mercato nuove soluzioni a qualsiasi costo per evitare di essere soverchiati dalla concorrenza. La possibilità di errore diventa così fondante nel sistema per almeno due necessità “tecniche”. La prima è di ordine “operativo” e riguarda il concetto di compatibilità retroattiva sulla base del quale deve essere possibile per un sistema più recente interagire con quelli delle generazioni precedenti, di conseguenza finirà per conservarne i pregi ma anche i difetti. La seconda è di tipo economico e consiste nel prendere per buone le soluzioni sviluppate in passato e quindi riutilizzarle così come sono in contesti diversi, spesso sottovalutando gli effetti prodotti da un ambiente differente da quello per cui erano state concepite. Tanto per fare un esempio nel mondo reale, è come se la “solita” casa automobilistica prendesse il progetto dell’impianto frenante di un veicolo del 1960 e lo adottasse come standard per le vetture di serie del 2018.
Tuttavia esiste un’ipotesi alternativa, forse anche più lugubre. La complessità delle nuove tecnologie ha raggiunto un punto tale da trascendere l’umana capacità di mantenerne il controllo, di conseguenza l’errore è inevitabile e saremo costretti ad accettarlo in quanto parte integrante del sistema stesso. In definitiva non si tratta di un’ipotesi tanto peregrina, basta rammentarsi come da molti anni abbiamo perso la possibilità di governare le informazioni che circolano sulla Rete poiché la quantità stimata di byte annualmente in transito è rappresentabile da un “10” seguito da 21 zeri. In entrambi i casi i numeri ci sono contro.