Zephyr TCP Null Pointer Dereference Vulnerability Due to Race Condition

Vulnerability

A null pointer dereference vulnerability has been identified in the Zephyr TCP implementation, specifically in versions through 4.3. This issue arises from a race condition during the teardown of TCP connections. When a connection is released, its context is set to NULL, but packets can still be processed by the `tcp_recv()` function. If `tcp_conn_search()` returns NULL while handling a SYN packet, a NULL pointer derived from outdated context data is passed to `tcp_backlog_is_full()`, where it is dereferenced without proper validation, leading to a crash.

Impact

Exploitation of this vulnerability causes a null pointer dereference, resulting in a crash of the application.

Reproduction

The vulnerability can be reproduced by sending a SYN packet to a TCP connection that is in the process of being released. The `tcp_recv()` function will attempt to process the packet, but if the connection has already been cleared, it will create a null pointer from stale data. This pointer is then passed to `tcp_backlog_is_full()`, where it is dereferenced without any checks, causing a crash.

Added: Apr 5, 2026, 4:18 AM
Updated: Apr 5, 2026, 4:18 AM

Vulnerability Rating

Custom Algorithm
spread
6.6
impact
2.5
exploitability
4.6
remediation
0.0
relevance
5.3
threat
1.6
urgency
2.9
incentive
0.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.