PT-2026-136127

CVE-2026-85032

·

Publicado

2026-11-03

·

Atualizado

2026-11-03

Descrição por

CVSS 3.1
4.8
Média
MétricasAV:P/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
Nome do Software Vulnerável e Versões Afetadas MCTP subsystem (versões afetadas não especificadas)
Descrição Existe uma condição de corrida na classe de dispositivo MCTP sobre USB em subsys/pmci/mctp/mctp usb.c. O sistema divide o processamento de RX entre uma fila de trabalho do sistema que executa mctp usb class out work() e uma thread de pilha de dispositivo USB que executa mctp usb class disable(). O manipulador de desativação utiliza k work cancel(), que remove um item de trabalho enfileirado, mas não aguarda a conclusão de um manipulador que já esteja em execução. Subsequentemente, mctp usb reset rx state() chama mctp pktbuf free() no buffer de pacotes que a thread de trabalho ainda pode estar utilizando.
Um host USB conectado pode desencadear isso transmitindo frames MCTP parciais no endpoint bulk OUT e forçando repetidamente um reset de barramento ou uma requisição SET CONFIGURATION via usbd config reset() em subsys/usb/device next/usbd config.c. Isso permite que um invasor controle os dados analisados e o momento do encerramento sem a necessidade de credenciais.
Dependendo da configuração do sistema, isso pode levar a dois resultados:
  1. Em sistemas com CONFIG SMP ou CONFIG SYSTEM WORKQUEUE PRIORITY preemptivo, o worker pode escrever bytes fornecidos pelo host em memória liberada do heap MCTP (CONFIG MCTP HEAP SIZE), corrompendo buffers reciclados ou metadados de blocos livres do sys heap.
  2. Em sistemas com fila de trabalho cooperativa, o worker pode ceder a execução dentro de mctp bus rx() e posteriormente chamar mctp pktbuf free() em um ponteiro NULL, causando uma falha no sistema.
Recomendações Substitua a chamada k work cancel() por k work cancel sync() e implemente um novo struct k work sync out work sync para garantir que o worker de RX termine antes que o FIFO seja esvaziado e o buffer de pacotes seja liberado. Como mitigação temporária, restrinja o uso da classe de dispositivo MCTP sobre USB desativando CONFIG MCTP USB caso o subsistema MCTP experimental não seja necessário.
Explorabilidade
Exploit
Correção
Impactos
Pesquisadores
Fornecedores
Produtos afetados
Enumeração de fraquezas
Identificadores relacionados
GHSA-PP5M-JR2H-QP3F
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾