Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-14368— Off-by-one out-of-bounds NUL write in Zephyr LwM2M JSON string parser

Quick assessment

Affected
zephyrproject zephyr
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

以下是对该漏洞描述信息的中文翻译: 在 LwM2M JSON 内容格式化工具中, 文件中的 函数会将解析后的 JSON 字符串复制到调用者提供的缓冲区,并在末尾添加 NUL 终止符。原有的长度检查条件为 ,该条件允许字符串长度恰好等于 的情况通过检查。在执行 填满整个缓冲区后,随后的 操作会在缓冲区末端之外写入一个字节(CWE-787:越界写入)。 字符串值及其长度直接来自接收到的 CoAP 载荷,发生在 LwM2M WRITE 操作期间。 解析从 获取的载荷;当资源类型为 时, (位于 中的 )会调用 。目标缓冲

CVSS 5.4 · Medium

Affected Version Matrix 1

VendorProduct Version RangeStatus
zephyrproject zephyr 3.2.0< 4.4.2 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-14368

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Off-by-one out-of-bounds NUL write in Zephyr LwM2M JSON string parser
Source: CVE Program / CVE List V5
Vulnerability Description
The LwM2M JSON content formatter's get_string() in subsys/net/lib/lwm2m/lwm2m_rw_json.c copies a parsed JSON string into a caller-supplied buffer and NUL-terminates it. The length guard used if (string_length > buflen), which accepts a string whose length is exactly buflen. After memcpy() fills the whole buffer, buf[string_length] = '\0' then writes one byte past the end of the buffer (CWE-787). The string value and its length are taken directly from the incoming CoAP payload during a LwM2M WRITE: do_write_op_json() parses the payload obtained from coap_packet_get_payload(), and get_string() is invoked from lwm2m_write_handler() (engine_get_string() in subsys/net/lib/lwm2m/lwm2m_message_handling.c) for a LWM2M_RES_TYPE_STRING resource. The destination buf/buflen is either the resource instance's fixed data buffer (res_inst->data_ptr/max_data_len) or the engine validation buffer (msg->ctx->validate_buf). A LwM2M server (the client's DTLS peer) can therefore write a string resource with a value whose length equals the target buffer size and force a one-byte overflow. The overflow is a single out-of-bounds write of the constant byte 0x00 immediately past the resource or validation buffer, corrupting the adjacent byte in memory. It is not an information leak and the written value is fixed, so it is not a direct code-execution primitive, but it can corrupt adjacent state (an adjacent resource value, a length/flag field, or a struct field) and cause data corruption or a crash. Triggering the write is deterministic; the resulting impact depends on memory layout. The fix changes the guard to string_length >= buflen, rejecting the exact-length case and aligning the JSON formatter with the other content formatters (lwm2m_rw_plain_text.c, lwm2m_rw_oma_tlv.c, lwm2m_rw_senml_json.c, lwm2m_rw_cbor.c, lwm2m_rw_senml_cbor.c), which already used the correct boundary check.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
Source: CVE Program / CVE List V5
Vulnerability Type
跨界内存写
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
zephyrproject zephyr 3.2.0 ~ 4.4.2 -

II. Public POCs for CVE-2026-14368

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-14368

登录查看更多情报信息。

Patches & Fixes for CVE-2026-14368 (1)

Vendor Advisories for CVE-2026-14368 (1)

Same Patch Batch · zephyrproject · 2026-08-31 · 5 CVEs total

CVE-2026-14696 6.5 MEDIUM Ethernet bridge RX packet leak enables denial of service via RX buffer-pool exhaustion
CVE-2026-14697 6.5 MEDIUM IPv6 Neighbor Solicitation packet leak causes TX pool exhaustion denial of service
CVE-2026-14366 6.4 MEDIUM SiWx91x WiFi driver double-unref / use-after-free of caller-owned TX net_pkt
CVE-2026-14367 3.1 LOW I3C IBI work-node free-list data race between ISR and workqueue thread

IV. Related Vulnerabilities

V. Comments for CVE-2026-14368

No comments yet


Leave a comment