GPS Spoofing, il Machine Learning per migliorare la sicurezza dei moderni sistemi per droni

Nell’ambito del progetto di ricerca europeo C4D (Comp4Drones - Components for Drones) cofinanziato dal programma ECSEL Joint Undertaking e coordinato da Indra, il cui obiettivo è semplificare lo sviluppo di applicazioni per droni offrendo un framework di riferimento attraverso lo sviluppo di componenti hardware e software componibili (per lo sviluppo di applicazioni di droni dedicate che abbiano nell’autonomia, nella resilienza e nella safety dei sistemi le prestazioni chiave), c’è anche lo sviluppo di moduli embedded per migliorare sicurezza e tolleranza ai fallimenti dei moderni sistemi per droni.

Ne ha parlato di recente l’Ing. Daniela Angela Parletta, Research Engineer di Modis, durante l’ultima edizione del Next Generation Mobility, portando alla platea un esempio concreto di GPS Spoofing Detection basato su Machine Learning, cioè un avanzato sistema di rilevamento di una delle tipologie di attacco cyber più insidiose per i sistemi sviluppati per i droni (per esempio i software e le piattaforme che ne definiscono traiettorie, operazioni, ecc.).

Cos’è il GPS Spoofing

In apertura del suo discorso, l’Ing. Parletta ha spiegato, innanzitutto, cos’è il cosiddetto spoofing. Si tratta di una tipologia di attacco cybernetico che mira all’alterazione del comportamento di un sistema attraverso la generazione di input malevoli che si sostituiscono a quelli autentici.

«Un GPS Spoofing, di fatto, si basa su un cosiddetto “spoofer”, ossia una entità malevola che genera un segnale simile a quello GPS, contenente però coordinate fittizie “costringendo” un drone a compiere un percorso differente da quello previsto», spiega l’Ing. Parletta. «In un attacco di questo tipo, il sistema di ricezione GPS che permetta la geolocalizzazione del drone è “ingannato” dallo spoofer (che solitamente trasmette a potenza maggiore rispetto ai satelliti)».

Il drone seguirà quindi il segnale di spoofing - segnale fittizio generato dallo spoofer che ha caratteristiche di frequenza simili a quelle del GPS, ma ha una potenza maggiore e contiene le coordinate progettate dallo spoofer – e percorrerà il percorso di spoofing anziché il suo percorso originario per il quale era stato impiegato (vedi figura). Una conseguenza che può generare impatti di vario livello a seconda dell’effettivo impiego dei droni e dell’ambito di criticità e sicurezza all’interno del quale operano (un attacco GPS Spoofing in ambito militare potrebbe avere conseguenze molto critiche, ma anche in contesti differenti che vedono - per esempio - l’impegno dei droni per il controllo territoriale o la consegna di medicinali e altri beni di prima necessità in zone colpite da catastrofi, le conseguenze potrebbero essere molto negative).

Spoofing Detection, dal rilevamento hardware a quello software

Le principali soluzioni attualmente in uso, allo stato dell’arte, per contrastare questo tipo di minaccia – spiega in dettaglio l’Ing. Parletta durante il suo intervento – sono basate sull’osservazione. Molti dei moderni rilevatori di spoofing sono implementati tramite hardware dedicati integrati direttamente nel ricevitore (cioè nell’antenna GPS del drone).

«Per quanto il segnale di spoofing possa essere fedele al segnale GPS originale, esistono delle caratteristiche relative alla frequenza dei segnali stessi che generano un disallineamento di fase (il segnale falsificato dallo spoofing mostra un ritardo di fase rispetto alle portanti generate dai satelliti)», dettaglia meglio l’Ing. Parletta. «È dall’osservazione e dal rilevamento di questi disallineamenti (ossia dei cosiddetti offset di fase) che si deve dunque partire per contrastare l’attacco di spoofing».

Come accennato, molti sistemi di spoofing detection sono basati su circuiti molto sofisticati, ossia componenti hardware che vengono integrati all’interno dei ricevitori GPS installati sui droni. «Sebbene questi sistemi siano capaci di rilevare molti attacchi di spoofing – sottolinea l’Ing. Parletta – si tratta di sistemi che hanno un costo molto elevato e che può quindi essere giustificato solo in alcune applicazioni specifiche, come per esempio in ambito militare».

Che fare dunque in contesti dove i droni rappresentano un efficace sistema di supporto ma con requisiti di sicurezza meno stringenti che non giustificano il costo dei sistemi di spoofing detection hardware?

La risposta sta nel software, ossia in un sistema di rilevazione delle minacce di spoofing – integrato all’interno della piattaforma di gestione, governo e controllo del drone – che processa ed analizza i dati di output del GPS senza dover integrare alcun tipo di hardware aggiuntivo.

«Le prestazioni di un sistema di questo tipo sono leggermente inferiori rispetto a quelle di un sistema hardware progettato appositamente per il GPS Spoofing Detection – puntualizza l’Ing. Parletta – ma in contesti dove le minacce sono inferiori ed i requisiti di sicurezza non sono così critici e stringenti come nell’ambito della Difesa e in campo militare, possono rappresentare la soluzione ottimale, il giusto equilibrio tra efficacia ed efficienza di costo».

Un sistema software di questo tipo analizza, di fatto, i dati di output del GPS confrontando nello specifico i dati relativi alla potenza per definire se il segnale è sotto attacco oppure è “genuino”.

«Nell’ambito del progetto di ricerca Comp4Drones abbiamo sfruttato il Machine Learning per strutturare un sistema di classificazione e ingegnerizzare la capacità di detection dei segnali GPS e la loro classificazione, in tempo reale, tra segnali corretti e segnali malevoli», dettaglia in chiusura l’Ing. Parletta. «La problematica iniziale che abbiamo dovuto affrontare riguardava i dataset: nelle applicazioni di cybersecurity è notoriamente difficile costruire dataset di grosse dimensioni rappresentativi di scenari di attacco reali. Avere enormi quantità di dati relativi ai segnali GPS corretti – quindi dati non relativi ad attacchi – è abbastanza facile; lo è decisamente meno avere i dataset dei segnali GPS sotto attacco, che però sono dataset importantissimi perché servono per “allenare”, tramite Machine Learning, il sistema di detection e per ingegnerizzare quindi le funzionalità stesse di rilevamento della minaccia».

Per ovviare al problema dei dataset, si è quindi deciso di sfruttare le Support Vector Machine – SVM, ossia classificatori che, sotto certe ipotesi ben definite, ottengono buone prestazioni anche su dataset di piccole dimensioni. «Lavorando preventivamente molto bene sulle features (cioè sulle caratteristiche specifiche di ogni dato che rappresenta un segnale di output del GPS) e ingegnerizzando l’estrazione in tempo reale delle caratteristiche dei dati che rappresentano i segnali GPS, è stato poi possibile sfruttare le SVM per separare i segnali in autentici (quelli originali del sistema) o malevoli (quelli sotto attacco spoofing), con una accuratezza della prestazione pari a circa il 98%».