Unknown · Nanomodbus · CVE-2026-71254
**Nome do Software Vulnerável e Versões Afetadas**
nanoMODBUS versões anteriores a 1.23.1
**Descrição**
Uma gravação fora dos limites (out-of-bounds write) existe na função `handle read file record()` (FC 0x14, Read File Record) do lado do servidor em nanomodbus.c. Embora a função valide o tamanho total da requisição e o `record length` de cada sub-requisição, ela não valida o tamanho cumulativo da resposta entre todas as sub-requisições. O acumulador `response data size`, declarado como `uint8 t`, pode sofrer overflow ao processar até 35 sub-requisições. Isso permite que um loop subsequente chame `get n()` e `swap regs()`, que gravam dados incondicionalmente em um ponteiro derivado do buffer de recebimento `msg.buf` de 260 bytes. Um cliente de rede não autenticado pode enviar uma requisição FC 0x14 manipulada para gravar aproximadamente 8490 bytes além do buffer, podendo levar à corrupção de memória, negação de serviço ou execução remota de código, especialmente em sistemas embarcados ou bare-metal sem proteção de memória.
**Recomendações**
Atualize o nanoMODBUS para uma versão posterior a 1.23.0.
Como medida paliativa temporária, restrinja o acesso de rede ao servidor Modbus apenas a clientes confiáveis para evitar requisições não autenticadas.