CVE-2026-98738 in Linux
Sumário
de VulDB • 18/10/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
Bluetooth: Serializar o acesso aos dados OOB remotos da SMP (Security Manager Protocol)
A função `build_pairing_cmd()` procura os dados OOB remotos e copia seu conteúdo sem manter travado (`hdev->lock`), que é responsável por serializar os escritores da lista. Após a SMP encontrar uma entrada, um comando de gerenciamento concorrente "Remove Remote OOB Data" (Remover Dados OOB Remotos) pode desvincular e liberar essa entrada antes que a SMP leia sua flag presente ou copie seus valores aleatórios (`random`) e de confirmação (`confirmation`). A remoção também pode invalidar uma entrada enquanto a busca ainda está percorrendo a lista.
O KASAN relatou:
BUG: KASAN: slab-use-after-free em build_pairing_cmd+0x948/0x9b0 Call Trace (Rastreamento de Chamada): build_pairing_cmd+0x948/0x9b0 smp_recv_cb+0x459f/0x8110 l2cap_recv_frame+0xf14/0x9190 l2cap_recv_acldata+0xa64/0xd40 hci_rx_work+0x4ca/0x730
Alocado pela tarefa 87: hci_add_remote_oob_data+0x11d/0x530 add_remote_oob_data+0x282/0x400 hci_sock_sendmsg+0x1033/0x1ea0
Liberado pela tarefa 93: hci_remote_oob_data_clear+0x108/0x1c0 remove_remote_oob_data+0x198/0x220 hci_sock_sendmsg+0x1033/0x1ea0
Manter `hdev->lock` travado em `build_pairing_cmd()` causaria recursão para chamadores que já o possuem e inverteria a ordem de bloqueio do dispositivo para L2CAP no caminho de recebimento. Adiciona-se, portanto, um `remote_oob_lock` por dispositivo, mantido durante a busca da SMP e as cópias, bem como pelos auxiliares de adição, remoção e limpeza. Cobre também a inicialização e atualizações in-place (no local), para que a SMP não possa ler valores OOB parcialmente inicializados ou atualizados. Libera-se o mutex em caso de falha na alocação, preservando o retorno de erro existente.
As novas seções críticas não adquirem bloqueios de dispositivo, conexão ou canal. Os escritores mantêm sua proteção `hdev->lock` existente, que continua a serializar os outros leitores sem alterar seus bloqueios ou comportamento.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.