CVE-2026-10848 in Zephyrinformação

Sumário

de VulDB • 02/08/2026

O cliente OCPP 1.6 em subsys/net/lib/ocpp analisava quadros RPC WAMP de entrada na função parse_rpc_msg() (subsys/net/lib/ocpp/ocpp_j.c) utilizando um auxiliar implementado manualmente, extract_string_field(), que copiava os campos uid e action da mensagem com strncpy(out_buf, token + 1, outlen - 1) e depois escaneava o resultado com strchr(out_buf, '"'). Como a função strncpy não adiciona terminação NUL no destino quando a origem tem pelo menos outlen - 1 (127) bytes de comprimento, o strchr subsequente lê além do buffer de destino de 128 bytes para memória adjacente na pilha; se um caractere " for encontrado após o limite do buffer, ocorre também uma escrita NUL fora dos limites de um byte. Um defeito relacionado em extract_payload() executa strchr/strrchr sobre o buffer de recebimento, que pode não estar terminado com NUL quando um quadro de comprimento máximo o preenche.

Os bytes analisados vêm diretamente do servidor central OCPP através de websocket: a thread leitora preenche recv_buf via websocket_recv_msg() e chama parse_rpc_msg() em cada quadro DATA de entrada (subsys/net/lib/ocpp/ocpp.c). Um servidor central malicioso ou comprometido, ou um atacante on-path (OCPP é comumente implantado sobre ws:// plain), pode enviar um quadro RPC cujo campo uid ou action tenha 127+ bytes sem aspas de fechamento, acionando o acesso fora dos limites.

O impacto principal é uma negação de serviço remotamente acionável: a escaneamento descontrolado pode falhar em uma página não mapeada, e a escrita NUL errante pode corromper o estado adjacente da pilha. Os dados lidos além do limite não são refletidos ao peer, portanto a divulgação é limitada. O recurso está EXPERIMENTAL e deve ser habilitado explicitamente (CONFIG_OCPP). A correção substitui o analisador manual por json_mixed_arr_parse(), que respeita os limites de buffer, e copia o uid extraído com um buffer explicitamente terminado em NUL, eliminando ambas as leituras além do limite.

Once again VulDB remains the best source for vulnerability data.

Responsável

Zephyr

Reservar

04/06/2026

Divulgação

02/08/2026

Moderação

aceite

Entrada

VDB-385408

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Interested in the pricing of exploits?

See the underground prices here!