In subsys/debug/coredump/coredump_shell.c, print_coredump_hdr() used the 16-bit tgt_code field of a stored Zephyr coredump header directly as an index into coredump_target_code2str[], a fixed 7-element array of string pointers, with no bounds check.
A stored coredump whose tgt_code is >= 7 causes an out-of-bounds read of a char* up to ~64K entries past the array; that value is passed as the %s argument to shell_print, which dereferences and walks it as a string. The result is either disclosure of device memory contents to the shell user or a crash when the out-of-bounds pointer is unmapped.
The defect is reached via the coredump print shell command (cmd_coredump_print_stored_dump -> pretty_print_coredump -> parse_and_print_coredump -> print_coredump_hdr). The tgt_code field is device-generated and in-range during normal crash handling, so triggering requires local shell access plus the ability to stage or corrupt the stored coredump in the flash/in-memory backend.
Introduced in v4.2.0 (commit 13abd7fe730) and present through v4.4.0; fixed by clamping out-of-range codes to the 'unknown' (index 0) entry.
{
"cna_assigner": "zephyr",
"cwe_ids": [
"CWE-125"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/10xxx/CVE-2026-10684.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "4.2.0"
},
{
"fixed": "4.3.1"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "4.4.0"
},
{
"fixed": "4.4.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "a9226324e8bd1f8adecafb1b6e0603f781dc750c"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-10684.json"
[
{
"deprecated": false,
"digest": {
"line_hashes": [
"260836015148393489457064100723057116518",
"257685689189008318273839913029726288389",
"228303340238431122797279077305123315970",
"209763767519381559304863455793805713914",
"135010291725901937045094975110549351652",
"259314474679208301657673203448771537726",
"97902575411234731119169597034054513193",
"109518710845568337961444570235325120674",
"237525828665480385194321903779979796133",
"95645591373966145483735469558537086082",
"108855626347845566091023450339914291450",
"312165992216904562964333258465965884562",
"205685386587876581653581328679224878075"
],
"threshold": 0.9
},
"id": "CVE-2026-10684-8495c7a4",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/zephyrproject-rtos/zephyr/commit/a9226324e8bd1f8adecafb1b6e0603f781dc750c",
"target": {
"file": "subsys/debug/coredump/coredump_shell.c"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "133778362332070850882100265892744247887",
"length": 680
},
"id": "CVE-2026-10684-cb84f4b5",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/zephyrproject-rtos/zephyr/commit/a9226324e8bd1f8adecafb1b6e0603f781dc750c",
"target": {
"file": "subsys/debug/coredump/coredump_shell.c",
"function": "print_coredump_hdr"
}
}
]
"2026-10-28T11:04:01Z"