PT-2026-49136 · Driftregion · Iso14229
Burxonov Muslimbek
·
Publicado
2026-06-14
·
Atualizado
2026-06-14
·
CVE-2026-54413
CVSS v3.1
8.2
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H |
Nome do Software Vulnerável e Versões Afetadas
driftregion iso14229 versões 14229 até 0.9.0
Descrição
Um underflow de número inteiro e uma leitura subsequente fora dos limites (out-of-bounds read) existem na função
Handle 0x27 SecurityAccess() dentro do arquivo iso14229.c. Um invasor remoto não autenticado pode travar um servidor UDS e potencialmente ler a memória além do buffer de recebimento ao enviar uma solicitação SecurityAccess 0x27 de um único byte após uma mensagem 0x27 bem formada. O problema ocorre porque o manipulador lê a subFunção SecurityAccess de recv buf[1] sem verificar se recv len é pelo menos 2. Consequentemente, quando recv len é 1, o cálculo do comprimento dos dados da chave via subtração não sinalizada (uint16 t)(recv len - UDS 0X27 REQ BASE LEN) sofre underflow para 65535. Este valor é então passado como args.len para as callbacks SecAccessValidateKey ou SecAccessRequestSeed, que podem iterar ou copiar essa quantidade de dados do buffer de recebimento de 4 KB. Esta falha afeta implementações em ECUs automotivas, controladores industriais e dispositivos IoT que utilizam a biblioteca como servidor UDS através de transportes CAN bus, OBD-II, ISO-TP e DoIP na sessão de diagnóstico padrão.Recomendações
Atualizar o driftregion iso14229 versões 14229 até 0.9.0 para uma versão que implemente uma verificação de limite inferior de
recv len na função Handle 0x27 SecurityAccess().
Como medida paliativa temporária, restrinja o acesso à função Handle 0x27 SecurityAccess() para minimizar o risco de exploração.Correção
Integer Underflow
Out of bounds Read
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Iso14229