PT-2026-49135 · Liambindle · Mqtt-C

Saidakbarxon Maxsudxonov

·

Publicado

2026-06-14

·

Atualizado

2026-06-15

·

CVE-2026-54412

CVSS v3.1

8.2

Alta

VetorAV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
Nome do Software Vulnerável e Versões Afetadas LiamBindle MQTT-C versões anteriores a 1.1.7
Descrição Uma leitura fora dos limites do heap (out-of-bounds read) e um subfluxo de inteiro (integer underflow) existem na função mqtt unpack publish response() em src/mqtt.c. Um invasor remoto não autenticado que controle um broker MQTT ou consiga injetar tráfego em uma sessão não criptografada pode causar a falha (crash) de um cliente inscrito e potencialmente expor a memória adjacente do heap ao enviar um pacote PUBLISH manipulado. O problema ocorre porque a função não verifica se o campo topic name size, lido do pacote, somado ao overhead, cabe dentro do remaining length do cabeçalho fixo. Isso leva a um subfluxo de inteiro ao calcular o application message size usando aritmética sem sinal, que é então passado para a função memmove(). Por exemplo, um pacote com topic name size definido como 0xFFFF e remaining length definido como 7 faz com que o ponteiro de análise avance 65535 bytes além do buffer de recebimento e resulte em um application message size próximo a 2^32, derrubando o processo.
Recomendações Atualize para uma versão posterior a 1.1.6. Como medida paliativa temporária, restrinja o acesso à função mqtt unpack publish response() ou evite a conexão com brokers MQTT não confiáveis até que uma correção seja aplicada.

Correção

Integer Underflow

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

CVE-2026-54412

Produtos afetados

Mqtt-C