Che si tratti di tecnologie destinate al consumatore finale o di tecnologie destinate al mondo delle imprese, il dato di fatto è che viviamo in un mondo nel quale siamo sempre più circondati da oggetti intelligenti.
Serrature, automobili, frigoriferi, macchinari industriali, altoparlanti, termostati, telecamere di sicurezza, orologi e fitness tracker sono solo alcune delle tante declinazioni nelle quali si presenta oggi l’IoT, l’Internet of Things.
E se pensiamo che a livello mondiale entro i prossimi 10 anni le più accreditate società di analisi e ricerca parlano di un installato mondiale di 50 miliardi di dispositivi, è facile capire come proprio l’IoT sia una delle tecnologie a più rapida diffusione degli ultimi anni. Ma quanto è sicura?
Sicurezza IoT, perché è importante
È chiaro che l’IoT, in tutte le sue declinazioni, sia oggi un grande abilitatore e un grande facilitatore di molte attività, dal controllo dei consumi domestici alla valutazione del corretto funzionamento di una macchina di produzione.
Tuttavia, è sufficiente pensare al suo funzionamento per capire come il tema della sicurezza sia tutt’altro che secondario: l’Internet delle cose (IoT) è di fatto una rete di oggetti fisici connessi alla rete o connessi tra loro, che abilita gli oggetti stessi alla raccolta e allo scambio di dati.
È dunque indispensabile che le informazioni vengano trasmesse in modo sicuro, senza metterne a repentaglio né l’integrità né la riservatezza.
I dispositivi IoT sono a tutti gli effetti vulnerabili ad attacchi, manomissioni e compromissioni, esattamente come altre componenti tecnologiche che compongono un ambiente IT.
10 criticità della sicurezza IoT
Secondo un’interessante analisi pubblicata da OWASP Foundation, un’organizzazione no profit che si occupa della sicurezza di software e applicazioni, ci sono almeno dieci criticità che emergono quando si parla di sicurezza IoT:
- Password deboli, facilmente indovinabili
2. Servizi di rete non sicuri
3. Interfacce insicure
4. Mancanza di una metodologia di aggiornamento sicura
5. Uso di componenti non sicuri o obsoleti
6. Insufficiente protezione della privacy
7. Trasferimento e archiviazione dei dati non sicuri
8. Mancanza di sistemi di telegestione del dispositivo
9. Impostazioni predefinite non sicure
10. Mancanza di hardening fisico
La stessa Gartner, pur evidenziando le enormi potenzialità di una tecnologia come l’IoT, in grado di salvare vite umane e far risparmiare tempo, energia e denaro agli individui e alle imprese, sottolinea come una Internet of Things sviluppata senza una forte enfasi sulla sicurezza possa essere addirittura estremamente pericolosa.
I numeri sembrano darle ragione.
Dalle evidenze del rapporto Symantec sulla Internet Security dello scorso anno, emerge ad esempio un incremento del 600 per cento degli attacchi IoT e una crescita esponenziale degli attacchi indirizzati ai sistemi di controllo industriale.
Non solo.
In media i dispositivi IoT subiscono 5.200 attacchi al mese e gli attacchi hanno come bersaglio preferito router e videocamere connesse.
Come testare la sicurezza IoT
Date queste premesse, è facile intuire perché molti analisti siano concordi nel sostenere la necessità di condurre test approfonditi sui dispositivi IoT, per capire se e quanto i propri dispositivi siano effettivamente protetti dalle diverse tipologie di attacco, se sia possibile adottare strumenti di mitigazione delle minacce, se e come identificare le minacce e neutralizzarle prima che raggiungano l’obiettivo.
In effetti, in base a quanto definito dal Nist, il National Institute of Standards and Technology, il framework di riferimento per la cybersecurity si articola in quattro fasi:
- “Identify”
- “Protect”
- “Detect”
- “Respond”
È in questo framework che si inseriscono i penetration test, i test di penetrazione, che possono rappresentare una soluzione e una risposta ai dubbi dei responsabili della sicurezza aziendale.
Rientrano a pieno titolo nella fase di identificazione dei rischi a cui i sistemi, e in questo caso i dispositivi IoT, sono effettivamente esposti.
Cosa sono i Penetration Test e come funzionano
Il Penetration Test è un test che valuta la sicurezza di un sistema, validando l’efficacia dei controlli di sicurezza. L’obiettivo è evitare che un malintenzionato possa compromettere l’integrità, la disponibilità e la riservatezza delle informazioni o addirittura compromettere il funzionamento del dispositivo.
I Pentest possono essere esterni, e servono per capire se e in quale profondità un malintenzionato può – per l’appunto dall’esterno – penetrare in un sistema attraverso l’analisi di punti di accesso scoperti, come potrebbero essere backdoor o bug di sistema. I Pentest interni, invece, servono a individuare falle nel sistema aziendale e, dunque, comprendere quali sono i rischi cui un’azienda potrebbe essere esposta qualora un attacker si appropri delle credenziali di un dipendente.
A queste due tipologie di test se ne aggiungono altre, come il target testing, che indirizza, come suggerisce il nome, specifiche aree o dispositivi, o i Pentest alla cieca, che hanno come oggetto la sola infrastruttura aziendale, che l’attacker deve penetrare attraverso tecniche di hacking.
Oggetto di testing possono dunque essere applicazioni, reti wireless, protocolli, dispositivi e periferiche, di cui si testano le configurazioni, spesso lasciate “di default” e dunque più facilmente attaccabili. Sono oggetto di testing anche i sistemi di autenticazione, per verificare la possibilità di aggirare i controlli, i sistemi di identity management, per la verifica di ruoli e privilegi, di autorizzazione, per comprendere se sia possibile raggiungere delle risorse sfruttandone intenzionalmente le vulnerabilità.
Come si effettua il Penetration Testing
Come abbiamo già visto, i Penetration Test o Pentest sono di fatto degli attacchi cyber simulati, che vengono effettuati per testare un sistema e rilevare la presenza di vulnerabilità sfruttabili nell’ambito della sua sicurezza.
Nel corso del test, una volta individuata la vulnerabilità, la stessa viene utilizzata per attaccare il sistema al fine di ottenere l’accesso ai dati.
Questo tipo di prove rientra nella grande famiglia delle attività riconosciute come hacking etico e le persone che li eseguono sono note come hacker etici.
L’importanza dei Penetration Test sta nel fatto che consentono di scoprire problemi non sono facili da rilevare attraverso la “semplice” analisi manuale del sistema.
Come fare Penetration Testing sui dispositivi IoT
Quando si effettuano Penetration Test sui dispositivi IoT se ne si testa di fatto la sicurezza. Per essere più precisi, si verifica se le informazioni sono protette sia durante le fasi di trasmissione, sia quando archiviate, se sia possibile far eseguire al dispositivo attività che non dovrebbero essere svolte, se sia possibile aggirarlo, se sia possibile aggirare i requisiti di autenticazione, se vi siano vulnerabilità sfruttabili da un malintenzionato.
Perché il test sia efficace, basterebbe prendere in esame la checklist OWASP e verificare quali dei 10 punti riguardano il dispositivo in esame
Penetration Testing su dispositivi IoT: vettori e metodologie
È sempre OWASP che indica una metodologia di approccio al Penetration Testing in ambito IoT.
Innanzitutto, è importante prendere in esame i vettori dei possibili attacchi.
OWASP ne identifica sei:
• Hardware
• Firmware
• Network
• Comunicazioni wireless
• Applicazioni Mobile e Web applications
• API Cloud
Per ognuno di questi vettori è necessario condurre una serie di verifiche.
Così, a livello di hardware i penetration test riguardano i protocolli di comunicazione interna come UART, I2C, SPI ecc., il controllo della presenza di eventuali porte aperte, il bebug JTAG, l’esecuzione del firmware dalla memoria EEPROM o FLASH, verifiche di manomissione.
Se il vettore in esame è il firmware, si parla di analisi binaria, Reverse Engineering, analisi dei diversi file system, verifica delle chiavi e dei certificati, possibilità di modifica del firmware stesso.
A livello di rete, invece, è importante effettuare un controllo sulla sicurezza radio, in particolare in relazione alla possibilità di sfruttare protocolli di comunicazione, le possibili vulnerabilità di BLE, Zigbee, LoRA, 6LoWPAN, l’eventualità di uno sniffing di pacchetti radio, gli attacchi basati su jamming, o ancora la possibilità che un malintenzionato possa modificare e riprodurre pacchetti.
Sei consigli per la sicurezza IoT
È sempre OWASP che, a margine delle considerazioni fatte su come effettuare i Penetration Test, dà sei indicazioni su come rendere più sicuri i propri dispositivi IoT.
In primo luogo, è importante rendere l’hardware resistente alle manomissioni.
Fondamentale, ed è questo il secondo consiglio, installare sempre gli aggiornamenti e le patch per il firmware.
E poi utilizzare sistemi di autenticazione forte e una crittografia avanzata e protocolli protetti.
Infine, gli ultimi due consigli riguardano il fine vita dei dispositivi: è importante specificare sempre quali procedure seguire per proteggere in dati in fase di smaltimento del dispositivo e specificare quale metodologia seguire per “distruggere” il dispositivo che sia irrimediabilmente guasto.
La visione di Vodafone Business
Pienamente consapevole di quanto il tema della sicurezza sia centrale per ogni tipo di organizzazione e azienda, Vodafone Business ha messo a punto, all’interno del proprio pacchetto di offerta per il mondo delle imprese, una serie di servizi e strumenti utili per rispondere ai quattro pilastri della sicurezza e della resilienza IT stabiliti dal NIST: “Identify”, “Protect”, “Detect” e “Respond”.
Tra questi servizi, rientra anche un’offerta di tool e servizi di Offensive Security Testing, che di fatto esaminano i livelli di sicurezza di una organizzazione attraverso una serie di test progettati, per l’appunto, per scoprire eventuali falle di sicurezza e vulnerabilità in applicazioni critiche o in dispositivi critici, che potrebbero lasciare un’impresa esposta ad attacchi informatici. L’esito di queste prove non solo consente alle imprese di avere evidenza di quali applicazioni e dispositivi sono effettivamente protette dagli attacchi cyber, ma fornisce anche utili informazioni e raccomandazioni sulle azioni correttive da intraprendere per i sistemi non sicuri.
I Penetration Test nell’offerta Vodafone Business
Tra i servizi resi disponibili da Vodafone Business troviamo anche i Penetration Test, disponibili sotto forma di suite e declinati in due forme: Infrastructure Penetration Testing e Application Penetration Testing.
Nel primo caso si effettua un test sulla sicurezza tecnica dell’infrastruttura ICT del Cliente attraverso la simulazione di un attacco controllato finalizzato a rilevare vulnerabilità che un attaccante potrebbe sfruttare.
Nel secondo caso sono effettuate scansioni dinamiche delle applicazioni per scoprire potenziali punti vulnerabilità del software quali SQL injection, cross-site scripting, software senza patch e crittografia debole.
Entrambe i profili di servizio prevedono livelli di complessità e di profondità crescenti.
Una volta conclusi i test, è rilasciato un report che elenca tutti i risultati, evidenzia le vulnerabilità riscontrate e descrive le raccomandazioni per l’eliminazione delle minacce. Tale report disponibile sia nella forma di dettaglio (Technical Report), sia in quella sintetica (Executive Summary).
I Penetration Test fanno parte dei servizi inseriti nell’offerta Vodafone Business Security che ha l’obiettivo di offrire alle imprese una protezione multi-layer grazie anche ai servizi di threat intelligence e data security della rete globale Vodafone, attraverso i quali si proteggono quotidianamente 7,4 miliardi di minuti di chiamate mobili e 105mila dispositivi Internet of Things in 39 Paesi.