Cyber Resilience

CVE-2026-10671

Zephyrproject Zephyr 4.1.0 – 4.5.0

Public PoC
Published
14 July 2026
Modified
06 August 2026
Patch / advisory
CVSS Score v3.1 7.1
Click a component to see what it means
Raw vectorCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
EPSS Score 0.0011 1th percentile
Risk Priority 49 floored blend · peak EPSS

Summary

CVE-2026-10671 is a high-severity Expired Pointer Dereference (CWE-825) vulnerability in Zephyrproject Zephyr. Its CVSS base score is 7.1 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Default Accounts (T1078.001); ranked at the 1th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SA-8 (Security and Privacy Engineering Principles) — see the control section below for these in your framework.

EU & UK References

Vulnerability Data

In Zephyr's kernel pipe implementation, the userspace syscall verifier z_vrfy_k_pipe_init() in kernel/pipe.c used K_SYSCALL_OBJ() (which requires the kernel object to already be initialized) instead of K_SYSCALL_OBJ_NEVER_INIT() (which rejects an already-initialized object). As a result, on CONFIG_USERSPACE builds an unprivileged user…

more

thread that has been granted access to a k_pipe object can invoke the k_pipe_init syscall to re-initialize a pipe that is already in use. z_impl_k_pipe_init() unconditionally resets the ring buffer, sets pipe->waiting to 0, and re-initializes both wait queues (z_waitq_init on pipe->data and pipe->space) without waking or accounting for threads currently blocked on the pipe. Any thread already pended in k_pipe_read()/k_pipe_write() is left orphaned: still marked pending with pended_on pointing at the cleared wait queue and with stale qnode_dlist links into the (now re-initialized) embedded list head. When such an orphaned waiter is later timed out or woken, the scheduler calls sys_dlist_remove() on its stale node, writing through dangling prev/next pointers into kernel wait-queue/scheduler structures, causing list corruption (an attacker-driven invalid kernel write), lost wakeups, indefinitely blocked threads, and silent data loss. The flaw lets a deprivileged user thread corrupt the state of a kernel object shared with other threads/partitions. The fix switches the verifier to K_SYSCALL_OBJ_NEVER_INIT(), matching the existing k_msgq_init verifier, so a user thread can no longer re-initialize a live pipe. The vulnerable code shipped in v4.1.0 and remained through v4.4.0.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1078.001 Default Accounts Stealth
Adversaries may obtain and abuse credentials of a default account as a means of gaining Initial Access, Persistence, Privilege Escalation, or Defense Evasion.
T1068 Exploitation for Privilege Escalation Privilege Escalation
Adversaries may exploit software vulnerabilities in an attempt to elevate privileges.
T1078 Valid Accounts Stealth
Adversaries may obtain and abuse credentials of existing accounts as a means of gaining Initial Access, Persistence, Privilege Escalation, or Defense Evasion.
T1203 Exploitation for Client Execution Execution
Adversaries may exploit software vulnerabilities in client applications to execute code.
T1133 External Remote Services Persistence
Adversaries may leverage external-facing remote services to initially access and/or persist within a network.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2026-10685Same product: Zephyrproject Zephyr
CVE-2023-4257Same product: Zephyrproject Zephyr
CVE-2026-10667Same product: Zephyrproject Zephyr
CVE-2023-1902Same product: Zephyrproject Zephyr
CVE-2026-10637Same product: Zephyrproject Zephyr
CVE-2023-4424Same product: Zephyrproject Zephyr
CVE-2023-4259Same product: Zephyrproject Zephyr
CVE-2026-10638Same product: Zephyrproject Zephyr
CVE-2026-10635Same product: Zephyrproject Zephyr
CVE-2023-6881Same product: Zephyrproject Zephyr

Affected Assets

zephyrproject
zephyr
4.1.0 — 4.5.0

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 13 hardening rules · 7 OS baselines
Validate
Prove the fix (OWASP ASVS)
  • V14.3.2
  • V6.3.2
  • V11.3.1
  • V13.2.3

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation (including fuzzing, static analysis, and dynamic memory checkers) directly finds expired-pointer dereferences before deployment.

Secure engineering principles applied during design and implementation can mandate memory-safe allocation, ownership, and deallocation patterns that structurally avoid use of expired pointers.

Process isolation confines the effects of a use-after-free within a single address space, reducing cross-process impact.

Memory-protection mechanisms limit the blast radius when an expired pointer is dereferenced, even though they do not stop the coding flaw itself.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-01 full match
prevents

Hardened baselines and configuration management directly replace insecure defaults with secure settings.

PR.PS-06 mostly match
prevents

Secure-development practices directly prevent coding errors such as use-after-free while one CWE contributes only modestly to the full control.

ID.AM-08 partial match
prevents

Lifecycle management includes secure development and maintenance phases that reduce memory-safety defects.

ID.RA-01 partial match
prevents

Vulnerability identification processes can discover use-after-free flaws via scanning or analysis.

ID.RA-09 partial match
prevents

Pre-acquisition integrity checks can reject products known to ship with insecure defaults.

PR.PS-02 partial match
prevents

Routine patching and replacement can eliminate known instances of expired-pointer bugs.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect use-after-free issues, but removing this weakness alone does not fulfill the testing control.

prevents

Mandating secure baseline templates and immediate replacement of vendor defaults directly stops systems from being deployed with insecure factory settings that attackers can exploit.

prevents

Secure development lifecycle practices can include pointer lifetime and memory-management rules that reduce expired-pointer dereferences.

prevents

Application security requirements may mandate safe memory handling, but eliminating this single weakness does not satisfy the broader requirement.

prevents

Secure architecture and engineering principles can prescribe memory-safety patterns, yet fixing only this weakness does not achieve the control.

prevents

Secure coding standards directly address pointer lifetime and deallocation discipline, substantially mitigating expired-pointer dereference.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (1 rule)
  • V-248823 OL 8 must not have the telnet-server package installed. prevents CWE-1188
RHEL 7 (1 rule)
  • V-204627 SNMP community strings on the Red Hat Enterprise Linux operating system must be changed from the default. prevents CWE-1188
Ubuntu 22.04 (1 rule)
  • V-260529 Ubuntu 22.04 LTS must be configured so that remote X connections are disabled, unless to fulfill documented and validated mission requirements. prevents CWE-1188
Ubuntu 24.04 (1 rule)
  • V-270708 Ubuntu 24.04 LTS must be configured so that remote X connections are disabled, unless to fulfill documented and validated mission requirements. prevents CWE-1188
Windows Server 2016 (1 rule)
  • V-224972 Active Directory Group Policy objects must have proper access control permissions. prevents CWE-1188
Windows Server 2019 (1 rule)
  • V-205741 Windows Server 2019 Active Directory Group Policy objects must have proper access control permissions. prevents CWE-1188

References