Il virus che fa paura al web

Shellshock spiegato al mio gatto

Shellshock spiegato al mio gatto
Pubblicato:
Aggiornato:

Il terrore corre sul filo (1948) è un film di Anatole Litvak con Barbara Stanwyck, Burt Lancaster e Tina de Mola. Il terrore si diffonde nella rete è cronaca di questi giorni.

È arrivato Shellshock, la minaccia informatica peggiore di tutti i tempi, l’ebola di Internet. Proviamo a spiegare come funziona a chi non si intende né di computer né di internet.

Cosa sta alla base di tutto: la scrittura di righeUn computer, un insieme di computer, l’intera rete mondiale possono funzionare solo perché qualcuno (o tanti insieme) scrivono degli elenchi di ordini da eseguire. Per esempio:

*accendi il computer
*se non si accende scrivi sullo schermo: “ti sei dimenticato di inserire la spina”
*quando senti che ti arriva corrente scrivi sullo schermo: “riprendi da capo cliccando Enter”
*se neanche in questo caso si accende urla Aiuto!
*se nessuno risponde butta il computer dalla finestra ma
*fa attenzione che sotto non ci sia nessuno
*…….
*…….

Ovviamente i contenuti dell’esempio sono scherzosi, ma l’intero sistema funziona mediante righe di comando che, per poter funzionare su più computer contemporaneamente - ossia per consentire a più computer di dialogare fra loro e con i rispettivi strumenti esterni (stampanti, tastiere, schermo,…) - devono rispettare delle diciture, delle parole precise che costituiscono un codice. L’insieme di questi codici si chiama “software”.

 

123332792-d945c5ce-f794-4e25-85f6-b8d77d725dfc

 

Le cose si complicano: i sistemi di scrittura. Più numerosi sono gli ordini da dare e, quindi, da leggere, più complesso diventa il modo con cui i codici e le loro pagine possono dialogare tra loro. Tecnicamente si dice: interfacciarsi. Dato che oggi i sistemi sono molti e molto complicati, una buona parte delle scritture è dedicata a far in modo che codici diversi riescano comunque a parlarsi. Ciascun sistema, a sua volta, per evitare di essere copiato da altri, viene scritto in un linguaggio segreto, in modo che gli utenti del sistema possano operare (per esempio: scrivere questo pezzo), ma siano tenuti all’oscuro del meccanismo che consente loro di operare (io so che battendo “i” sulla tastiera vedo una “i” sullo schermo,  e so che la stessa comparirà sul foglio stampato, ma non so cosa stia succedendo tra il tasto e lo schermo, e tanto meno so come faccia la  mia “i” di adesso a comparire sul vostro schermo).

I sistemi, dunque, sono diversi, ma riescono a parlarsi fra loro perché chi li ha creati ha anche trovato il modo di dire al suo sistema Tizio: parla col sistema Caio senza fare troppi errori. Se vedi una “i” dimmi che hai visto una “i” e non una “#”, per esempio. Viceversa, fa in modo che la nostra “i”, in qualunque sistema vada a cadere, resti col puntino sopra e non faccia scherzi. Windows, Mac, iOs, Linux sono i nomi dei sistemi più famosi. I primi sono di proprietà di qualcuno - e quindi sono inaccessibili agli utenti - l’ultimo - Linux - è aperto (open) nel senso che chi lo usa può metterci mano, ossia essere a conoscenza delle righe di codice che permettono a questa “a” di passare dalla mia tastiera al mio schermo e infine al vostro schermo.

Un altro passo: i server. Per potersi collegare ad altri computer ciascun computer ha bisogno di una rete di comunicazione. Come tutte le reti, anche quella informatica ha dei nodi che smistano la comunicazione. Questi nodi si chiamano server, che sono dei giganteschi contenitori di righe di codice in grado di ricevere informazioni, catalogarle, ordinarle, trovarle quando se ne ha bisogno, farle arrivare a destinazione, compilare statistiche e altro ancora. Ovvio che i server possono fare tutto questo se esistono dei programmi - ossia righe di codice - che glielo permettono. Ed è anche intuibile che questi enormi contenitori siano stati provvisti - col sistema ormai noto di righe di codice sempre più complicate - di sistemi di difesa, perché parlarsi è bene, ma origliare non sempre.

Detto in parole povere, esistono sistemi che gestiscono i server come esistono quelli che gestiscono un computer. E esistono modi per difendere i server come esistono modi per difendere il proprio computer dagli attacchi di chi vorrebbe sbirciarci dentro o origliare. Viceversa, esistono sistemi per “entrare” nei computer o nei server altrui, in modo da giungere alle righe di programma che ne permettono il funzionamento, scriverci delle altre righe o alterare quelle esistenti, così da far agire il computer o il server non secondo le intenzioni originali, ma secondo gli ordini appena inseriti.

Questi sistemi si chiamano “virus informatici” e le smagliature dei programmi che permettono loro di inserirsi nel codice originale si chiamano “bug” (baco), parola che si spiega da sé. Un sistema “bacato” è quello che ha la buccia (il sistema di difesa) o l’interno (la sua struttura di comandi) a buchi. Nei buchi si inseriscono i virus. E se un virus si inserisce in un server, tutti i computer collegati a quel server e ai server a cui il primo è collegato si ammalano, ossia obbediscono ai nuovi ordini.

Problema: la velocità degli attuali sistemi per la gestione dei server. L’insieme di macchine (computer), sistemi e server appena descritto si è sviluppato nel tempo senza che nessuno potesse guidarlo. È nato e si è sviluppato a seconda delle disponibilità tecnologiche e di intelligenza presenti, volta per volta, sul mercato. I personal computer degli anni 80 riuscivano a gestire con una certa lentezza (che allora appariva però velocissima) dieci o venti milioni di informazioni (10 o 20 megabyte), oggi ne gestiscono mille miliardi (terabyte) ad una velocità molto più elevata di allora. Lo abbiamo già raccontato, oggi esistono sistemi in grado di gestire comodamente una quantità di dati che per scriverla in numeri ci vuole un dieci seguito da ventuno zeri (zettabyte) e in lettere si dice: mille miliardi di miliardi.

Qual è il problema che questi sistemi pongono a noi poveri utenti di computer in rete? Facciamo un esempio: scriviamo una stringa (una fila senza spazi) di, poniamo, 16 caratteri tra numeri, lettere maiuscole e minuscole, segni grafici (trattini, barre/, apici, ..) così: tG0-AEcl/….., e difendiamola in modo che si sappia dove si trova (nel nostro computer e in un server) ma sia visibile solo a noi che l’abbiamo scritta. Quanto ci metterebbe, se dovesse tentare tutte le combinazioni possibili “a mano” uno che volesse trovare proprio la nostra? Centinaia, se non migliaia, di anni, è stato calcolato. Del resto sappiamo benissimo cosa succede quando ci si dimentica la combinazione a 3 numeri di un lucchetto.

Ma quanto ci mettono a compiere la medesima operazione sistemi che sono in grado di gestire quantità di informazioni come quelle appena descritte (migliaia di miliardi di miliardi)? Pochissimo. Questo significa che chi voglia inserirsi in un sistema altrui scoprendo dove esso sia “bacato”, o “smagliato”, non è spaventato dagli anni che avrebbe dovuto impiegarci solo un decennio fa. Sa che ce la può fare se non in giornata, per lo meno in settimana. E dato che i sistemi su cui, poco a poco, si è costruita la rete, presentano numerosi buchi perché i primi controllori non potevano accorgersi di quel che avrebbe potuto bacarsi perché non ne avevano i mezzi, adesso chi dispone di sistemi in grado di tirar fuori tutte le combinazioni possibili di un “sistema codificato” altrui ne diventa subito il padrone.

Questo è quel che sta facendo Shellshock: prende il comando non solo di sistemi altrui ma anche dei sistemi mediante i quali dialogano con altri sistemi, e ci scorrazza dentro a piacere: succhia dati, dà ordini sconvenienti o subito o inserendo un timer, impedisce accessi da parte degli utenti, devia informazioni da una parte invece che da un’altra, cose così. È la guerra. Non la guerra informatica: la guerra vera e propria, perché oggi le comunicazioni telefoniche (non solo quelle militari) sono gestite da sistemi informatici, i sistemi di puntamento degli aerei, delle navi e degli elicotteri dipendono da sistemi informatici come pure la comunicazione satellitare, il funzionamento dei missili e altre cose del genere.

È probabile, come hanno tenuto a far presente le grandi imprese produttrici di software per la sicurezza informatica, che noi che stiamo davanti al computer non avremo grandi danni da questa intrusione certamente sgradevole. È altamente improbabile che le nostre password siano state rubate perché nessuno si mette a studiare, in Cina o negli Usa, un problema di queste dimensioni per sapere se abbiamo o no un amante. Ma è stata una prova generale, in modo da trovarsi pronti in caso di bisogno. E quando uno fa le prove “casomai ce ne fosse bisogno” vuol dire che la guerra è già in atto.

Su La Stampa e su Repubblica trovate i dettagli della situazione “per esperti”. Noi abbiamo provato a spiegarla agli altri, gatti compresi.

Seguici sui nostri canali