PT-2026-68125 · Unknown · Nanomodbus
CVSS v3.1
9.8
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
nanoMODBUS versões anteriores a 1.23.1
Description
Uma leitura fora dos limites da pilha (out-of-bounds stack read) existe nas funções
nmbs read device identification basic() e recv read device identification res() dentro de nanomodbus.c. O problema ocorre porque a variável object id, que é lida diretamente de um servidor Modbus, é usada como um índice para a array de pilha order[3] sem a devida verificação de limites. Se um servidor malicioso fornecer um valor de object id igual ou superior a 3, o sistema lê dados residuais da pilha. Este valor é subsequentemente usado como um índice para a array buffers[], resultando em um ponteiro curinga (wild pointer) sendo passado para a função strncpy(). Isso permite que um invasor realize uma gravação em endereço arbitrário utilizando dados controlados pelo servidor.Recommendations
Atualize para uma versão posterior à 1.23.0.
Como medida de mitigação temporária, restrinja a comunicação a servidores Modbus confiáveis para evitar o processamento de respostas de Identificação de Dispositivo maliciosas.
Exploit
Correção
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
Produtos afetados
Nanomodbus