Vai al contenuto principale
Una foto della testa e delle spalle di un cavaliere in armatura d'argento con un elmo dotato di sottili fessure sugli occhi.
Prospettive

7 Modi per difendere la tua catena di fornitura del software

Man mano che gli hacker diventano sempre più abili e il software sempre più complesso, i CISO devono migliorare la propria capacità di identificare, isolare e mitigare gli attacchi di software dannoso. L'automazione e l'intelligenza artificiale diventeranno i loro nuovi migliori amici.

Se negli ultimi anni ha prestato attenzione alle minacce alla rete, probabilmente avrà notato un cambiamento. Sebbene i malintenzionati continuino a gestire botnet e attacchi automatizzati di ransomware, stanno dedicando sempre più energie alla “caccia grossa” – ovvero agli attacchi alle catene di approvvigionamento che forniscono il software utilizzato da innumerevoli organizzazioni.

I nomi di questi attacchi sono ormai tristemente famosi – SolarWinds, Kaseya, NotPetya e 2023’s MoveIT breach, solo per citarne alcuni – e il vantaggio di prendere di mira la catena di approvvigionamento è evidente: un guadagno maggiore. Sia che gli hacker compromettano una libreria open source o di terze parti tramite un repository GitHub , individuino una vulnerabilità in un software preconfigurato oppure ricorrano all’ingegneria sociale per infiltrarsi in un ambiente di sviluppo, un singolo exploit può penetrare in centinaia o migliaia di reti private e pubbliche in tutto il mondo.

L'attacco a SolarWinds ha colpito circa 18.000 aziende; quello a MoveIT, più di 2.500 organizzazioni (e il numero è in aumento), con ripercussioni su circa 67 milioni di persone.

Juniper Research prevede che, entro il 2026. , gli attacchi alla catena di approvvigionamento del software costeranno all’economia globale quasi 81 miliardi di dollari, con la maggior parte di tali costi a carico dei settori sanitario, finanziario, pubblico e automobilistico.

L'obiettivo di un responsabile della sicurezza è quello di eliminare le vulnerabilità e ridurre la superficie di attacco. Le violazioni delle reti informatiche avvengono in modi sempre più insidiosi (e sottili), dall’installazione di software apparentemente affidabile ma in cui un malintenzionato ha inserito una backdoor, alla sottovalutazione delle minacce rappresentate dall’ e dall’IT ombra. In quest’ultimo caso, una singola azione imprudente da parte di un dipendente, come il download di un programma di installazione non autorizzato o di un software gratuito, può vanificare mesi o anni di sforzi in materia di sicurezza.

Cosa deve fare, quindi, un responsabile della sicurezza informatica (CISO) di un’azienda del settore “ ” ? Poiché gli hacker puntano a questi obiettivi di grande impatto, i CISO devono adottare un approccio proattivo. Il consiglio che ricevono di solito è: «Fidatevi, ma verificate». Ma ciò presuppone innanzitutto la fiducia, e tale presupposto sta diventando sempre più problematico. Ciò che dico ai CISO è questo: Zero trust – finché non ne avete verificato la veridicità.

Una catena di approvvigionamento complessa esposta a minacce costanti

Un tempo l’installazione dei software era piuttosto semplice: si individuava un fornitore di fiducia e si scaricava il suo prodotto. Oggi la catena di fornitura comprende non solo l’azienda da cui avete acquistato una licenza, ma anche i componenti di terze parti che compongono il software, le utility che il vostro personale sviluppa e potenzia internamente e il software che utilizzate sul cloud .

«I CISO devono adottare un approccio proattivo e seguire un [nuovo] semplice motto: Zero trust – finché non si verifica.”»

Nuove vulnerabilità nella catena di fornitura del software (come quelle riscontrate in Apache Struts, OpenSSL, cURL e altre utility e librerie condivise) emergono con sconcertante regolarità. Quando i malintenzionati integrano questi codici compromessi in software noti, non si limitano a sfruttare una vulnerabilità, ma approfittano anche della fiducia che intercorre tra fornitore e cliente riguardo alla “sicurezza” del software. Se un malintenzionato riesce a infiltrarsi nella tecnologia utilizzata da un’azienda di software per certificare l’autenticità del codice, quel codice dannoso viene diffuso senza che nessuno si accorga che è stato compromesso.

A peggiorare la situazione, gli hacker potrebbero anche sottrarre certificati di firma o credenziali di sviluppatore e avvalersi di tali identità con privilegi per garantire che le loro azioni dannose eludano i Suoi sistemi di rilevamento delle minacce.

Fortunatamente, grazie agli strumenti adeguati, a un’attenta preparazione, all’automazione e a un approccio di tipo “zero trust fino alla verifica” nell’architettura di rete, i responsabili della sicurezza possono imparare a identificare e neutralizzare rapidamente tali minacce. Le suggeriamo di seguire questi sette passaggi:

1. Inizi con un inventario della rete

Come si suol dire: «Non si può proteggere ciò che non si vede». È necessario disporre degli strumenti, dei processi e del personale qualificato in grado di garantire una visione completa di tutti i dispositivi e dei software presenti nella vostra organizzazione. Un sistema di protezione automatizzato endpoint management può aiutarLa a proteggere la Sua superficie di attacco, a condizione che sia in esecuzione su tutti i Suoi endpoint.

Anche l’automazione può contribuire a proteggere la Sua catena di fornitura del software. Se si considerano esclusivamente i dati numerici, le singole organizzazioni devono affrontare un numero di problemi, punti finali e sfide di gran lunga superiore a quello dei professionisti della sicurezza informatica presenti nel proprio organico. Nel suo rapporto “ : Cost of a Data Breach 2023” (: Il costo di una violazione dei dati – Nozioni di base), IBM rileva che “le organizzazioni che hanno utilizzato [l’intelligenza artificiale e l’automazione] hanno impiegato, in media, 108 giorni in meno per identificare e contenere la violazione” e hanno risparmiato in media 1,76 milioni di dollari grazie alla riduzione dei costi legati alla violazione dei dati.

Anche l’intelligenza artificiale sarà un alleato in questa lotta. Sebbene si tratti ancora di una tecnologia emergente, esiste un potenziale promettente nel modo in cui l’intelligenza artificiale – che spesso definisco “ ” (intelligenza aumentata) – aiuterà i team di sicurezza a effettuare una valutazione preliminare più rapida e con maggiore accuratezza complessiva.

[Leggi anche: Ecco la vostra guida definitiva alla sicurezza informatica basata sull’intelligenza artificiale: vantaggi, rischi e benefici]

Grazie all’impiego di tecnologie avanzate, è possibile ridurre non solo il carico di lavoro connesso alla risposta agli attacchi, ma anche il conseguente esaurimento del personale – nonché gli errori umani derivanti dalla “” (stanchezza da allarmi).

2. Sfruttate appieno gli SBOM

Una caratteristica del software moderno che lo rende così facilmente vulnerabile agli attacchi è che non viene più scritto da zero. Gli sviluppatori prelevano frammenti di codice da librerie online di terze parti, e ogni frammento rappresenta una potenziale vulnerabilità. Pertanto, non è più sufficiente sapere quali software sono presenti sul proprio sistema; ora è necessario elencare ogni singola libreria o modulo utilizzato per la compilazione del software che si desidera installare.

”Mantenere un inventario accurato di tutti i componenti di tutti i software presenti nella vostra rete sarebbe già di per sé piuttosto difficile, se tale inventario fosse statico. Non lo è.”

Questo tipo di elenco, denominato “ ” (SBOM), consente di tenere traccia delle vulnerabilità presenti in file, librerie e componenti di terze parti. È utile – e va ben oltre le capacità dell’uomo di crearlo manualmente.

Idealmente, i fornitori e gli sviluppatori di software assumeranno il proprio ruolo di unica fonte di riferimento per i propri prodotti e includeranno gli SBOM nelle proprie applicazioni software. Esistono inoltre strumenti che automatizzano la creazione di tali elenchi. Anche il governo federale è intervenuto: il decreto presidenziale n. 2021 del presidente Biden, intitolato “ ” ( ) e finalizzato al miglioramento della sicurezza informatica nazionale, impone ai fornitori che forniscono software al governo federale di includere una SBOM per ogni componente dei propri prodotti.

[Leggi anche: Il piano d’azione del governo statunitense per rafforzare le catene di approvvigionamento]

Mantenere un inventario accurato di tutti i componenti di tutti i software presenti nella vostra rete sarebbe già di per sé piuttosto difficile, se tale inventario fosse statico. Non è così: se gli sviluppatori di software scaricano codice open source e ne cambiano il nome o lo modificano leggermente, tale codice potrebbe apparire in modo diverso nel loro software rispetto a quello di qualcun altro. Oppure, se un repository di codice GitHub è sicuro martedì, ma poi mercoledì un malintenzionato effettua un “commit” dannoso o apporta una modifica al codice, la vostra rete torna ad essere vulnerabile non appena qualcuno reimporta quel repository.

3. Creare un ambiente di test del software

Se state sviluppando software, dovete aggiungere un ulteriore livello di protezione utilizzando un repository privato per tutto il codice che avete implementato. Questo codice deve essere sottoposto a revisione e reso sicuro; non deve mai essere prelevato direttamente dalle fonti originali a monte senza una verifica della sicurezza. Una volta predisposto un repository sicuro, potrete scaricare un software ed esaminarlo riga per riga in tutta riservatezza, con la certezza che nessuno al di fuori della vostra organizzazione possa apportarvi modifiche.

Se, ad esempio, desiderate utilizzare la libreria software OpenSSL, potete scaricare il codice sorgente e integrarlo nel vostro ambiente di sviluppo privato, dove potrete implementare correzioni e aggiornamenti man mano che vengono rilasciate nuove versioni. Il vantaggio di questo approccio è che consente di trasferire il codice e di gestire le revisioni di qualsiasi nuovo codice ad esso aggiunto. Il repository Le offre l’opportunità di testare il software e di assicurarsi che non causi alcun malfunzionamento nel Suo ambiente, prima di procedere alla sua implementazione.

4. Definire un piano di gestione delle vulnerabilità

Anche in un ambiente di test, è probabile che alcuni attacchi abbiano successo. È quindi necessario elaborare un piano di gestione delle vulnerabilità e porsi le seguenti domande:

  • Sono pronto ad agire qualora qualcosa dovesse sfuggirmi? Chi sarà responsabile della gestione dell'emergenza?
  • Disponiamo delle politiche e delle procedure necessarie per definire le modalità di gestione dell’ e gestione delle patch nel caso in cui emerga una vulnerabilità critica?
  • Qual è il nostro piano di gestione dei rischi legati a terze parti : qualora una libreria di terze parti presentasse una vulnerabilità critica, in che modo identificheremo le applicazioni che utilizzano tale libreria e come provvederemo a mettere offline i servizi critici per applicare la patch?

[Leggi anche: La sicurezza della catena di approvvigionamento è una sfida complessa: quale dovrebbe essere, quindi, il modello ideale?]

  • È possibile neutralizzare l'attacco senza ripercussioni significative sulle nostre operazioni critiche per l'azienda?
  • Abbiamo definito politiche di comunicazione efficaci per gli stakeholder interni ed esterni nell’ambito dei nostri piani di intervento di emergenza?

5. Rendete le vostre politiche più incisive

Dopo così tanti attacchi, i CISO sono consapevoli dell’importanza di formare i dipendenti per evitare che scarichino contenuti da siti sospetti o, ad esempio, che consentano ai propri figli di installare Minecraft su un dispositivo aziendale. Inoltre, i lavoratori si dimostrano sempre più cauti nei confronti dei dispositivi dell’Internet delle cose (IoT), quali telecamere, stampanti e telefoni VoIP (che utilizzano una connessione a Internet e la tecnologia “Voice over Internet Protocol” per effettuare chiamate).

“È necessario disporre sia di una politica scritta sull’uso accettabile del software, sia di un sistema tecnico per Enforce . Non si tratta di un compito semplice, ma può essere semplificato… grazie all’automazione.”

Tuttavia, un elemento fondamentale di qualsiasi sistema di difesa è costituito dai controlli tecnici che impediscono, in primo luogo, il verificarsi di intrusioni indesiderate. Una cosa è dire ai dipendenti di non installare unità di memoria portatili ( USB ) o software non attendibili sui propri computer portatili; un’altra è rendere tecnicamente impossibile che lo facciano.

Questo è l’aspetto con cui molte aziende hanno difficoltà. Se non altro per motivi di conformità normativa, è necessario disporre sia di una politica scritta sull’uso accettabile del software sia di uno strumento tecnico che ne garantisca l’ Enforce . Non si tratta di un compito semplice, ma può essere semplificato, ancora una volta, grazie all’automazione. Verificare regolarmente le vostre “politiche scritte” e accertarsi di aver implementato le misure tecniche necessarie a integrarle rappresenta una strategia eccellente per migliorare il livello di sicurezza della vostra organizzazione.

[Leggi anche: Perché i lavoratori violano le politiche di sicurezza informatica]

6. Effettuare una valutazione approfondita delle capacità

Nel definire i piani per prepararsi all’inevitabile crisi della catena di approvvigionamento, i CISO farebbero bene a rispondere alle domande poste in questo grafico:

Un grafico a forma di piramide che elenca le domande da porre in merito alle esigenze chiave in materia di sicurezza informatica, partendo dall’inventario alla base e procedendo verso l’alto attraverso telemetria, rilevamento, triage, minacce, comportamenti, ricerca, tracciamento e intervento.

Realizzato da Matt Swann, esperto di sicurezza presso Microsoft , questo grafico illustra la “gerarchia dei bisogni” nella risposta agli incidenti. Si ispira alla Gerarchia dei bisogni dello psicologo statunitense Abraham Maslow, che delinea i bisogni umani, a partire da quelli più elementari. La versione di Swann descrive le capacità che le organizzazioni devono sviluppare per proteggere i propri beni aziendali. Anche in questo caso si parte dall’elemento più elementare – un inventario delle risorse – e ogni livello costituisce un prerequisito per la funzionalità di livello superiore.

I responsabili della sicurezza potrebbero trovarsi a dover affrontare difficili discussioni interne riguardo alla posizione che le loro organizzazioni occupano in questa piramide in termini di maturità. Alcune aziende potrebbero trovarsi bloccate ai livelli più bassi, senza sapere con certezza se siano in grado di identificare e garantire una visibilità completa su tutte le risorse che stanno proteggendo. Se non siete in grado di identificare e localizzare tutte le vostre risorse, qualsiasi azione intrapresa a partire da quel livello potrebbe interessare solo una parte della vostra superficie di attacco complessiva, con conseguenze gravi sull’efficienza del vostro team.

I vostri specialisti nella ricerca delle minacce di saranno notevolmente più efficaci quando opereranno in un ambiente dotato di telemetria e visibilità affidabili.

7. Coltivare l’ecosistema delle relazioni

Nel corso del mio mandato in qualità di direttore della ricerca sulla sicurezza inform endpoint a presso Tanium (società proprietaria della presente pubblicazione), ho avuto modo di osservare come i clienti cerchino di proteggere la propria catena di fornitura del software ricorrendo a una vasta gamma di approcci, dagli strumenti sviluppati internamente alle soluzioni pronte all’uso. Il problema è che, se non vengono condotti con la dovuta attenzione, i tentativi di identificare, isolare e neutralizzare il codice difettoso possono rallentare o, peggio ancora, mandare in tilt l’intero sistema.

Una strategia più efficace consiste nel coltivare le relazioni tra tutte le parti interessate – all’interno della vostra organizzazione, della vostra rete di fornitori e della vostra catena di approvvigionamento. I CISO sono più efficaci quando comprendono in che modo i propri dipendenti utilizzano la tecnologia, come i fornitori garantiscono la sicurezza dei propri software e in che modo le istituzioni pubbliche e gli altri partner del settore possano contribuire a sostenere tali iniziative.

La Sua catena di fornitura del software è costituita da numerose anelle. Questo è quindi il modo migliore per proteggerlo.

Il grafico “Gerarchia dei bisogni nella risposta agli incidenti” di Matt Swann, fornito da , con autorizzazione.