CVE-2026-19735
Last modified
CVE-2026-19735 is a medium-severity vulnerability rated 4.8/10 on the CVSS scale. The RFC 6528 initial-sequence-number implementation in subsys/net/ip/tcp.c derived every TCP ISN from SHA-256(unique_key || four-tuple) plus a uptime-derived offset, where unique_key is a 128-bit secret filled once by sys_csrand_get(). The return value of that call was discarded and the once guard was latched to true even when the call failed. EPSS estimates a 0.16% chance of exploitation in the next 30 days.
Description
The RFC 6528 initial-sequence-number implementation in subsys/net/ip/tcp.c derived every TCP ISN from SHA-256(unique_key || four-tuple) plus a uptime-derived offset, where unique_key is a 128-bit secret filled once by sys_csrand_get(). The return value of that call was discarded and the once guard was latched to true even when the call failed. Because sys_csrand_get() leaves the destination buffer untouched on failure (it deliberately propagates the entropy-driver error rather than filling the buffer), a single failed call left unique_key as its all-zero BSS content for the remainder of the boot, with no retry, no log message and no fallback. A failure of the cryptographic random source is required to reach the weak state — for example -ENODEV/-EIO from the entropy driver in subsys/random/random_entropy_device.c (the in-tree comment notes that the hardware RNG "might still be gathering entropy during early boot situations"), or psa_generate_random() failing in subsys/random/random_psa.c when PSA crypto is not initialised or is backed by a Bluetooth-HCI entropy device that is not yet up. The first TCP connection is what triggers key generation, so a remote peer that reaches a listening port immediately after boot, or that can provoke a reboot, has indirect influence over whether generation coincides with that window. tcp_init_isn() is called for every passive open in tcp_conn_new() and every active open in net_tcp_connect(), so the poisoned key governs all TCP connections for that boot. With an all-zero key the ISN becomes a public function of the connection four-tuple plus a device-wide time offset. An off-path attacker can compute the hash term offline for any four-tuple and recover the shared time offset from a single observed ISN, after which the ISN the device will pick for other four-tuples is predictable. That defeats exactly the protection RFC 6528 provides: blind TCP connection spoofing against peers that trust the source address, and blind data injection into or reset of connections whose four-tuple can be guessed. Devices whose entropy source never errors were never in the weak state. The fix moves key generation into a single guarded helper that latches only on success, logs the error otherwise, and makes tcp_init_isn() fall back to sys_rand32_get() — the behaviour already used when CONFIG_NET_TCP_ISN_RFC6528 is disabled — instead of hashing with a known-constant key.
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| zephyrproject | zephyr | >= 3.7.0, <= 4.4.2 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-19735?
How severe is CVE-2026-19735?
How do I fix CVE-2026-19735?
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-19728The Extra Product Options Builder for WooCommerce WordPress …7.5
- CVE-2026-19729A flaw was found in the key provider component of the keyclo…4.9
- CVE-2026-1973A vulnerability was determined in Free5GC up to 4.1.0. The i…7.5
- CVE-2026-19730The 'podman quadlet install --replace' command opens the exi…4.2
- CVE-2026-19733Server-Side request forgery (SSRF) vulnerability in Yordam I…5.3
- CVE-2026-19734Missing Authorization and Authorization Bypass Through User-…8.6
- CVE-2026-19736The NXP MCUX TRNG entropy driver in drivers/entropy/entropy_…7.8
- CVE-2026-19737i2s_esp32_trigger_check() in drivers/i2s/i2s_esp32.c validat…5.5
- CVE-2026-19738The Bluetooth Link Layer Control Procedure (LLCP) implementa…6.5
- CVE-2026-19739The Bluetooth Link Layer control procedure code in subsys/bl…6.5
- CVE-2026-1974A vulnerability was identified in Free5GC up to 4.1.0. This …7.5
- CVE-2026-19740The Link Layer Control Procedure (LLCP) implementation of th…6.5
Are you affected by CVE-2026-19735?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
