CVE-2026-13214
CriticalCVSS 9.8Exploitation Probability (EPSS)
Low risk41th percentile - higher than 41% of all known CVEs
Summary
The OCPP 1.6 client contains a stack buffer overflow in parse_getconfig_msg(). An attacker controlling the central system or performing a man-in-the-middle attack can send a GetConfiguration request with a key longer than 50 bytes, causing a stack overflow in the reader thread.
Risk Assessment
This can lead to remote code execution or denial of service in the EV charging system, potentially disrupting charging infrastructure.
Recommendation
Apply the patch that replaces the unsafe strcpy() with strncpy() and explicit NUL termination. Update the software to a patched version.
Related vulnerabilities
- CVE-2026-7826Critical
A vulnerability in FalkorDB before 4.18.4 causes a heap-based out-of-bounds read in the BufferSerializerIOv2_ReadBuffer function. A remote attacker who can issue Redis replication commands (e.g., against an instance with no password) can send a crafted RDB stream with a sub-buffer length field exceeding the remaining buffer size. The only bounds check is an ASSERT(), which is compiled out in release builds, so memcpy() reads past the end of the heap allocation.
- CVE-2026-5759Critical
A double free and use-after-free vulnerability in the RdbLoadDeletedNodes function of the RDB graph decoders in FalkorDB before 4.18.1. A remote attacker who can issue Redis replication commands can send a crafted RDB stream where the deleted-nodes buffer length is not a multiple of sizeof(NodeID). The length check relies on ASSERT(), which is compiled out in release builds, so the function continues after freeing the buffer, reading it and freeing it a second time.
- CVE-2026-96207Critical
Improper certificate validation in Microsoft Partner Center allows an unauthorized attacker to elevate privileges over a network.
- CVE-2026-94510Critical
Authorization bypass through user-controlled key in Microsoft Bookings allows an unauthorized attacker to elevate privileges over a network.
- CVE-2026-88131Critical
Deserialization of untrusted data in Microsoft Dataverse allows an unauthorized attacker to execute code over a network.
- CVE-2026-77900Critical
Missing authentication for a critical function in Azure App Service allows an unauthorized attacker to execute code over a network.
- CVE-2026-69435Critical
Missing authorization in Azure SRE Agent allows an authorized attacker to elevate privileges over a network.
- CVE-2026-84249Critical
IBM Guardium Data Protection 12.2 and 12.2.2 could allow a remote attacker to execute arbitrary management operations due to missing authentication for a critical function.
- CVE-2026-80381Critical
IBM Guardium Data Protection 12.0, 12.1, and 12.2 could allow a remote attacker to execute unauthorized SQL statements due to SQL injection.
- CVE-2026-75875Critical
IBM Guardium Data Protection 12.0, 12.1, and 12.2 could allow a remote attacker to execute arbitrary code due to path traversal.
Original NVD description (English source)
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.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

