{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-52999","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-03-27T16:40:15.742Z","datePublished":"2025-03-27T16:43:32.497Z","dateUpdated":"2026-08-05T09:12:19.715Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T09:12:19.715Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: fix UaF in netns ops registration error path\n\nIf net_assign_generic() fails, the current error path in ops_init() tries\nto clear the gen pointer slot. Anyway, in such error path, the gen pointer\nitself has not been modified yet, and the existing and accessed one is\nsmaller than the accessed index, causing an out-of-bounds error:\n\n BUG: KASAN: slab-out-of-bounds in ops_init+0x2de/0x320\n Write of size 8 at addr ffff888109124978 by task modprobe/1018\n\n CPU: 2 PID: 1018 Comm: modprobe Not tainted 6.2.0-rc2.mptcp_ae5ac65fbed5+ #1641\n Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.1-2.fc37 04/01/2014\n Call Trace:\n  <TASK>\n  dump_stack_lvl+0x6a/0x9f\n  print_address_description.constprop.0+0x86/0x2b5\n  print_report+0x11b/0x1fb\n  kasan_report+0x87/0xc0\n  ops_init+0x2de/0x320\n  register_pernet_operations+0x2e4/0x750\n  register_pernet_subsys+0x24/0x40\n  tcf_register_action+0x9f/0x560\n  do_one_initcall+0xf9/0x570\n  do_init_module+0x190/0x650\n  load_module+0x1fa5/0x23c0\n  __do_sys_finit_module+0x10d/0x1b0\n  do_syscall_64+0x58/0x80\n  entry_SYSCALL_64_after_hwframe+0x72/0xdc\n RIP: 0033:0x7f42518f778d\n Code: 00 c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48\n       89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff\n       ff 73 01 c3 48 8b 0d cb 56 2c 00 f7 d8 64 89 01 48\n RSP: 002b:00007fff96869688 EFLAGS: 00000246 ORIG_RAX: 0000000000000139\n RAX: ffffffffffffffda RBX: 00005568ef7f7c90 RCX: 00007f42518f778d\n RDX: 0000000000000000 RSI: 00005568ef41d796 RDI: 0000000000000003\n RBP: 00005568ef41d796 R08: 0000000000000000 R09: 0000000000000000\n R10: 0000000000000003 R11: 0000000000000246 R12: 0000000000000000\n R13: 00005568ef7f7d30 R14: 0000000000040000 R15: 0000000000000000\n  </TASK>\n\nThis change addresses the issue by skipping the gen pointer\nde-reference in the mentioned error-path.\n\nFound by code inspection and verified with explicit error injection\non a kasan-enabled kernel."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The vulnerable ops_init() path runs during register_pernet_subsys/device on module init, which an unprivileged local attacker can trigger via socket() autoload of protocol modules (e.g. AF_KCM/AF_RXRPC/AF_PHONET/AF_TIPC) or via CAP_NET_ADMIN in a user namespace loading tc act_* modules.\nAC:L - The attacker can induce the required net_assign_generic() ENOMEM failure by exhausting memory before triggering module autoload, and no victim-controlled or otherwise uncontrollable race/state is required beyond that attacker-driven condition.\nPR:L - No elevated host privileges are needed: a normal local user can call socket() to request_module net-pf-* modules that register pernet ops with id+size, or obtain CAP_NET_ADMIN only inside a user/net namespace to autoload tc action modules into the same path.\nUI:N - Exploitation requires no victim action; the attacker unilaterally creates sockets or netlink messages that cause the vulnerable registration error path to run.\nS:U - This is a host-kernel memory-corruption bug in netns registration; impact remains within the same kernel security authority with no VM/IOMMU/sandbox boundary crossed.\nC:H - The bug is an 8-byte out-of-bounds write into adjacent slab memory, which is memory corruption that can be shaped into an information-disclosure primitive under the scoring guidance for OOB writes.\nI:H - The slab out-of-bounds write of a NULL pointer into neighboring heap objects is an integrity-corrupting memory-safety violation that can be leveraged toward control-flow or object corruption, matching High for OOB write.\nA:H - The out-of-bounds write can crash the kernel (KASAN reports slab-out-of-bounds; without KASAN, adjacent-object corruption can oops/panic), so availability impact is High."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/net_namespace.c"],"versions":[{"version":"5a2ea549be94924364f6911227d99be86e8cf34a","lessThan":"ad0dfe9bcf0d78e699c7efb64c90ed062dc48bea","status":"affected","versionType":"git"},{"version":"97ad240fd9aa9214497d14af2b91608e20856cac","lessThan":"ddd49cbbd4c1ceb38032018b589b44208e54f55e","status":"affected","versionType":"git"},{"version":"c3edc6e808209aa705185f732e682a370981ced1","lessThan":"d4c008f3b7f7d4ffd311eb2dae5e75b3cbddacd0","status":"affected","versionType":"git"},{"version":"a1e18acb0246bfb001b08b8b1b830b5ec92a0f13","lessThan":"66689a72ba73575e76d4f6a8748d3fa2690ec1c4","status":"affected","versionType":"git"},{"version":"d266935ac43d57586e311a087510fe6a084af742","lessThan":"12075708f2e77ee6a9f8bb2cf512c38be3099794","status":"affected","versionType":"git"},{"version":"d266935ac43d57586e311a087510fe6a084af742","lessThan":"71ab9c3e2253619136c31c89dbb2c69305cc89b1","status":"affected","versionType":"git"},{"version":"4a4df5e78712de39d6f90d6a64b5eb48dca03bd5","status":"affected","versionType":"git"},{"version":"4.19.264","lessThan":"4.19.272","status":"affected","versionType":"semver"},{"version":"5.4.223","lessThan":"5.4.231","status":"affected","versionType":"semver"},{"version":"5.10.153","lessThan":"5.10.166","status":"affected","versionType":"semver"},{"version":"5.15.77","lessThan":"5.15.91","status":"affected","versionType":"semver"},{"version":"6.0.7","lessThan":"6.1","status":"affected","versionType":"semver"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/net_namespace.c"],"versions":[{"version":"6.1","status":"affected"},{"version":"0","lessThan":"6.1","status":"unaffected","versionType":"semver"},{"version":"4.19.272","lessThanOrEqual":"4.19.*","status":"unaffected","versionType":"semver"},{"version":"5.4.231","lessThanOrEqual":"5.4.*","status":"unaffected","versionType":"semver"},{"version":"5.10.166","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.91","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.9","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.19.264","versionEndExcluding":"4.19.272"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.223","versionEndExcluding":"5.4.231"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.153","versionEndExcluding":"5.10.166"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15.77","versionEndExcluding":"5.15.91"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.1.9"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.0.7"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/ad0dfe9bcf0d78e699c7efb64c90ed062dc48bea"},{"url":"https://git.kernel.org/stable/c/ddd49cbbd4c1ceb38032018b589b44208e54f55e"},{"url":"https://git.kernel.org/stable/c/d4c008f3b7f7d4ffd311eb2dae5e75b3cbddacd0"},{"url":"https://git.kernel.org/stable/c/66689a72ba73575e76d4f6a8748d3fa2690ec1c4"},{"url":"https://git.kernel.org/stable/c/12075708f2e77ee6a9f8bb2cf512c38be3099794"},{"url":"https://git.kernel.org/stable/c/71ab9c3e2253619136c31c89dbb2c69305cc89b1"}],"title":"net: fix UaF in netns ops registration error path","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":7.8,"attackVector":"LOCAL","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","integrityImpact":"HIGH","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"id":"CVE-2023-52999","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2025-03-27T16:59:38.580749Z"}}}],"problemTypes":[{"descriptions":[{"lang":"en","type":"CWE","cweId":"CWE-416","description":"CWE-416 Use After Free"}]}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2025-03-27T17:08:22.062Z"}}]}}