Hanno rilevato vulnerabilità in Linux che possono essere sfruttate tramite Bluetooth

vulnerabilità

Se sfruttati, questi difetti possono consentire agli aggressori di ottenere l'accesso non autorizzato a informazioni riservate o, in generale, causare problemi

La notizia lo ha recentemente diffusoSono state identificate due vulnerabilità nel kernel Linux (già catalogato sotto CVE-2022-42896), che potenzialmente può essere utilizzato per orchestrare l'esecuzione di codice remoto a livello di kernel inviando un pacchetto L2CAP appositamente predisposto tramite Bluetooth.

Si è detto che la prima vulnerabilità (CVE-2022-42896) si verifica quando si accede ad un'area di memoria già liberata (use-after-free) nell'implementazione delle funzioni l2cap_connect e l2cap_le_connect_req.

Fallimento sfruttato dopo aver creato un canale tramite richiamata chiamata nuova_connessione, che non ne blocca l'impostazione, ma imposta un timer (__set_chan_timer), dopo un timeout, chiamando la funzione l2cap_chan_timeout e pulire il canale senza controllare il completamento del lavoro con il canale nelle funzioni l2cap_le_connect*.

Il timeout predefinito è di 40 secondi e si presumeva che una race condition non potesse verificarsi con così tanto ritardo, ma si è scoperto che a causa di un altro bug nel driver SMP, era possibile chiamare istantaneamente il timer e raggiungere la race condition.

Un problema in l2cap_le_connect_req può causare una perdita di memoria del kernel e in l2cap_connect è possibile sovrascrivere il contenuto della memoria ed eseguire il codice. La prima variante dell'attacco può essere effettuata utilizzando Bluetooth LE 4.0 (dal 2009), la seconda utilizzando Bluetooth BR/EDR 5.2 (dal 2020).

Esistono vulnerabilità post-rilascio nelle funzioni del kernel Linux l2cap_connect e l2cap_le_connect_req net/bluetooth/l2cap_core.c che possono consentire l'esecuzione di codice e la perdita di memoria del kernel (rispettivamente) in remoto tramite Bluetooth. Un utente malintenzionato remoto potrebbe eseguire codice che perde la memoria del kernel tramite Bluetooth se si trova in prossimità della vittima. Ti consigliamo di aggiornare il commit passato https://www.google.com/url https://github.com/torvalds/linux/commit/711f8c3fb3db61897080468586b970c87c61d9e4

La seconda vulnerabilità che è stato rilevato (già catalogato sotto CVE-2022-42895) è causato da una perdita di memoria residua nella funzione l2cap_parse_conf_req, che può essere utilizzato per ottenere in remoto informazioni sui puntatori alle strutture del kernel inviando richieste di configurazione appositamente predisposte.

A proposito di questa vulnerabilità si dice che nella funzione l2cap_parse_conf_req è stata utilizzata la struttura l2cap_conf_efs, per i quali la memoria allocata non è stata precedentemente inizializzata, e attraverso manipolazioni con il flag FLAG_EFS_ENABLE, è stato possibile ottenere l'inclusione di vecchi dati della batteria nella confezione.

il flag di canale FLAG_EFS_ENABLE invece della variabile remote_efs a decidere se utilizzare o meno la struttura efs l2cap_conf_efs e è possibile impostare il flag FLAG_EFS_ENABLE senza inviare effettivamente i dati di configurazione EFS e, in questo caso, la struttura efs l2cap_conf_efs non inizializzata verrà rispedito al client remoto, perdendo così informazioni sul file contenuto della memoria del kernel, inclusi i puntatori del kernel.

Il problema si verifica solo su sistemi in cui il file kernel è compilato con l'opzione CONFIG_BT_HS (disabilitata per impostazione predefinita, ma abilitata su alcune distribuzioni, come Ubuntu). Un attacco riuscito richiede anche l'impostazione del parametro HCI_HS_ENABLED tramite l'interfaccia di gestione su true (non è utilizzato per impostazione predefinita).

Su questi due bug scoperti sono già stati rilasciati i prototipi di sfruttamento che girano su Ubuntu 22.04 per dimostrare la possibilità di un attacco remoto.

Per eseguire l'attacco, l'aggressore deve trovarsi nel raggio del Bluetooth; non è richiesta alcuna associazione preventiva, ma il Bluetooth deve essere attivo sul computer. Per un attacco è sufficiente conoscere l'indirizzo MAC del dispositivo della vittima, che può essere determinato mediante sniffing o, su alcuni dispositivi, calcolato in base all'indirizzo MAC Wi-Fi.

Infine vale la pena ricordare che è stato identificato un altro problema simile (CVE-2022-42895) nel controller L2CAP che può far trapelare il contenuto della memoria del kernel nei pacchetti di informazioni di configurazione. La prima vulnerabilità si è manifestata da agosto 2014 (kernel 3.16) e la seconda da ottobre 2011 (kernel 3.0).

Per coloro che sono interessati a tracciare la correzione nelle distribuzioni, possono farlo nelle seguenti pagine: DebianUbuntuGentooRHELSUSEFedoraArco .


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.