CVE-2026-13214 Stack buffer overflow in OCPP GetConfiguration key parsing

Critical 9.8 Published Updated

A stack buffer overflow in the Zephyr RTOS OCPP client allows remote attackers to cause denial of service or potentially execute code via a malicious GetConfiguration request.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2026-13214?

CVE-2026-13214 is a critical memory corruption vulnerability in zephyrproject zephyr, published on 25 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The OCPP 1.6 client in subsys/net/lib/ocpp/ocpp_j.c contains a stack buffer overflow in parse_getconfig_msg(). When handling a GetConfiguration request from the central system, the handler copied the attacker-controlled JSON "key" string into the caller's fixed 50-byte stack buffer (skey[CISTR50], declared in subsys/net/lib/ocpp/ocpp.c) using an unbounded strcpy(). The parsed key value points directly into the receive buffer, so its length is bounded only by the message size (CONFIG_OCPP_RECV_BUFFER_SIZE, default 2048).

The GetConfiguration message is delivered over the WebSocket connection that the charge point opens to its configured central system. The reader thread ocpp_wsreader() reads the message into ui->recv_buf and dispatches it to parse_getconfig_msg() via the PDU function table. An attacker who controls the central system endpoint, or a man-in-the-middle on an unencrypted connection, can send a GetConfiguration request whose "key" field exceeds 50 bytes and overflow the reader thread's stack with attacker-chosen bytes.

The consequence is a remotely triggerable stack smash on the OCPP reader thread: at minimum a denial of service, and plausibly remote code execution depending on build-time hardening such as stack canaries and MPU configuration. The fix replaces the strcpy() with a bounded strncpy(key, payload.key[0], CISTR50 - 1) followed by explicit NUL termination, matching the bounded copies already used by the sibling handlers.

Weakness: CWE-787

Which versions are affected by CVE-2026-13214?

How do I fix CVE-2026-13214?

No fix has been published for CVE-2026-13214 yet. Limit exposure of the affected software until one is available.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-13214 being exploited?

There is no known exploitation of CVE-2026-13214 in the wild and no public exploit code.

Sources

Also known as GHSA-fqhf-6v24-4px2.

Is CVE-2026-13214 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free