▾ G11 Media: | ChannelCity | ImpresaCity | SecurityOpenLab | Italian Channel Awards | Italian Project Awards | Italian Security Awards | ...

Bluetooth 6: perché sarà più sicuro

La nuova funzione Channel Sounding mette ordine a quanto è stato sviluppato sinora per i device Bluetooth come token di prossimità, considerando la robustezza delle comunicazioni come un requisito di base

Sicurezza fisica

Nel mondo della cybersecurity ci sono problemi certamente più pressanti della messa in sicurezza delle comunicazioni Bluetooth. Va però considerato che Bluetooth è alla base di diversi sistemi di controllo e sicurezza fisica che, nel tempo, si sono rivelati piuttosto semplici da aggirare. I casi più "notiziabili" sono sicuramente stati quelli collegati alla violazione dei sistemi "keyless" di diverse automobili e di alberghi e uffici. In generale, i sistemi Bluetooth si sono rivelati vulnerabili ad attacchi di tipo Man In The Middle - in cui un malintenzionato intercetta le comunicazioni Bluetooth lecite di un device, le modifica a suo vantaggio e le ritrasmette a un secondo device - o di spoofing, in cui un dispositivo "pirata" genera comunicazioni apparentemente corrette.

Ora il gruppo di lavoro Bluetooth Special Interest Group (SIG) ha presentato una nuova serie di specifiche che riguardano le funzioni di base di Bluetooth 6, la nuova versione del protocollo wireless. Tra queste funzioni di base se ne segnala soprattutto una - denominata Channel Sounding - che promette di aumentare la sicurezza nell'utilizzo di dispositivi Bluetooth come token fisici di accesso.

Bluetooth LE e le tecnologie di localizzazione

Tralasciando i semplici sistemi di beaconing - in cui i device Bluetooth trasmettono continuativamente in broadcasting la loro potenza nominale di segnale, per stimarne la distanza valutando la potenza effettiva del segnale in ricezione - oggi il calcolo della distanza fra due device viene fatto usando le tecniche di Phase-Based Ranging (PBR) e di Round-Trip Timing (RTT).

Negli approcci basati su Phase-Based Ranging, due device Bluetooth si scambiano una serie di segnali a frequenze specifiche e, parallelamente, le informazioni sulle differenza di fase dei segnali stessi man mano che ciascun device li invia e li riceve. In questo modo è possibile arrivare a una stima precisa della distanza fra loro, valutando lo scostamento di fase e l'ampiezza dei segnali scambiati. Questi dati possono essere usati anche per valutare la direzione lungo la quale i due dispositivi si stanno avvicinano oppure allontanando. Round-Trip Timing, come indica la sua denominazione, basa invece la stima della distanza sul tempo che un segnale radio impiega ad arrivare da un device all'altro. La velocità del segnale è nota - è praticamente quella della luce - quindi calcolare la distanza è in teoria molto semplice.

RTT e PBR hanno comunque i loro limiti. L'elaborazione dei segnali radio nei singoli device può non essere sempre ottimale, i device possono non essere ben sincronizzati, e - soprattutto - la propagazione di più segnali radio in un mezzo fisico si discosterà sempre dalla teoria. Con segnali che viaggiano alla velocità della luce, qualsiasi scostamento infinitesimale fa la differenza nella stima precisa delle distanze.

Cosa cambia con Bluetooth Channel Sounding

Combinando le stime di distanza e direzione permesse da Bluetooth, è stato possibile realizzare diverse applicazioni in cui un oggetto agisce come token fisico di prossimità. Il problema è che i metodi usati per le stime di distanza dei device non hanno mai considerato nativamente i rischi di intercettazione. Bluetooth Channel Sounding serve, oggi, a mettere ordine a quanto è stato sviluppato sinora, adattarlo allo stato attuale di sviluppo tecnologico dei device Bluetooth e considerare la cybersecurity come un requisito di base.

Di fatto, e semplificando molto, Channel Sounding "formalizza" il calcolo di direzione e distanza in precisi passi protocollari, standardizzati per tutti, che adottano come base sia PBR sia RTT. Il funzionamento di Channel Sounding è per questo decisamente articolato, ma si può semplificare come segue. Chi cerca una spiegazione dettagliata la trova sul sito ufficiale del Bluetooth SIG.

In Channel Sounding le stime di posizionamento avvengono in una comunicazione one-to-one tra solo due dispositivi, utilizzando comunicazioni cifrate e assegnando un ruolo preciso (Initiator o Reflector) ai device. La nuova funzione "copre" diversi layer dello stack Bluetooth, perché richiede operazioni di elaborazione, sincronizzazione e gestione dei segnali radio che coinvolgono buona parte delle componenti di un modulo Bluetooth e della parte anche applicativa.

Come prima cosa, i due device avviano una comunicazione cifrata - su un canale che non fa parte del broadcasting Bluetooth - e si scambiano alcune informazioni sulle loro caratteristiche hardware (numero di antenne, frequenze trasmissive, sincronizzazione temporale...) - questo serve a definire ed armonizzare tutti i parametri che possono influenzare i calcoli successivi - e su come sarà organizzato e parametrizzato tutto il "dialogo" wireless successivo.

A questo punto iniziano e si susseguono una serie di possibili comunicazioni (tecnicamente "modi") tra device:
Mode 0 - Una calibrazione reciproca dei device per eliminare possibili differenze di clock interno e nella generazione di frequenze.
Mode 1 - Un calcolo della distanza mediante RTT.
Mode 2 - Un calcolo della distanza via PBR.
Mode 3 - Un calcolo della distanza via RTT e PBR insieme (questo modo non deve essere supportato obbligatoriamente da tutti i device).

Un'applicazione o un driver che usano Channel Sounding possono definire in autonomia il numero di sincronizzazioni iniziali Mode 0 tra device e un numero arbitrario di Mode 1/2/3 da eseguire in sequenza per il calcolo preciso e nel tempo della distanza. Questi calcoli possono spostarsi tra frequenze diverse ed usare combinazioni differenti delle varie antenne che i device posseggono.

La sicurezza di Channel Sounding

La robustezza delle comunicazioni Bluetooth è legata al fatto che un attaccante non possa simulare in maniera convincente di essere un dispositivo Bluetooth lecito all'interno di una comunicazione stabilita tra due device. Oggi, per molte applicazioni critiche, la robustezza standard di Bluetooth non è considerata sufficiente.

Channel Sounding non può "blindare" in assoluto la comunicazione tra device Bluetooth nella gestione delle applicazioni di prossimità - sarebbe un approccio troppo pesante per un'operazione così frequente - ma attiva una serie di funzioni complementari che insieme rendono molto complicato, per un attaccante, simulare di essere un token Bluetooth lecito.

Innanzitutto, in Channel Sounding i device Bluetooth che comunicano devono essere accoppiati e usano un canale cifrato per scambiarsi alcuni dati chiave, accessori a quelli propriamente di localizzazione. Senza conoscere questi parametri, che oltretutto vengono cambiati ad ogni sequenza di localizzazione (in maniera deterministica, sì, ma in base a un "seed" iniziale scambiato sul canale cifrato), non si possono simulare comunicazioni "trusted".

Più in generale, la comunicazione tra due device leciti varia in continuazione in diversi suoi aspetti e momenti, presentando un andamento che a un "ascoltatore" appare casuale - in realtà i device leciti sanno bene cosa aspettarsi l'uno dall'altro - e quindi difficile da imitare, a tutela della sicurezza delle comunicazioni.

Un'altra funzione di sicurezza che può essere implementata via software - in pratica a livello di driver Bluetooth - è una vera e propria detection di attacchi wireless. È basata sull'analisi dei segnali che il dispositivo sta ricevendo e sul confronto con segnali leciti di riferimento, alla ricerca di indicatori di attacco. Questo confronto porta al calcolo di un indice di rischio di attacco in corso - la Normalized Attack Detector Metric, NADM - che viene passato al layer applicativo per le opportune contromisure.

Questa componente di Attack Detection and Reporting si basa sull'analisi delle tecniche di attacco rilevate sul campo sinora. La scala di probabilità di un attacco - la NADM - è in via di standardizzazione, mentre viene lasciato agli sviluppatori di driver e applicazioni la creazione delle specifiche contromisure da mettere in atto, in funzione del valore NADM riportato dal controller Bluetooth.

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato con le notizie di SecurityOpenLab.it iscriviti alla nostra Newsletter gratuita.
Rimani sempre aggiornato, seguici su Google News! Seguici

Notizie correlate

Iscriviti alla nostra newsletter

Soluzioni B2B per il Mercato delle Imprese e per la Pubblica Amministrazione

Iscriviti alla newsletter