CVE-2026-72447

Source
https://cve.org/CVERecord?id=CVE-2026-72447
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72447.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-72447
Downstream
Published
2026-08-15T05:56:57.089Z
Modified
2026-08-18T03:31:06.601248051Z
Summary
sctp: hold socket lock when dumping endpoints in sctp_diag
Details

In the Linux kernel, the following vulnerability has been resolved:

sctp: hold socket lock when dumping endpoints in sctp_diag

SCTPDIAG endpoint dumping was traversing endpoint address lists without holding locksock(), while those lists could change concurrently via socket operations (e.g., bindx changes). This creates a race where nla_reserve() counts addresses under RCU protection, but the subsequent copy may see fewer entries, potentially leaking uninitialized memory to userspace.

Fix this by:

  • Taking a reference on each endpoint during hash traversal
  • Moving socket operations (locksock()) outside readlock_bh()
  • Serializing address list access during dump
  • Reworking sctpforeach_endpoint() to support restart-based traversal with (net, pos) tracking

Also:

  • Add WARNONONCE() for inconsistent address counts
  • Fix idiag_states filtering for LISTEN vs association cases
  • Skip dumping endpoints being freed (ep->base.dead)
  • Move dump position tracking into iterator, removing cb->args[4] and its comment for sctpepdump().,
  • Update the comment for cb->args[4] and remove the comment for unused cb->args[5] for sctpsockdump().

Note: traversal is restart-based and may re-scan buckets multiple times, but this is acceptable due to small bucket sizes and required to support sleeping-safe callbacks.

This issue was reported by Nico Yip (@cyeaa) working with TrendAI Zero Day Initiative.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72447.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
8f840e47f190cbe61a96945c13e9551048d42cef
Fixed
f98c294a9369b6fe89e652c06357ee594be4dfa2
Fixed
8b38e3dcfde3077dbc03eb8ef88e03cc19f70b8a
Fixed
ec3c2d59a192e17e1014ba71afc368ba162ecac3
Fixed
722576aba0a6d9423714550b1c03239b0f0def77
Fixed
abe7f8828e6ac8be858870c2bf836258844f97d5
Fixed
207bb4ce8fe7de961ae7bb33569ad2cd61f44954
Fixed
f09a245f33e567b604efa1960b7a2d25dd9c8713
Fixed
7d8297e26b4e20b5d1c3c3fe51fe81a1c7fbc823

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72447.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.7.0
Fixed
5.10.261
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.212
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.178
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.145
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.97
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.40
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.1.5

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72447.json"