Kernel Linux, il cuore (a rischio) di ogni computer

Il codice open source viene eseguito su tutti i computer del pianeta e mantiene viva l’infrastruttura critica a livello globale. Ma c’è chi si preoccupa delle possibili manipolazioni

Patrick Howell O’Neill

Non è un’esagerazione dire che il mondo intero è costruito sul kernel Linux, anche se la maggior parte delle persone non ne ha mai sentito parlare. È uno dei primissimi programmi che si caricano all’accensione della maggior parte dei computer. Consente all’hardware che esegue la macchina di interagire con il software, ne regola l’utilizzo delle risorse e funge da base per il sistema operativo. È l’elemento fondamentale di quasi tutto il cloud computing, praticamente di tutti i supercomputer, l’intero Internet delle cose, miliardi di smartphone e altro ancora.

Ma il kernel è anche open source, il che significa che chiunque può scrivere, leggere e usare il suo codice. Questa caratteristica ha seriamente preoccupato gli esperti di sicurezza informatica all’interno dell’esercito americano. La sua natura open source significa che il kernel Linux, insieme a una miriade di altri pezzi di software open source critico, è esposto a manipolazioni ostili in modi ancora in buona parte incompresi.

“Si tratta di una tecnologia fondamentale per la nostra società. Non comprendere l’importanza della sicurezza del kernel significa rinunciare a proteggere l’infrastruttura critica”, afferma Dave Aitel, ricercatore di sicurezza informatica ed ex scienziato della sicurezza informatica della NSA.

Ora DARPA, il braccio di ricerca dell’esercito americano, vuole capire meglio i rapporti complessi tra codice e comunità che fanno funzionare questi progetti open source, al fine di valutare meglio i rischi che si corrono. L’obiettivo è essere in grado di riconoscere efficacemente gli attori malintenzionati e impedire loro di interrompere o corrompere codice open source di importanza cruciale.

Il programma SocialCyber della DARPA  è un progetto multimilionario della durata di 18 mesi che combinerà l’analisi sociologica con i recenti progressi tecnologici nell’intelligenza artificiale per mappare, comprendere e proteggere queste enormi comunità open source e il codice che creano. È diverso dalla maggior parte delle ricerche precedenti perché combina l’analisi automatizzata del codice e delle dimensioni sociali del software open source.

Minacce all’open source

Gran parte della civiltà moderna ora dipende da un corpus di codice open source in continua espansione perché fa risparmiare denaro, attrae talenti e semplifica molto il lavoro. “Ma mentre il movimento open source ha generato un ecosistema colossale da cui tutti dipendiamo, ancora non ci è chiaro il funzionamento”, sostiene Aitel. Ci sono innumerevoli progetti software, milioni di righe di codice, numerose mailing list e forum e un oceano di contributori le cui identità e motivazioni sono spesso oscure, il che rende difficile attribuire responsabilità. 

Ci sono rischi. Per esempio, negli ultimi anni gli hacker hanno inserito silenziosamente codice dannoso in progetti open source numerose volte. Le backdoor possono sfuggire a lungo al rilevamento e, nel peggiore dei casi, interi progetti sono stati consegnati a malintenzionati che sfruttano la fiducia che le persone ripongono nelle comunità e nel codice open source. A volte ci sono interruzioni o addirittura acquisizioni degli stessi social network da cui dipendono questi progetti. Tracciare tutto è stato principalmente, anche se non del tutto, una pratica manuale, il che significa che non risponde alle dimensioni astronomiche del problema.

Sergey Bratus, program manager di DARPA, sostiene che abbiamo bisogno dell’apprendimento automatico per digerire e comprendere l’universo in espansione del codice, il che significa sistemi utili come la scoperta automatizzata delle vulnerabilità, nonché strumenti per comprendere la comunità di persone che scrivono, correggono, implementano e influenzano quel codice. L’obiettivo finale è rilevare e contrastare qualsiasi campagna dannosa per inviare codice difettoso, avviare operazioni di influenza, sabotare lo sviluppo o persino assumere il controllo di progetti open source. 

Per fare ciò, i ricercatori utilizzeranno strumenti come l’analisi del sentiment per analizzare le interazioni sociali all’interno delle comunità open source come la mailing list del kernel Linux, che dovrebbe aiutare a identificare chi è positivo o costruttivo e chi è negativo e distruttivo. 

I ricercatori vogliono informazioni su quali tipi di eventi e comportamenti possono interrompere o danneggiare le comunità open source, quali membri sono affidabili e se ci sono gruppi particolari che giustificano una vigilanza extra. Queste risposte sono necessariamente soggettive. Ma in questo momento ci sono pochi modi per trovarle.

Gli esperti temono che la mancanza di controllo su chi gestisce il software open source renda l’intero edificio maturo per potenziali manipolazioni e attacchi. Per Bratus, la minaccia principale è la prospettiva di un “codice inaffidabile” che ha in mano l’infrastruttura critica americana, una situazione che potrebbe favorire sorprese indesiderate. 

Domande senza risposta

Il programma SocialCyber prevede la stipula da parte di DARPA di contratti con più team di cosiddetti “esecutori”, vale a dire piccole società di ricerca sulla sicurezza informatica con profonde competenze tecniche. Una di queste è Margin Research, con sede a New York, che ha messo insieme un team di ricercatori di alto livello per questo compito. “E’ necessario un controllo più rigoroso delle comunità e dei progetti open source”, sostiene Sophia d’Antoine, la fondatrice dell’azienda. “Molte infrastrutture esistenti sono fragili perché dipendono dall’open source. La fiducia implicita non è più sufficiente”.

Margin Research si concentra sul kernel Linux, il più diffuso. L’intenzione è di analizzare sia il codice che la comunità per visualizzare e comprendere l’intero ecosistema. Il lavoro di Margin è tracciare chi sta lavorando su determinate parti specifiche dei progetti open source. Per esempio, Huawei è attualmente il maggior contributore al kernel Linux. Un altro importante collaboratore, dice Aitel, lavora per Positive Technologies, un’azienda russa di sicurezza informatica che, come Huawei, è stata sanzionata dal governo degli Stati Uniti. Margin ha anche mappato il codice scritto dai dipendenti della NSA, molti dei quali partecipano a diversi progetti open source.

Questo tipo di ricerca mira anche a trovare software critico in mano solo a uno o due volontari. E’ una situazione più comune di quanto si possa pensare, al punto che una delle misure del rischio dei progetti software è definita “fattore bus”: cosa succede all’intero progetto se non viene condiviso e la persona responsabile viene investita da un autobus? 

SocialCyber si occuperà anche di altri progetti open source, tra cui Python, un linguaggio di programmazione open source utilizzato in un numero enorme di progetti di intelligenza artificiale e apprendimento automatico. La speranza è che una maggiore comprensione renda più facile prevenire un disastro futuro, indipendentemente dal fatto che sia causato da attività dannose o meno. 

“Più o meno ovunque si trova software open source”, afferma Bratus. “Anche in riferimento al software proprietario, uno studio recente ha dimostrato che in realtà il 70 per cento o più è open source”. “Si tratta di un’infrastruttura critica”, afferma Aitel. “Dobbiamo trovare gli strumenti per intervenire perché gli hacker malintenzionati avranno sempre accesso alle macchine Linux”.

Fotografia: Repubblica Roma

(rp)

Related Posts
Total
43
Share