Description
The RACK setsockopt(2) handler drops the connection lock in order to copy option data from userspace, then reacquires the lock. After reacquiring, it verifies that the TCP stack had not been switched away, but did not reload its pointer to the stack's per-connection control block. If userspace switches stacks twice during this window, the check will succeed but the saved pointer will refer to freed memory.

The bug may be exploitable by an unprivileged local user to escalate privileges.
Published: 2026-08-19
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The bug occurs in the TCP RACK options handler when it drops the connection lock before copying data from userspace and later reacquires the lock. The handler verifies that the TCP stack has not changed but fails to reload the pointer to the stack’s control block. If a local user switches stacks twice during this window, the check succeeds while the saved pointer refers to freed memory, creating a use‑after‑free that may let the attacker execute code in the kernel, thereby escalating privileges from a non‑privileged account to root.

Affected Systems

The vulnerability affects FreeBSD systems running the default TCP stack that implements the RACK algorithm. No specific version information is provided; all current releases that contain the unpatched RACK logic are potentially impacted.

Risk and Exploitability

The flaw is exploitable from a local, unprivileged context and can lead to full system compromise. No EPSS score is available and the vulnerability is not listed in the CISA KEV catalog, but the lack of a public exploit does not reduce its severity. The CVSS score is not supplied in the data, but the nature of the use‑after‑free in kernel code implies a high severity with a low likelihood of remote exploitation compared to the high impact of local privilege escalation.

Generated by OpenCVE AI on August 19, 2026 at 06:20 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest FreeBSD security update that patches the RACK setsockopt handler when it becomes available.
  • If an immediate patch cannot be applied, disable the RACK algorithm by setting the sysctl net.inet.tcp.rack to 0 so the vulnerable code path is never executed.
  • Restrict unprivileged users from executing network‑administration operations by removing or denying the CAP_NET_ADMIN capability or by enforcing strict user privilege separation.

Generated by OpenCVE AI on August 19, 2026 at 06:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 19 Aug 2026 05:45:00 +0000

Type Values Removed Values Added
Description The RACK setsockopt(2) handler drops the connection lock in order to copy option data from userspace, then reacquires the lock. After reacquiring, it verifies that the TCP stack had not been switched away, but did not reload its pointer to the stack's per-connection control block. If userspace switches stacks twice during this window, the check will succeed but the saved pointer will refer to freed memory. The bug may be exploitable by an unprivileged local user to escalate privileges.
Title Use-after-free in TCP RACK stack option handler
Weaknesses CWE-416
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: freebsd

Published:

Updated: 2026-08-19T05:28:32.468Z

Reserved: 2026-05-29T20:24:28.616Z

Link: CVE-2026-49422

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-19T06:17:41.447

Modified: 2026-08-19T06:17:41.447

Link: CVE-2026-49422

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-19T06:30:05Z

Weaknesses