Read the docs
TI-2026-81846 Aliases CVE-2026-99139GHSA-48cq-p2fm-8444

Use-after-free in Linux kernel TCP_CONGESTION getsockopt handling

Priority LOW 22Published · Updated

Key facts

Attack vector
—
Privileges required
—
User interaction
—
Attack complexity
—
Impact type
—
Confidentiality · integrity · availability
—
Fix status
Partial Red Hat: 6 without a fix

No CVSS vector from any source. Fix status from CNA and Red Hat.

Summary

The Linux kernel from 5.6 is affected. The do_tcp_getsockopt() function reads the congestion control name without holding rcu_read_lock(), so a BPF struct_ops congestion control object that a concurrent setsockopt(TCP_CONGESTION) call frees can be read after it is freed, a use-after-free.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

Description from the CNA

In the Linux kernel, the following vulnerability has been resolved: tcp: fix use-after-free in do_tcp_getsockopt(TCP_CONGESTION) do_tcp_getsockopt() reads icsk->icsk_ca_ops->name without holding rcu_read_lock(). Since commit 0baf26b0fcd7 ("bpf: tcp: Support tcp_congestion_ops in bpf"), icsk_ca_ops can point to dynamically allocated BPF struct_ops memory that may be freed concurrently via setsockopt(TCP_CONGESTION), leading to a use-after-free. BUG: KASAN: slab-use-after-free in _copy_to_user+0x37/0x60 Read of size 16 at addr ffff888013505260 by task exploit/149 _copy_to_user+0x37/0x60 do_tcp_getsockopt+0x158a/0x2460 (net/ipv4/tcp.c:4585) tcp_getsockopt+0x91/0xf0 __sys_getsockopt+0xf7/0x170 Fix this by holding rcu_read_lock() around the ca_ops->name access, using READ_ONCE() to load icsk_ca_ops, and copying the name to a stack buffer before releasing the lock. Also annotate the relevant icsk_ca_ops stores with WRITE_ONCE() to fix the accompanying KCSAN data-race issue.

Why it matters now

EPSS 0.00173 6th percentileScored 2026-11-07
Fix Partial Linux (Linux): 6.1.191, 6.6.161, 6.12.115 +3Red Hat: 6 without a fix

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
LinuxLinux5.6 and later6.1.191, 6.6.161, 6.12.115, 6.18.59, 7.2.13, 7.3Patch availableCNA
  • Linux VendorLinux Affected 5.6 and later Fixed in 6.1.191, 6.6.161, 6.12.115, 6.18.59, 7.2.13, 7.3 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*——Linux
  • cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions — — ·Linux

Remediation

Upgrade the Linux kernel to 6.1.191, 6.6.161, 6.12.115, 6.18.59, 7.2.13 or 7.3, which contain the fix. The sources list no fixed version for Red Hat Enterprise Linux 6, 8, 9 and 10 or Red Hat OpenShift Container Platform 4 and 5.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

  • Fix · CNA Linux (Linux) Fixed in 6.1.191, 6.6.161, 6.12.115, 6.18.59, 7.2.13, 7.3

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux 10AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 6AffectedNo fix planned: Out of support scope
Red Hat Enterprise Linux 8AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 9AffectedNo fix yet: Fix deferred
Red Hat OpenShift Container Platform 4AffectedNo fix yet: Fix deferred
Red Hat OpenShift Container Platform 5AffectedNo fix yet: Fix deferred
Not affected: 1 product
  • Red Hat Enterprise Linux 7

Timeline

  1. 2026-10-28 Threatist record created from CVE-2026-99139
  2. 2026-10-28 Alias added: GHSA-48cq-p2fm-8444
  3. 2026-10-30 Affected versions changed · Red Hat
  4. 2026-10-30 CVSS score added · Red Hat
  5. 2026-10-30 Affected versions changed · Red Hat
  6. 2026-10-30 Fix available: Linux/Linux@08dc5c62c09653d1c4ba67a009beb138486c2604, Linux/Linux@4b0930d66dde0a1d1898f0edbbb5496c4dfa5f03, Linux/[email protected] +3 · CNA
  7. 2026-10-30 3 new references · CNA

References

  • TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
  • TI-2021-02452 Incorrect authorization in Ubuntu linux kernel KEVCVSS 3.1HIGH 8.8
  • TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
  • TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
  • TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
See all 21741 →

Sources