Vulnerabilità nei driver per i chip WiFi Broadcom, che consentono di attaccare il sistema da remoto

Nei driver per i chip wireless Broadcom rivelato четыре vulnerabilità. Nel caso più semplice, le vulnerabilità possono essere sfruttate per provocare un Denial of Service da remoto, ma non si possono escludere scenari in cui si possano sviluppare exploit che consentano a un aggressore non autenticato di eseguire il proprio codice con i privilegi del kernel Linux inviando pacchetti appositamente progettati.

I problemi sono stati identificati eseguendo il reverse engineering del firmware Broadcom. I chip interessati sono ampiamente utilizzati nei laptop, negli smartphone e in una varietà di dispositivi consumer, dalle SmartTV ai dispositivi Internet of Things. In particolare i chip Broadcom vengono utilizzati negli smartphone di produttori come Apple, Samsumg e Huawei. È interessante notare che Broadcom è stata informata delle vulnerabilità nel settembre 2018, ma ci sono voluti circa 7 mesi per rilasciare le correzioni in coordinamento con i produttori di apparecchiature.

Due vulnerabilità colpiscono il firmware interno e potenzialmente consentono l'esecuzione di codice nell'ambiente del sistema operativo utilizzato nei chip Broadcom, il che rende possibile attaccare ambienti che non utilizzano Linux (è stata confermata, ad esempio, la possibilità di attaccare dispositivi Apple CVE-2019-8564). Ricordiamo che alcuni chip Wi-Fi Broadcom sono un processore specializzato (ARM Cortex R4 o M3), che esegue un sistema operativo simile con implementazioni del suo stack wireless 802.11 (FullMAC). In tali chip, il driver garantisce l'interazione del sistema principale con il firmware del chip Wi-Fi. Per ottenere il pieno controllo sul sistema principale dopo che FullMAC è stato compromesso, si propone di sfruttare ulteriori vulnerabilità o, su alcuni chip, sfruttare il pieno accesso alla memoria di sistema. Nei chip con SoftMAC lo stack wireless 802.11 è implementato dal lato driver ed eseguito utilizzando la CPU del sistema.

Vulnerabilità nei driver per i chip WiFi Broadcom, che consentono di attaccare il sistema da remoto

Le vulnerabilità del driver si verificano sia nel driver proprietario wl (SoftMAC e FullMAC) che nel driver open source brcmfmac (FullMAC). Nel driver wl sono stati rilevati due buffer overflow, sfruttati quando il punto di accesso trasmette messaggi EAPOL appositamente formattati durante il processo di negoziazione della connessione (l'attacco può essere effettuato quando ci si connette a un punto di accesso dannoso). Nel caso di un chip con SoftMAC le vulnerabilità portano alla compromissione del kernel del sistema, mentre nel caso di FullMAC il codice può essere eseguito sul lato firmware. brcmfmac contiene un buffer overflow e un errore di controllo dei frame sfruttato inviando frame di controllo. Problemi con il driver brcmfmac nel kernel Linux erano eliminato a febbraio.

Vulnerabilità identificate:

  • CVE-2019-9503 - comportamento errato del driver brcmfmac durante l'elaborazione dei frame di controllo utilizzati per interagire con il firmware. Se un frame con un evento firmware proviene da una fonte esterna, il driver lo scarta, ma se l'evento viene ricevuto tramite il bus interno, il frame viene saltato. Il problema è che gli eventi provenienti dai dispositivi che utilizzano USB vengono trasmessi attraverso il bus interno, che consente agli aggressori di trasmettere con successo frame di controllo del firmware quando utilizzano adattatori wireless con interfaccia USB;
  • CVE-2019-9500 – Quando la funzione "Riattivazione su LAN wireless" è abilitata, è possibile causare un overflow dell'heap nel driver brcmfmac (funzione brcmf_wowl_nd_results) inviando un frame di controllo appositamente modificato. Questa vulnerabilità può essere utilizzata per organizzare l'esecuzione del codice nel sistema principale dopo che il chip è stato compromesso o in combinazione con la vulnerabilità CVE-2019-9503 per aggirare i controlli in caso di invio remoto di un frame di controllo;
  • CVE-2019-9501 - un overflow del buffer nel driver wl (la funzione wlc_wpa_sup_eapol) che si verifica durante l'elaborazione di messaggi il cui contenuto del campo delle informazioni del produttore supera i 32 byte;
  • CVE-2019-9502 - Si verifica un overflow del buffer nel driver wl (funzione wlc_wpa_plumb_gtk) durante l'elaborazione di messaggi il cui contenuto del campo delle informazioni sul produttore supera i 164 byte.

Fonte: opennet.ru

Aggiungi un commento