Che cos’è un attacco alla catena di approvvigionamento?
Le verità ovvie sulla sicurezza informatica hanno è stato a lungo descritto in termini semplici di fiducia: attenzione agli allegati di posta elettronica provenienti da fonti sconosciute e non consegnare le credenziali a un sito Web fraudolento. Ma sempre più hacker sofisticati stanno minando quel fondamentale senso di fiducia e sollevando una domanda che induce alla paranoia: cosa succede se l’hardware e il software legittimi che costituiscono la tua rete sono stati compromessi alla fonte?
Questa forma insidiosa e sempre più comune di hacking è nota come “attacco alla catena di approvvigionamento”, una tecnica in cui un avversario inserisce codice dannoso o persino un componente dannoso in un software o hardware affidabile. Compromettendo un singolo fornitore, spie o sabotatori possono dirottare i suoi sistemi di distribuzione per trasformare qualsiasi applicazione che vendono, qualsiasi aggiornamento software che spingono fuori, anche l’attrezzatura fisica che spediscono ai clienti, in cavalli di Troia. Con un’intrusione ben posizionata, possono creare un trampolino di lancio per le reti dei clienti di un fornitore, a volte con centinaia o addirittura migliaia di vittime.
“Gli attacchi alla catena di approvvigionamento sono spaventosi perché sono davvero difficili da affrontare e perché chiariscono che ti fidi di un’intera ecologia”, afferma Nick Weaver, ricercatore di sicurezza presso l’International Computer Science Institute di UC Berkeley. “Ti fidi di ogni venditore il cui codice è sulla tua macchina, e ti fidi del venditore di ogni venditore.”
La gravità della minaccia alla catena di approvvigionamento è stata dimostrata su vasta scala lo scorso dicembre, quando è stato rivelato che gli hacker russi, in seguito identificati come dipendenti del servizio di intelligence straniero del paese, noto come SVR, avevano violato la società di software SolarWinds e impiantato codice dannoso nel suo strumento di gestione IT Orion, consentendo l’accesso a ben 18.000 reti che utilizzavano quell’applicazione in tutto il mondo. L’SVR ha usato quel punto d’appoggio per scavare in profondità nelle reti di almeno nove agenzie federali statunitensi, tra cui la NASA, il Dipartimento di Stato, il Dipartimento della Difesa e il Dipartimento di Giustizia.
Ma per quanto scioccante fosse quell’operazione di spionaggio, SolarWinds non era unico. Da anni, gravi attacchi alla catena di approvvigionamento colpiscono aziende di tutto il mondo, sia prima che dopo l’audace campagna russa. Proprio il mese scorso, è stato rivelato che gli hacker avevano compromesso uno strumento di sviluppo software venduto da un’azienda chiamata CodeCov che ha dato agli hacker l’accesso a centinaia di reti di vittime. Un gruppo di hacker cinese noto come Barium ha effettuato almeno sei attacchi alla catena di approvvigionamento negli ultimi cinque anni, nascondendo codice dannoso nel software del produttore di computer Asus e nell’applicazione di pulizia del disco rigido CCleaner. Nel 2017 gli hacker russi noti come Sandworm, parte del servizio di intelligence militare GRU del paese, hanno dirottato gli aggiornamenti software del software di contabilità ucraino MEDoc e lo hanno utilizzato per far uscire il codice distruttivo e autodiffuso noto come NotPetya, che alla fine ha inflitto 10 miliardi di dollari in danni in tutto il mondo: l’attacco informatico più costoso della storia.
In effetti, gli attacchi alla catena di approvvigionamento sono stati dimostrati per la prima volta circa quattro decenni fa, quando Ken Thompson, uno dei creatori del sistema operativo Unix, voleva vedere se poteva nascondere una backdoor nella funzione di accesso di Unix. Thompson non ha semplicemente impiantato un codice dannoso che gli ha concesso la possibilità di accedere a qualsiasi sistema. Ha costruito un compilatore, uno strumento per trasformare il codice sorgente leggibile in un programma eseguibile leggibile dalla macchina, che ha segretamente inserito la backdoor nella funzione quando è stata compilata. Poi ha fatto un ulteriore passo avanti e ha corrotto il compilatore che compilato il compilatore, in modo che anche il codice sorgente del compilatore dell’utente non presenti evidenti segni di manomissione. “La morale è ovvia”, Thompson ha scritto in una conferenza che spiegava la sua dimostrazione nel 1984. “Non puoi fidarti del codice che non hai creato totalmente da solo. (Soprattutto codice di aziende che impiegano persone come me.)”