Di Jacopo Sabbadini

Negli ultimi anni abbiamo visto una crescita esponenziale delle minacce alla sicurezza informatica. Questo fenomeno si è acuito nell’ultimo periodo a causa della situazione dovuta alla pandemia mondiale, che ha portata ad un incremento del lavoro da remoto, accelerando di molto un fenomeno già in essere.

A seguito di questo trend molte realtà aziendali hanno cominciato ad implementare svariate soluzioni di sicurezza basate sull’analisi del traffico e dei pacchetti , sulle firme dei programmi , sul comportamento delle utenze.

 

 

Questa “presa di consapevolezza” da parte delle aziende non sembra però aver sortito effetto, praticamente ogni giorno si legge di un nuovo attacco a grandi infrastrutture, spesso strategiche (Colonial Pipeline, AXA, Glovo, solo per citarne alcune) dunque sorge spontanea una domanda: come è possibile che con l’aumento delle misure di protezione, vi sia un conseguente aumento degli attacchi riusciti contro le stesse infrastrutture che implementano questi sistemi?

Per rispondere a questa domanda, bisogna partire da un concetto che pare banale, ma è cardinale in questa analisi: nessun’azienda, nessuna realtà è un’isola. Maggiore è l’azienda, maggiore è il suo giro di affari, maggiore è la galassia di fornitori di beni e servizi che orbitano intorno all’azienda stessa.

Se l’azienda di riferimento è in grado di utilizzare un determinato budget per l’implementazione e il controllo delle misure di sicurezza informatica, è quasi matematico che almeno una parte dei suoi fornitori non abbiano accesso a simili risorse; e quindi, i fornitori stessi diventano il principale obiettivo di un attacco, non tanto per i dati che possono possedere, ma per gli accessi che si possono recuperare.

Un esempio emblematico su tutti è quanto successo con VMWare; la società si occupa di virtualizzazione, ed è leader di mercato per quanto riguarda il deploy di macchine virtuali su server di produzione, ricerca e sviluppo. Quanto accaduto è stato che, ad un certo punto, durante un controllo, il team di sicurezza di VMWare si è reso conto che vi era una API con all’interno del codice mai scritto da loro, che permetteva un accesso non autenticato ma con alti privilegi dall’esterno, e l’esecuzione di codice da remoto; in buona sostanza, era un rootkit inserito non si sa da chi o quando, con molta probabilità aggiunto a seguito di una violazione dei sistemi di un proprio fornitore, che non ne era neanche a conoscenza. Quello che però si sa di per certo sono state le conseguenze: l’attacco a SolarWinds che ha messo in ginocchio moltissime aziende che utilizzano i loro software; tutto è partito da un attacco ai fornitori di VMWare, ed si è arrivati alla crisi della gestione di Orion ed Exchange.

Come fare quindi in una realtà in cui chiunque può essere un bersaglio, e magari anche un veicolo inconsapevole di attacchi mirati?
È da ripensare completamente l’idea di cybersecurity e sicurezza in generale.

Ad oggi si utilizzano dei sistemi con una vulnerabilità lampante: un antivirus, per quanto complesso e “intelligente” si basa su delle firme, su qualcosa di già noto, oltre che su un costante aggiornamento delle proprie componenti di rilevazione.

Una simile soluzione è inadeguata a proteggere contro le odierne minacce, che spesso si declinano in zero days e potenziali attacchi che arrivano da utenti “fidati” all’interno del sistema.

Bisogna passare da una logica di controllo attivo, come quella degli antivirus, firewall e via discorrendo, ad una logica di zero-trust per la quale indifferentemente dal fatto che l’utente sia autenticato, che il processo sia considerato sicuro o in ogni caso non facente riferimento ad alcun database di malware, qualsiasi azione considerata potenzialmente pericoloso viene immediatamente interrotta e segnalata.

Vista l’evoluzione delle tecniche di attacco, la ampia superficie d’attacco disponibile, le classiche soluzioni hanno fatto il loro tempo.

 

 

[1] Application Program Interface, è un sistema di interrogazione di un’applicazione utilizzato per automatizzare dei processi in programmazione.

[1] Malware che permette l’accesso a un sistema, l’esecuzione di comandi e/o programmi, spesso con alti livelli di privilegio.

[1] Malware sconosciuti, di cui non esistono firme digitali in nessun database

di Alessandro Bottonelli

 

Secondo la Commissione Europea, parrebbe di si (V. risposta ufficiale). Eppure chi avesse interpretato che da solo un Indirizzo IP è “dato personale” ha forse preso una abbaglio? Notare che si considerano dati personali tutte le informazioni relative a una persona vivente identificata o identificabile. Anche le varie informazioni che, raccolte insieme, possono portare all’identificazione di una determinata persona costituiscono i dati personali”. Notare il raccolte insieme. Dopo la premessa, segue una lista esemplificativa di possibili dati personali, fra cui spicca: “un indirizzo IP”. Le informazioni della lista d’esempio sono individualmente “dati personali”? O sono tali quando sono informazioni che assemblate fra loro identificano una persona fisica? (v. ancora il raccolte insieme).

La tesi dell’autore è che da solo un indirizzo IP non identifica una persona fisica. Nella migliore delle ipotesi, e non sempre, identifica una macchina o meglio un sistema (PC, Server, Stampante, Disco di Rete, Router, qualunque cosa). Di per sè l’indirizzo IP non ci dice nulla della “persona” (fisica!) dietro al o ai sistemi¦ quando una persona c’è! (v. IoT, domotica ed altro).

Legare un IP pubblico ad un interessato (persona fisica: individuo appartenente alla specie homo-sapiens) richiede molti altri dati da correlare fra loro temporalmente e logicamente. E quasi mai oltre ogni ragionevole dubbio. Molti di questi altri dati sono accessibili solo alle c.d. “LEA” (Law Enforcemente Agencies) a fronte di specifiche circostanze e mandati. Da notare che le “LEA” sono escluse dal campo di applicazione (o “scope“) del GDPR. Anche per un’azienda di qualunque dimensione è difficile legare con assoluta certezza un IP privato delle proprie reti interne ad una persona fisica. Anche quando (quando?) si raccolgano a norma i log.

In sintesi: un indirizzo IP da solo non è, di per sé, dato personale: difficile da esso identificare univocamente una persona fisica. Servono altri dati.

A supporto di questa tesi occorre una spiegazione tecnica: che si spera d’aver reso il più possibile accessibile a tutti. Un indirizzo IP è ¨ la proprietà   di uno o più sistemi. Non è una proprietà dell’interessato che forse sta usando il sistema: se c’è¨ almeno un umano dietro al sistema. Non è neanche una proprietà della o delle macchine che compongono il sistema. E spesso è una proprietà volatile, non fissa nel tempo (i c.d. “ip dinamici”). Per parafrasare: sarebbe come sostenere che la “targa”, e non necessariamente permanente, di una automobile identifichi il suo guidatore. O, peggio, sostenere che la targa, mutevole, di un autobus identifichi tutti i suoi passeggeri (quando più¹ sistemi condivisi da più¹ persone condividono lo stesso IP).Per esemplificare e semplificare, prendete il vostro PC (ma vale per qualunque sistema/macchina: un server, una WebCam, un Televisore, ecc.).

Fig. 1 – la “pila” o “catena” apri in nuova scheda

Fate riferimento alla figura 1. Pensate al PC o qualunque altro oggetto di rete. Da spenta la macchina è un semplice “pezzo di ferro”, senza alcuna proprietà e men che meno un indirizzo IP. Da acceso il pezzo di ferro diventa sistema grazie al Sistema Operativo “OS” installato sulla macchina, non importa quale OS, anzi, una singola macchina potrebbe diventare più sistemi (questione qui non approfondita) che condividono lo stesso indirizzo IP. Fra le tante cose che fa, l’OS inizializza la c.d. Scheda di Rete (NIC o “Network Interface Card“), di qualunque natura essa sia: wifi, cablata o altro. Per i puristi: la NIC ha, anzi avrebbe, una proprietà unica di fabbrica chiamata MAC-Address, peccato che esso sia riprogrammabile dall’OS e serva solo alla rete locale, quindi è un’informazione che va perduta oltre il primo router: quindi la NIC non identifica neanche il pezzo di ferro. Finita di inizializzare la NIC, il Sistema Operativo (forse!) associa alla NIC un “indirizzo IP” della rete locale, ma anche due, tre o dieci indirizzi IP: nulla lo impedisce. Concluso tutto questo processo, il sistema (non la macchina, non i suoi utenti!) ha uno o più indirizzi IP. Che sia stato o meno riprogrammato, il MAC-Address è “informazione perduta”: non arriva ad InterNet. È probabile che il sistema o sistemi della rete locale subiscano il c.d. “NATting”: tutto e tutti si presentano ad internet con un solo indirizzo IP pubblico. Le informazioni MAC-Address e IP address della rete locale sono andate perdute.

In conclusione. Organizzazioni con uno o migliaia di sistemi “dentro” la propria rete locale si presentano ad Internet con un unico indirizzo IP: come si lega quell’indirizzo al o agli umani, se ce ne sono, che stanno usando quell’indirizzo? Come anticipato, si può fare: ma è¨ un esercizio difficile proprio come provare a legare la targa (mutevole!) di un autobus a tutti i suoi passeggeri! O, peggio, tentare di legare il codice radio di una nave traghetto che trasporta più autobus prima agli autobus e poi ai passeggeri di ogni autobus.

In realtà , la parafrasi è imperfetta. È più facile per una “LEA” (Law Enforcement Agency”) legare il codice radio della nave traghetto agli autobus attraverso il manifesto di carico della nave e con qualche altro passaggio arrivare ai passeggeri degli autobus. Il codice radio del traghetto e le targhe degli autobus sono statici. Invece gli indirizzi IP (le targhe e codici radio della parafrasi) sono spesso volatili: rendendo l’esercizio ben più complicato.