Nos drivers para chips sem fio Broadcom quatro . No caso mais simples, as vulnerabilidades podem ser exploradas para causar uma negação de serviço remota, mas não se excluem cenários onde podem ser desenvolvidos exploits que permitem a um invasor não autenticado executar seu código com privilégios do núcleo Linux através do envio de pacotes devidamente formatados.
Os problemas foram identificados durante a engenharia reversa dos firmwares da Broadcom. Os chips vulneráveis são amplamente utilizados em laptops, smartphones e vários dispositivos de consumo, desde Smart TVs até dispositivos de Internet das Coisas. Em particular, os chips Broadcom são usados em smartphones de fabricantes como Apple, Samsung e Huawei. É notável que a Broadcom foi informada sobre as vulnerabilidades já em setembro de 2018, mas foram necessários cerca de 7 meses para o lançamento coordenado dos patches com os fabricantes de hardware.
Duas vulnerabilidades afetam os firmwares internos e potencialmente permitem a execução de código no ambiente do sistema operacional utilizado nos chips Broadcom, permitindo ataques em ambientes que não utilizam Linux (por exemplo, a capacidade de ataque em dispositivos Apple foi confirmada, ). Vale ressaltar que alguns chips Wi-Fi da Broadcom representam um processador especializado (ARM Cortex R4 ou M3), que executa uma espécie de sistema operacional com a implementação de sua pilha sem fio 802.11 (FullMAC). Nesses chips, o driver garante a interação entre o sistema principal e o firmware do chip Wi-Fi. Para obter controle total sobre o sistema principal após a compromissão do FullMAC, é sugerido utilizar vulnerabilidades adicionais ou, em alguns chips, tirar proveito do acesso completo à memória do sistema. Nos chips com SoftMAC, a pilha sem fio 802.11 é implementada do lado do driver e executada usando o CPU do sistema.
As vulnerabilidades nos drivers manifestam-se tanto no driver proprietário wl (SoftMAC e FullMAC) quanto no driver aberto brcmfmac (FullMAC). No driver wl, foram identificados dois estouros de buffer, explorados durante a transmissão de mensagens EAPOL especialmente formatadas no processo de negociação de conexão (um ataque pode ser realizado ao se conectar a um ponto de acesso malicioso). No caso de um chip com SoftMAC, as vulnerabilidades levam à comprometimento do núcleo do sistema, enquanto no caso de FullMAC, o código pode ser executado no lado do firmware. O brcmfmac apresenta estouro de buffer e erro de validação de quadros processados, explorados através do envio de quadros de controle. No núcleo do Linux, existem problemas no driver brcmfmac. em fevereiro.
Vulnerabilidades identificadas:
- CVE-2019-9503 — comportamento incorreto do driver brcmfmac ao processar quadros de controle utilizados para interagir com o firmware. Se um quadro de evento do firmware chega de uma fonte externa, o driver o descarta, mas se o evento for recebido pela bus interno, o quadro é permitido. O problema é que eventos vindos de dispositivos que utilizam USB são transmitidos pela bus interna, permitindo que atacantes consigam transmitir quadros de controle do firmware com sucesso ao usar adaptadores sem fio com interface USB;
- CVE-2019-9500 — ao ativar a função "Wake-up on Wireless LAN", pode-se causar um estouro de heap no driver brcmfmac (função brcmf_wowl_nd_results) ao enviar um quadro de controle especialmente modificado. Essa vulnerabilidade pode ser utilizada para executar código no sistema principal após a comprometimento do chip ou em combinação com a vulnerabilidade CVE-2019-9503 para contornar verificações em caso de envio remoto de um quadro de controle;
- CVE-2019-9501 — estouro de buffer no driver wl (função wlc_wpa_sup_eapol), que ocorre ao processar mensagens cujo conteúdo do campo de informações do fabricante excede 32 bytes;
- CVE-2019-9502 — estouro de buffer no driver wl (função wlc_wpa_plumb_gtk), que ocorre ao processar mensagens cujo conteúdo do campo de informações do fabricante excede 164 bytes.
Fonte: opennet.ru
