PT-2026-53936 · Zephyr · Zephyr
CVSS v3.1
8.1
Alta
| Vetor | AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H |
Nome do Software Vulnerável e Versões Afetadas
Zephyr versões 3.0.0 through 3.x
Description
Uma leitura fora dos limites ocorre na Camada de Adaptação ISO do controlador Bluetooth no arquivo
subsys/bluetooth/controller/ll sw/isoal.c. O problema acontece porque a função isoal check seg header() não valida adequadamente o campo de comprimento de um segmento inicial de PDU ISO estruturado. De acordo com a especificação Bluetooth, um segmento inicial deve ter um comprimento de cabeçalho de segmento de pelo menos 3 bytes para acomodar o time offset. Quando um comprimento entre 0 e 2 é fornecido, a função isoal rx framed consume() realiza uma subtração que resulta em um underflow de inteiro, criando um valor de comprimento excessivo. Esse valor é então passado para isoal rx append to sdu(), que copia até 255 bytes da memória do controlador além da PDU recebida para um pacote de dados HCI ISO. Um invasor remoto pode disparar isso via caminhos de dados HCI CIS ou BIS-sync ou pelo caminho de dados do fornecedor, levando à divulgação de informações para o host ou a uma negação de serviço.Recommendations
Atualize o Zephyr para uma versão onde a função
isoal check seg header() rejeite segmentos iniciais com comprimento inferior a 3 e uma proteção seja implementada antes da subtração em isoal rx framed consume().Exploit
Correção
DoS
Out of bounds Read
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Zephyr