CVE-2026-80760 in Linux
Sumário
de VulDB • 04/09/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
Bluetooth: MGMT: rejeitar parâmetros HCI_CMD_SYNC com params_len superior a 255
A função mgmt_hci_cmd_sync() verifica se o comprimento da mensagem está de acordo com params_len, mas não impõe um limite superior. params_len é do tipo __le16, enquanto o comprimento dos parâmetros no cabeçalho do comando HCI é u8:
struct hci_command_hdr {
__le16 opcode; __u8 plen; } __packed;
hci_cmd_sync_alloc() atribui um ao outro:
hdr->plen = plen;
if (plen) skb_put_data(skb, param, plen);
Portanto, um params_len de 256 deixa plen em 0, enquanto todos os 256 bytes ainda são anexados. O quadro enviado para o controlador declara então que não há parâmetros e carrega 256 deles. Em um transporte com delimitação por comprimento, como H:4, o controlador interpreta os bytes finais como o início do próximo pacote.
O MTU do socket mgmt é HCI_MAX_FRAME_SIZE; portanto, params_len pode atingir cerca de 1 KB dessa forma. O commit 03f1700b9b4d ("Bluetooth: MGMT: rejeitar comandos HCI_CMD_SYNC malformados") apenas fez com que params_len concordasse com o comprimento da mensagem, mas um valor que se ajusta à mensagem, porém não ao campo do cabeçalho, ainda é aceito.
Rejeite params_len que não caiba no campo do cabeçalho.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.