PT-2026-49136 · Driftregion · Iso14229

Burxonov Muslimbek

·

Publicado

2026-06-14

·

Atualizado

2026-06-14

·

CVE-2026-54413

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 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 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-54413

Produtos afetados

Iso14229