GHSA-XJQR-QMX4-H4W3
Vulnerability from github – Published: 2026-10-28 12:31 – Updated: 2026-10-28 12:31In the Linux kernel, the following vulnerability has been resolved:
tcp: fix use-after-free in do_tcp_getsockopt(TCP_CC_INFO)
do_tcp_getsockopt() reads icsk->icsk_ca_ops and dereferences the get_info function pointer without rcu_read_lock(). With BPF struct_ops congestion control, ca_ops can point to dynamically allocated memory that is freed concurrently, resulting in a use-after-free when the kernel dereferences or calls through the stale pointer.
BUG: KASAN: slab-use-after-free in do_tcp_getsockopt+0x2037/0x23e0 Read of size 8 at addr ffff888013701258 by task exploit/149 do_tcp_getsockopt+0x2037/0x23e0 (net/ipv4/tcp.c:4564) tcp_getsockopt+0x91/0xf0 __sys_getsockopt+0xf7/0x170
Fix this by wrapping the ca_ops load and get_info call within rcu_read_lock()/rcu_read_unlock(), and using READ_ONCE() to load the icsk_ca_ops pointer.
{
"affected": [],
"aliases": [
"CVE-2026-99138"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-10-28T11:17:33Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\ntcp: fix use-after-free in do_tcp_getsockopt(TCP_CC_INFO)\n\ndo_tcp_getsockopt() reads icsk-\u003eicsk_ca_ops and dereferences the\nget_info function pointer without rcu_read_lock(). With BPF struct_ops\ncongestion control, ca_ops can point to dynamically allocated memory\nthat is freed concurrently, resulting in a use-after-free when the\nkernel dereferences or calls through the stale pointer.\n\n BUG: KASAN: slab-use-after-free in do_tcp_getsockopt+0x2037/0x23e0\n Read of size 8 at addr ffff888013701258 by task exploit/149\n do_tcp_getsockopt+0x2037/0x23e0 (net/ipv4/tcp.c:4564)\n tcp_getsockopt+0x91/0xf0\n __sys_getsockopt+0xf7/0x170\n\nFix this by wrapping the ca_ops load and get_info call within\nrcu_read_lock()/rcu_read_unlock(), and using READ_ONCE() to load\nthe icsk_ca_ops pointer.",
"id": "GHSA-xjqr-qmx4-h4w3",
"modified": "2026-10-28T12:31:04Z",
"published": "2026-10-28T12:31:04Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-99138"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/385e474086c2e7e29e2dded690be40dc273e20ee"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/39aa489e85752f9de214edb0f85e4d578e57af29"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/86814e5370068ec2bf0caa6e6d55c3e5bfc6c324"
}
],
"schema_version": "1.4.0",
"severity": []
}
Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline
Sightings and recorded dates, grouped by day · UTC
Loading timeline…
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.