Action not permitted
Modal body text goes here.
Modal Title
Modal Body
EUVD-2026-345755
European Vulnerability Database identifier assigned by ENISAReserved
2026-10-02 08:04
Assigner
ENISA
Alias of
a CVE record, shown under related vulnerabilities.
This identifier carries no description, severity or references of its own:
they belong to that CVE.
{
"assigner": "ENISA",
"date_reserved": "2026-10-02T08:04:31.581155+00:00",
"id": "EUVD-2026-345755"
}
CVE-2024-36883 (GCVE-0-2024-36883)
Vulnerability from cvelistv5 – Published: 2024-05-30 15:28 – Updated: 2026-08-05 11:31
VLAI
EPSS
VEX
Title
net: fix out-of-bounds access in ops_init
Summary
In the Linux kernel, the following vulnerability has been resolved:
net: fix out-of-bounds access in ops_init
net_alloc_generic is called by net_alloc, which is called without any
locking. It reads max_gen_ptrs, which is changed under pernet_ops_rwsem. It
is read twice, first to allocate an array, then to set s.len, which is
later used to limit the bounds of the array access.
It is possible that the array is allocated and another thread is
registering a new pernet ops, increments max_gen_ptrs, which is then used
to set s.len with a larger than allocated length for the variable array.
Fix it by reading max_gen_ptrs only once in net_alloc_generic. If
max_gen_ptrs is later incremented, it will be caught in net_assign_generic.
Severity
7.8 (High)
SSVC
Exploitation: none
Automatable: no
Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2024-06-12 19:28 UTC
Assigner
References
11 references
Impacted products
2 products
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < 3cdc34d76c4f777579e28ad373979d36c030cfd3
(git)
Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < 7b0e64583eab8c1d896b47e5dd0bf2e7d86ec41f (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < 0c3248bc708a7797be573214065cf908ff1f54c7 (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < 9518b79bfd2fbf99fa9b7e8e36bcb1825e7ba030 (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < 2d60ff5874aefd006717ca5e22ac1e25eac29c42 (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < b6dbfd5bcc267a95a0bf1bf96af46243f96ec6cd (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < f4f94587e1bf87cb40ec33955a9d90148dd026ab (git) Affected: 073862ba5d249c20bd5c49fc6d904ff0e1f6a672 , < a26ff37e624d12e28077e5b24d2b264f62764ad6 (git) Affected: 561331eae0a03d0c4cf60f3cf485aa3e8aa5ab48 (git) Affected: a2c82f7bee1ffa9eafa1fb0bd886a7eea8c9e497 (git) Affected: 3.0.19 , < 3.1 (semver) Affected: 3.2.3 , < 3.3 (semver) |
|
| Linux | Linux |
Affected:
3.3
Unaffected: 0 , < 3.3 (semver) Unaffected: 4.19.314 , ≤ 4.19.* (semver) Unaffected: 5.4.276 , ≤ 5.4.* (semver) Unaffected: 5.10.217 , ≤ 5.10.* (semver) Unaffected: 5.15.159 , ≤ 5.15.* (semver) Unaffected: 6.1.91 , ≤ 6.1.* (semver) Unaffected: 6.6.31 , ≤ 6.6.* (semver) Unaffected: 6.8.10 , ≤ 6.8.* (semver) Unaffected: 6.9 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2024-36883",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2024-06-12T19:28:57.397023Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2024-06-12T19:29:08.414Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
},
{
"providerMetadata": {
"dateUpdated": "2024-10-18T13:07:38.120Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/3cdc34d76c4f777579e28ad373979d36c030cfd3"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/7b0e64583eab8c1d896b47e5dd0bf2e7d86ec41f"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/0c3248bc708a7797be573214065cf908ff1f54c7"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/9518b79bfd2fbf99fa9b7e8e36bcb1825e7ba030"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/2d60ff5874aefd006717ca5e22ac1e25eac29c42"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/b6dbfd5bcc267a95a0bf1bf96af46243f96ec6cd"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/f4f94587e1bf87cb40ec33955a9d90148dd026ab"
},
{
"tags": [
"x_transferred"
],
"url": "https://git.kernel.org/stable/c/a26ff37e624d12e28077e5b24d2b264f62764ad6"
},
{
"tags": [
"x_transferred"
],
"url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html"
},
{
"tags": [
"x_transferred"
],
"url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00019.html"
},
{
"url": "https://security.netapp.com/advisory/ntap-20241018-0001/"
}
],
"title": "CVE Program Container"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/core/net_namespace.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "3cdc34d76c4f777579e28ad373979d36c030cfd3",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "7b0e64583eab8c1d896b47e5dd0bf2e7d86ec41f",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "0c3248bc708a7797be573214065cf908ff1f54c7",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "9518b79bfd2fbf99fa9b7e8e36bcb1825e7ba030",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "2d60ff5874aefd006717ca5e22ac1e25eac29c42",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "b6dbfd5bcc267a95a0bf1bf96af46243f96ec6cd",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "f4f94587e1bf87cb40ec33955a9d90148dd026ab",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"lessThan": "a26ff37e624d12e28077e5b24d2b264f62764ad6",
"status": "affected",
"version": "073862ba5d249c20bd5c49fc6d904ff0e1f6a672",
"versionType": "git"
},
{
"status": "affected",
"version": "561331eae0a03d0c4cf60f3cf485aa3e8aa5ab48",
"versionType": "git"
},
{
"status": "affected",
"version": "a2c82f7bee1ffa9eafa1fb0bd886a7eea8c9e497",
"versionType": "git"
},
{
"lessThan": "3.1",
"status": "affected",
"version": "3.0.19",
"versionType": "semver"
},
{
"lessThan": "3.3",
"status": "affected",
"version": "3.2.3",
"versionType": "semver"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/core/net_namespace.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.3"
},
{
"lessThan": "3.3",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "4.19.*",
"status": "unaffected",
"version": "4.19.314",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"version": "5.4.276",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.217",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.159",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.91",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.31",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.8.*",
"status": "unaffected",
"version": "6.8.10",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "6.9",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "4.19.314",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.4.276",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.217",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.159",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.91",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.31",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.8.10",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.9",
"versionStartIncluding": "3.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.0.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.2.3",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: fix out-of-bounds access in ops_init\n\nnet_alloc_generic is called by net_alloc, which is called without any\nlocking. It reads max_gen_ptrs, which is changed under pernet_ops_rwsem. It\nis read twice, first to allocate an array, then to set s.len, which is\nlater used to limit the bounds of the array access.\n\nIt is possible that the array is allocated and another thread is\nregistering a new pernet ops, increments max_gen_ptrs, which is then used\nto set s.len with a larger than allocated length for the variable array.\n\nFix it by reading max_gen_ptrs only once in net_alloc_generic. If\nmax_gen_ptrs is later incremented, it will be caught in net_assign_generic."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The vulnerable code is reached through the local `clone()`/`unshare(CLONE_NEWNET)` syscall path (`copy_net_ns` \u2192 `net_alloc` \u2192 `net_alloc_generic`) raced against local pernet-ops registration. No remote packet processing is involved, so local access is required.\nAC:L - The attacker controls both sides of the race \u2014 one set of threads spins on netns creation while another triggers `register_pernet_operations()` via autoloadable network modules \u2014 and the window is a sleepable `kzalloc(GFP_KERNEL)` that can be widened arbitrarily with memory pressure. Once the window is hit, the subsequent `setup_net()` ordering follows naturally from the rwsem, requiring no additional luck.\nPR:L - Creating a network namespace requires only `ns_capable(user_ns, CAP_SYS_ADMIN)`, which any unprivileged user obtains via `unshare -Urn` on the widely-deployed configurations that enable unprivileged user namespaces; module autoload for the second race side is likewise reachable with CAP_NET_ADMIN inside that namespace.\nUI:N - The attacker triggers the entire sequence from its own threads via syscalls; no action by any other user or victim process is needed.\nS:U - The out-of-bounds accesses corrupt kernel slab memory within the same kernel security authority; no VM, IOMMU, or other trust boundary is crossed.\nC:H - The oversized `s.len` drives an out-of-bounds `memcpy` that copies adjacent slab contents into the `net_generic` array, where those leaked qwords are then handed out by `net_generic()` as subsystem private-data pointers and dereferenced, yielding attacker-influenced kernel heap disclosure.\nI:H - `net_assign_generic()` writes a valid kernel heap pointer at `old_ng-\u003eptr[id]` beyond the end of the allocation, and the attacker can size the allocation to a kmalloc bucket boundary so the write lands in a neighboring object \u2014 a controlled cross-object heap write suitable for control-flow hijacking.\nA:H - Out-of-bounds slab writes and the resulting wild-pointer dereferences and `kfree()` of garbage values in `ops_free_list()` reliably produce kernel oops, slab corruption, or panic."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-05T11:31:49.005Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/3cdc34d76c4f777579e28ad373979d36c030cfd3"
},
{
"url": "https://git.kernel.org/stable/c/7b0e64583eab8c1d896b47e5dd0bf2e7d86ec41f"
},
{
"url": "https://git.kernel.org/stable/c/0c3248bc708a7797be573214065cf908ff1f54c7"
},
{
"url": "https://git.kernel.org/stable/c/9518b79bfd2fbf99fa9b7e8e36bcb1825e7ba030"
},
{
"url": "https://git.kernel.org/stable/c/2d60ff5874aefd006717ca5e22ac1e25eac29c42"
},
{
"url": "https://git.kernel.org/stable/c/b6dbfd5bcc267a95a0bf1bf96af46243f96ec6cd"
},
{
"url": "https://git.kernel.org/stable/c/f4f94587e1bf87cb40ec33955a9d90148dd026ab"
},
{
"url": "https://git.kernel.org/stable/c/a26ff37e624d12e28077e5b24d2b264f62764ad6"
}
],
"title": "net: fix out-of-bounds access in ops_init",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2024-36883",
"datePublished": "2024-05-30T15:28:53.302Z",
"dateReserved": "2024-05-30T15:25:07.064Z",
"dateUpdated": "2026-08-05T11:31:49.005Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Loading…
Trend slope:
-
(linear fit over daily sighting counts)
Show additional events:
Loading…
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
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.
Loading…
Loading…
The MITRE ATT&CK techniques below are AI-generated suggestions, inferred from the description of the
vulnerability by the CIRCL/vulnerability-attack-technique-classification-roberta-base
model, served locally by ML-Gateway.
They have not been verified by an analyst and are provided for guidance only.
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.
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.
Loading…
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.
Loading…
Loading…