CVE-2026-15924
Last modified
CVE-2026-15924 is a medium-severity vulnerability rated 5.9/10 on the CVSS scale. Zephyr's TLS socket layer in subsys/net/lib/sockets/sockets_tls.c keeps a single process-global array, client_cache, of cached client sessions that is shared by every TLS socket context. The functions that mutate and read it — tls_session_save(), tls_session_get(), tls_session_cache_reset(), and the settings restore handler — allocate, free, and dereference each entry's heap buffer (entry->session).
Description
Zephyr's TLS socket layer in subsys/net/lib/sockets/sockets_tls.c keeps a single process-global array, client_cache, of cached client sessions that is shared by every TLS socket context. The functions that mutate and read it — tls_session_save(), tls_session_get(), tls_session_cache_reset(), and the settings restore handler — allocate, free, and dereference each entry's heap buffer (entry->session). Before the fix these accesses were serialized only by the per-socket context mutex ctx->lock (assigned per socket in ctx_set_lock()), which provides no mutual exclusion between different sockets touching the shared cache. Because CONFIG_NET_SOCKETS_TLS_MAX_CLIENT_SESSION_COUNT defaults to 1, any two concurrent client sockets contend for the same slot. A thread in tls_session_get() reading entry->session inside mbedtls_ssl_session_load() can run concurrently with another thread in tls_session_save() that selects the same entry for reuse and executes mbedtls_free(entry->session) before reallocating — a use-after-free read, and a double-free when two saves evict the same entry. Both corrupt the mbedTLS heap. The cache is reached on ordinary client paths: at connect time via tls_session_store()/tls_session_restore(), and (on main) whenever a TLS 1.3 session ticket arrives during recv()/poll() via tls_session_store_current(). Exploitation requires an application that opts into per-socket client session caching (the TLS_SESSION_CACHE socket option, off by default) and runs concurrent TLS client connections on multiple threads; the timing that opens the window is influenced by the remote peer(s), so a malicious or compromised server can raise session-ticket frequency to widen it. The reliably-demonstrable impact is memory corruption leading to a crash or heap corruption (denial of service). The fix adds a dedicated session_cache_lock mutex taken across every accessor of client_cache, serializing all reads and frees and closing the race.
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| zephyrproject | zephyr | >= 3.1.0, < 4.4.2 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-15924?
How severe is CVE-2026-15924?
How do I fix CVE-2026-15924?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-15917Improper Neutralization of Input During Web Page Generation …4.7
- CVE-2026-15918VikAppointments Service Booking Calendar wordpress plugin is…7.5
- CVE-2026-1592Foxit PDF Editor Cloud (pdfonline) contains a stored cross-s…5.4
- CVE-2026-15920An issue was discovered in Django 5.2 before 5.2.17 and 6.0 …6.1
- CVE-2026-15921Node Version Manager (nvm) is a POSIX-compliant shell functi…3.1
- CVE-2026-15923The Zephyr SDIO subsystem function sdio_io_rw_extended_helpe…4.6
- CVE-2026-15925Improper TLS hostname verification in Snowflake Connector fo…9.2
- CVE-2026-15926Rejected reason: Red Hat Product Security has determined tha…
- CVE-2026-15927A flaw was found in Red Hat Quay's repository-level mirror c…6.8
- CVE-2026-15928XMLRPC-C Library versions 1.07 through 1.67.01 are vulnerabl…8.2
- CVE-2026-15929Improper neutralization of special elements used in an SQL c…7.1
- CVE-2026-1593A weakness has been identified in itsourcecode Society Manag…9.8
Are you affected by CVE-2026-15924?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
