CVE-2026-13217

MEDIUMPre-NVD 5.95.9
EchelonGraph scoreMEDIUM confidence

This medium-severity CVE scores 5.9 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.5%, top 59% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).

Triggered by: NVD CVSS baseline
Sources: epss, secondary
Trending — 3 sources updated this week
5.9EG
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • Lower severity and no public exploit yet
CISA-KEV: Not listedEPSS PROB: 1%CVSS: 5.9Exploit: None knownExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

The OCPP 1.6 client in subsys/net/lib/ocpp/ocpp.c reconstructs a session handle and PDU id from the uid field of a CALLRESULT message. In ocpp_process_server_msg() the code calls atoi(strtok_r(uid, "-", &tmp)) without checking the strtok_r return value. When the server-supplied uid is empty or contains no - delimiter, strtok_r() returns NULL and atoi(NULL) dereferences a NULL pointer, which is undefined behaviour.

The uid originates from network data: parse_rpc_msg() in subsys/net/lib/ocpp/ocpp_j.c JSON-parses a frame received from the OCPP central system over TCP/WebSocket and copies the server-controlled string into the local buffer. A malicious or compromised central system, or a man-in-the-middle on a non-TLS ws:// connection, can return a malformed uid to reach the defect. No authentication beyond the existing server connection (or MITM position) is required, and the reconstructed pointer is membership-validated by ocpp_session_is_valid(), so the impact is limited to the NULL dereference rather than arbitrary pointer use.

On Zephyr targets that trap access to address 0 (MMU/MPU platforms or CONFIG_NULL_POINTER_EXCEPTION_DETECTION), the dereference faults inside the OCPP reader thread and invokes the fatal handler, producing a remote denial of service of the charge point; on bare targets where address 0 is readable the call returns 0 and is benign, so the impact is availability-only and platform-conditional.

The applied fix guards only the first atoi(); the second strtok_r(NULL, "-", &tmp) followed by pdu = atoi(buf) in the same function remains unguarded and the identical NULL dereference is still reachable from the same network input when the uid has a first token but no second --delimited token. A complete fix should validate the second token as well.

CVSS v3
5.9
EG Score
5.9(medium)
EG Risk
27(Track)
EG Risk 27/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity59% × 45%
Exploitation1% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
1%
EPSS %ILE
41%
KEV
Not listed

Published

August 25, 2026

Last Modified

August 26, 2026

Advisory Details (3)

Auto-updated Aug 25, 2026
Patch available. Sources: github_commit, github.
github Patch Available

NULL-pointer dereference in Zephyr OCPP CALLRESULT parsing via unchecked strtok_r/atoi · Advisory · zephyrproject-rtos/zephyr · GitHub

https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-w234-pcxp-4q8r
github_commit

commit 3a55507dd801 (zephyrproject-rtos/zephyr)

Fix landed in zephyrproject-rtos/zephyr commit 3a55507dd801 — awaiting tagged release

https://github.com/zephyrproject-rtos/zephyr/commit/3a55507dd8011d877dc89eff949e70b42d45bacf
github_commit

commit 4d8a9eb14480 (zephyrproject-rtos/zephyr)

Fix landed in zephyrproject-rtos/zephyr commit 4d8a9eb14480 — awaiting tagged release

https://github.com/zephyrproject-rtos/zephyr/commit/4d8a9eb1448061ccee557ef20a2a58aec91d9cad

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 12× in last 7d / 12× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-08-30 01:30 UTCEG score recompute
  2. 2026-08-30 01:21 UTCEPSS rescore
  3. 2026-08-29 00:16 UTCEG score recompute
  4. 2026-08-28 21:40 UTCEPSS rescore
  5. 2026-08-27 18:24 UTCEG score recompute
  6. 2026-08-27 14:24 UTCEPSS rescore
  7. 2026-08-26 17:04 UTCEG score recompute
  8. 2026-08-25 20:23 UTCEG score recompute
  9. 2026-08-25 19:51 UTCEG score recompute
  10. 2026-08-25 17:25 UTCEG score recompute
  11. 2026-08-25 16:25 UTCEG score recompute
  12. 2026-08-25 16:24 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-13217?
CVE-2026-13217 is a medium vulnerability published on August 25, 2026. The OCPP 1.6 client in subsys/net/lib/ocpp/ocpp.c reconstructs a session handle and PDU id from the uid field of a CALLRESULT message. In ocppprocessservermsg() the code calls atoi(strtokr(uid, "-", &tmp)) without checking the strtokr return value. When the server-supplied uid is empty or contains…
When was CVE-2026-13217 disclosed?
CVE-2026-13217 was first published in the National Vulnerability Database on August 25, 2026, with the most recent update on August 26, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-13217 actively exploited?
CVE-2026-13217 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 1% probability of exploitation in the next 30 days, which ranks it in the top 58.7% of all scored CVEs.
What is the CVSS score of CVE-2026-13217?
CVE-2026-13217 has a CVSS v3 base score of 5.9 (NVD).
How do I remediate CVE-2026-13217?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-13217, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-13217

Explore →

Is Your Infrastructure Affected by CVE-2026-13217?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.