È passata una settimana dal più importante blackout informatico della storia recente. L’errore in un singolo aggiornamento, in un colosso della cybersicurezza, ha innescato un effetto domino che ha contagiato tutto il mondo. Si sono bloccati gli aerei, i computer di milioni di persone e alcuni canali televisivi. In alcuni casi, i pazienti in attesa di una visita o di un intervento sono dovuti tornare a casa. Ma come è stato possibile tutto questo?

A distanza di qualche tempo, superata la fase di emergenza, alcuni aspetti di quello che è successo sono stati chiariti, mentre altri rimangono ancora un po’ più oscuri. Nel frattempo, Crowdstrike – l’azienda responsabile del blackout – mercoledì ha condiviso un primo report sull’incidente. È probabile che altre risposte arriveranno quando George Kurtz, l’amministratore delegato di Crowdstrike, sarà interrogato dal congresso degli Stati Uniti.

In questo articolo cercheremo di approfondire la questione per quello che sappiamo finora, tentando prima di spiegare cosa sia successo e poi di rispondere ad una domanda un po’ più complessa: cosa abbiamo imparato e cosa potremmo fare per evitare altri blackout di questo tipo?

Piccola precisazione. Ogni considerazione si basa su alcune ricostruzioni tecniche diffuse nei giorni scorsi e contiene dunque qualche concetto un po’ più complicato per chi non si interessa di tecnologia. Allo stesso tempo, abbiamo cercato di semplificare alcuni passaggi e tralasciarne altri troppo specialistici. Chi è particolarmente esperto del tema – informatici, sviluppatori, ingegneri – troverà forse qualche piccola approssimazione, che però ci sembrava indispensabile per la finalità divulgativa di questo lavoro.

Cos’è successo?

Venerdì scorso, il 19 luglio 2024, alle 5.09 (orario italiano) Crowdstrike ha distribuito un aggiornamento del suo sistema Falcon. Stiamo parlando di uno dei più importanti software di cybersicurezza, qualcosa di molto simile a un antivirus e a un sistema di protezione dalle minacce esterne.

Windows ha già installato di default un prodotto molto simile nelle finalità, chiamato Microsoft Defender. Ma alcune aziende più grandi, o in settori particolarmente sensibili (come il trasporto aereo), cercano delle protezioni ancora maggiori.

Il paradosso di questa vicenda è proprio questo: un sistema che è stato acquistato per proteggere dalle incursioni, e che finora ha sempre lavorato in maniera egregia, all’improvviso ha messo ko i computer di tutto il mondo. Le conseguenze sono state enormi. Come è stato possibile e perché normalmente non succede? Tenetevi forte, ora entriamo un po’ più nello specifico.

Perché è stato così impattante?

Il sistema operativo funziona con un sistema ad anelli, in cui il nucleo più importante – il cuore del sistema (chiamato kernel) – non è normalmente accessibile e gode di una protezione maggiore. Per intenderci, nella “modalità kernel” si ha accesso alle fondamenta del sistema operativo (in questo caso Windows), alla mappatura della sua memoria e ad altre funzioni più sensibili (collegate direttamente all’hardware o alle risorse del sistema). Nella “modalità utente” si trovano invece le altre applicazioni e i software che vengono normalmente utilizzati, con permessi più o meno privilegiati che vengono di volta in volta richieste al kernel.

In altre parole, nel kernel si ha un controllo completo del sistema, mentre alle altre applicazioni vengono delegate delle funzioni meno pervasive. Un errore nella “modalità kernel” ha conseguenze molto più pesanti di quelli che avvengono normalmente in “modalità utente”: non riguardano infatti soltanto una singola applicazione ma l’intero sistema. Con un po’ di approssimazione, è la differenza che ci può essere nel corpo umano fra un infarto e una piccola ferita a un braccio.

Un errore in “modalità kernel” si può tradurre nella cosiddetta “schermata blu della morte” di Windows, ovvero in un problema critico che non permette al sistema di avviarsi. Ed è probabilmente quello che è successo con Crowdstrike. È stato come un arresto cardiaco che ha riguardato milioni di computer in contemporanea.

Da qui nasce anche un equivoco di sostanza, che ha portato a qualche errore di percezione. Il problema non è stato infatti “colpa” di Microsoft, che semmai di questa storia è la parte lesa. Mentre Microsoft rilascia una certificazione dei sistemi nel loro complesso (si chiama Windows Hardware Quality Labs), non lo può fare per ogni singolo aggiornamento successivo.

È stato proprio un errore logico nell’aggiornamento di Crowdstrike ad aver messo fuori uso il sistema operativo. Lo ha potuto fare perché, per poter proteggere i computer, deve avere accesso in profondità, fino al cuore delle macchine, dove normalmente le altre applicazioni non si avventurano.

Perché non si è risolto tutto subito?

Paradossalmente, il problema ha riguardato solo una minima parte dei computer: quelli che utilizzano il sistema Falcon di Crowdstrike per Windows 7.11 (e versioni successive), che erano online tra le 5.09 e le 6.27 (orario italiano) di venerdì 19 luglio. Secondo la stima di Microsoft, sono stati colpiti 8,5 milioni di dispositivi, pari all’1 per cento degli utenti globali di Windows. Naturalmente, il “bug” ha impattato tutte quelle operazioni che non si fermano mai, come il trasporto aereo o, in alcuni stati americani, il sistema di emergenza 911.

Un errore in “modalità kernel” non è però un piccolo disguido che si risolve facilmente, anche perché Crowdstrike è perfettamente integrato nella procedure di avviamento del sistema operativo. Per riuscire a intervenire, migliaia di tecnici al mondo hanno dovuto risolvere il guasto manualmente, utilizzando la cosiddetta “modalità provvisoria” del sistema operativo.

A quel punto dovevano accedere alla cartella del programma ed eliminare un file. Non era possibile intervenire con una medicina distribuita virtualmente a tutti. In alcuni casi, per esempio nei data center con migliaia di macchine collegate fra di loro, la soluzione è stata ancora più complicata.

Tutto questo ha portato ad almeno due giorni di grande caos, che hanno riguardato molte più persone rispetto a quelle che si erano imbattute direttamente nella schermata blu della morte.

Ma non potevamo accorgercene?

Nello specifico, l’errore era incluso in un singolo file di configurazione del software (il channel file 291, che viene utilizzato solo da Windows e non da Mac o Linux). Non era esso stesso un file eseguibile (tecnicamente: non era “un driver del kernel”), ma era un file che avrebbe dovuto dialogare con il codice che Crowdstrike implementa nel cuore dei computer per prevenire le minacce.

Da quando esiste Crowdstrike, gli aggiornamenti di questo tipo sono continui, a volte ce ne sono anche più di uno al giorno. E non è un aspetto secondario: questo è uno dei punti di forza che ha portato molte aziende a scegliere proprio questo tipo di prodotto.

Gli aggiornamenti sono indispensabili perché permettono di prevenire qualsiasi minaccia per la sicurezza dei sistemi, anche quelle che in passato non potevano essere previste. Se Crowdstrike dovesse richiedere un’autorizzazione per ogni aggiornamento, rischierebbe di arrivare molto in ritardo rispetto alle minacce che dovrebbe prevenire.

Allo stesso tempo, una possibile soluzione potrebbe arrivare in futuro dall’intelligenza artificiale, che potrebbe costruire barriere di sicurezza più precise, soprattutto per gli aggiornamenti che riguardano la “modalità kernel”.

Le conseguenze

In tutta questa vicenda c’è un ulteriore aspetto paradossale. Secondo alcune fonti interne a Microsoft, riportate dal Wall Street Journal, l’accesso alla “modalità kernel” deriverebbe da un accordo siglato nel 2009 con l’Unione europea. In sostanza, l’antitrust europea riteneva che Microsoft stesse costruendo un sistema troppo chiuso, che l’avrebbe posta in una posizione di vantaggio rispetto a qualsiasi altra azienda.

Per evitare una procedura giudiziaria, Microsoft ha acconsentito di diffondere direttamente le chiavi di accesso alla “modalità kernel”, di fatto esponendo il proprio cuore pulsante nelle mani di attori esterni.

Quello che è successo la settimana scorsa ha però aperto nuovi interrogativi sulla sicurezza informatica. Ha dimostrato che la nostra vita è ormai intimamente connessa, fino a livelli così pervasivi su cui difficilmente possiamo avere il controllo. Tutto questo si inserisce in un contesto di grande progresso tecnologico, con le nuove sfide dettate dall’intelligenza artificiale. 

Il più grande blackout informatico della storia recente potrebbe essere ricordato come un anticipo dell’apocalisse digitale che ancora non abbiamo vissuto. O come un momento di difficoltà che ci ha resi tutti un po’ più responsabili.

© Riproduzione riservata