io_uring/kbuf: hold io_buffer_list reference over mmap
In the Linux kernel, the following vulnerability has been resolved: io_uring/kbuf: hold io_buffer_list reference over mmap If we look up the kbuf, ensure that it doesn't get unregistered until after we're done with it. Since we're inside mmap, we cannot safely use the io_uring lock. Rely on the fact that we can lookup the buffer list under RCU now and grab a reference to it, preventing it from being unregistered until we're done with it. The lookup returns the io_buffer_list directly with it referenced.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 6.6.26, 6.8.5
- CVEs
- CVE-2024-35880
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 8 Nov 2026, 00:44 UTC · Revision 1
Source evidence
io_uring/kbuf: hold io_buffer_list reference over mmap
core-osv · Original sourcePublished 19 May 2024, 08:34 UTC
In the Linux kernel, the following vulnerability has been resolved: io_uring/kbuf: hold io_buffer_list reference over mmap If we look up the kbuf, ensure that it doesn't get unregistered until after we're done with it. Since we're inside mmap, we cannot safely use the io_uring lock. Rely on the fact that we can lookup the buffer list under RCU now and grab a reference to it, preventing it from being unregistered until we're done with it. The lookup returns the io_buffer_list directly with it referenced.
osv:CVE-2024-35880
Kernel
Fixed versions: 6.6.26, 6.8.5
Complete source record
{
"id": "edf6032e8e341fdcc22935a9b95a996313025388d266fc818063860122a8f3a4",
"url": "https://osv.dev/vulnerability/CVE-2024-35880",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "io_uring/kbuf: hold io_buffer_list reference over mmap",
"summary": "In the Linux kernel, the following vulnerability has been resolved: io_uring/kbuf: hold io_buffer_list reference over mmap If we look up the kbuf, ensure that it doesn't get unregistered until after we're done with it. Since we're inside mmap, we cannot safely use the io_uring lock. Rely on the fact that we can lookup the buffer list under RCU now and grab a reference to it, preventing it from being unregistered until we're done with it. The lookup returns the io_buffer_list directly with it referenced.",
"evidence": "osv:CVE-2024-35880",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "6.6.26",
"evidence": "/affected/1/ranges"
},
{
"value": "6.8.5",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "high",
"structured": {
"id": "CVE-2024-35880",
"aliases": [
"CVE-2024-35880"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "09f7520048eaaee9709091cd2787966f807da7c5"
},
{
"fixed": "65938e81df2197203bda4b9a0c477e7987218d66"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5cf4f52e6d8aa2d3b7728f568abbf9d42a3af252"
},
{
"fixed": "5fd8e2359498043e0b5329a05f02d10a9eb91eb9"
},
{
"fixed": "561e4f9451d65fc2f7eef564e0064373e3019793"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "6.6.5"
},
{
"fixed": "6.6.26"
}
]
}
],
"versions": [
"v6.6.25",
"v6.6.24",
"v6.6.23",
"v6.6.22",
"v6.6.21",
"v6.6.20",
"v6.6.19",
"v6.6.18",
"v6.6.17",
"v6.6.16",
"v6.6.15",
"v6.6.14",
"v6.6.13",
"v6.6.12",
"v6.6.11",
"v6.6.10",
"v6.6.9",
"v6.6.8",
"v6.6.7",
"v6.6.6",
"v6.6.5"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-35880.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "6.6.26"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.7.0"
},
{
"fixed": "6.8.5"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-35880.json"
}
}
],
"modified": "2026-10-28T02:30:52.581125213Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/561e4f9451d65fc2f7eef564e0064373e3019793",
"https://git.kernel.org/stable/c/5fd8e2359498043e0b5329a05f02d10a9eb91eb9",
"https://git.kernel.org/stable/c/65938e81df2197203bda4b9a0c477e7987218d66",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/35xxx/CVE-2024-35880.json",
"https://nvd.nist.gov/vuln/detail/CVE-2024-35880",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/35xxx/CVE-2024-35880.json"
}
},
"related_cves": [
{
"value": "CVE-2024-35880",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 521066,
"published_at": "2024-05-19T08:34:37.262+00:00"
}