{"id":"CVE-2026-72322","revision":null,"records":[{"revision":"46b5821f16d248b38496007647041635","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-72322","aliases":[],"title":"ipv6: mcast: Fix potential UAF in MLD delayed work","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: mcast: Fix potential UAF in MLD delayed work\n\nA race condition exists between device teardown and incoming MLD query\nprocessing, leading to a Use-After-Free in the MLD delayed work.\n\nDuring device destruction, the primary reference to inet6_dev is dropped,\nwhich can drop its refcount to 0. The actual freeing of inet6_dev memory\nis deferred via RCU.\n\nConcurrently, the packet receive path runs under RCU read lock and obtains\nthe inet6_dev pointer. Because the memory is RCU-protected, CPU-0 can\nsafely dereference inet6_dev even if its refcount has hit 0.\n\nHowever, if CPU-0 calls igmp6_event_query() and schedules delayed work, it\nattempts to acquire a reference using in6_dev_hold(). This increments the\nrefcount from 0 to 1, triggering a \"refcount_t: addition on 0\" warning.\nSince the inet6_dev memory is still scheduled to be freed after the RCU\ngrace period, the device is freed while the work is still scheduled.\nWhen the work runs, it accesses the freed memory, causing a kernel panic.\n\nFix this by using refcount_inc_not_zero() (via a new helper\nin6_dev_hold_safe()) to prevent acquiring a reference if the device is\nalready being destroyed. If the refcount is 0, we do not schedule the work.","state":0,"publishedAt":"2026-08-15T05:55:34.171+00:00","modifiedAt":"2026-10-16T18:55:17.786+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"include/net/addrconf.h\",\n                        \"net/ipv6/mcast.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"f12b63ef26a035c5a29b3ef56401e38199010d4a\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"0401d6cf7877c9be36652385dfcbf7f891b8b590\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"f03b0a45535d49bdab7e502efaacee205b2a7865\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"9815e834f5ff8b39e0ea9f0dbd532f4a3b8f0785\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"ebbebf6cee950d7f1c81990256c0eae9e62572ae\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"9ce741c22df4fd9546e30306317ac7df3607e48f\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"0458ba1cda830ba4ccfcd9e19c0891438bcdbe4e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"1da177e4c3f41524e886b7f1b8a0c1fc7321cac2\",\n                            \"lessThan\": \"9b26518b6896a16b809b1e42986f4ebac7bccc1e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"include/net/addrconf.h\",\n                        \"net/ipv6/mcast.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"2.6.12\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"2.6.12\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.261\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.212\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.178\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.145\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.97\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.40\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1.5\",\n                            \"lessThanOrEqual\": \"7.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":9.8,"severity":"CRITICAL"}],"references":["https://git.kernel.org/stable/c/f12b63ef26a035c5a29b3ef56401e38199010d4a","https://git.kernel.org/stable/c/0401d6cf7877c9be36652385dfcbf7f891b8b590","https://git.kernel.org/stable/c/f03b0a45535d49bdab7e502efaacee205b2a7865","https://git.kernel.org/stable/c/9815e834f5ff8b39e0ea9f0dbd532f4a3b8f0785","https://git.kernel.org/stable/c/ebbebf6cee950d7f1c81990256c0eae9e62572ae","https://git.kernel.org/stable/c/9ce741c22df4fd9546e30306317ac7df3607e48f","https://git.kernel.org/stable/c/0458ba1cda830ba4ccfcd9e19c0891438bcdbe4e","https://git.kernel.org/stable/c/9b26518b6896a16b809b1e42986f4ebac7bccc1e"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-72322","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-72322","identifiers":["CVE-2026-72322"]},"retained":false,"historicalAffected":[]}],"coverage":[{"source":"cisa-kev:global","scope":"Complete CISA KEV catalog; all vendors. Missing entries do not establish absence of exploitation.","generation":"2026-11-09T09:04:02.9162191+00:00","complete":true,"records":1769,"lastAttemptAt":"2026-11-09T09:04:02.9162191+00:00","lastSuccessAt":"2026-11-09T09:04:03.0760313+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:04:03.0760345+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"cve-program","scope":"Official CVE Program baseline and cumulative hourly delta; all vendors, published and rejected records","generation":"cve-24e6fde7b744113daefb8f6135035fb8a5c69c9617c9c0d40574a0376532ffd3-0ea295a9c399a04b3ab57ccec2161d0d1cc039ee9ab5c4d8b6299048bd56b277","complete":true,"records":421333,"lastAttemptAt":"2026-11-09T09:02:14.7013141+00:00","lastSuccessAt":"2026-11-09T09:02:14.6291653+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:02:14.7013141+00:00","snapshotPublishedAt":"2026-11-09T08:31:17+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"euvd","scope":"Rolling EUVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global EUVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-f975b42a7c2d46f6899c3d764d777217","complete":false,"records":13654,"lastAttemptAt":"2026-11-09T09:16:12.2541949+00:00","lastSuccessAt":"2026-11-09T09:16:12.249+00:00","error":"7 identifier lookups failed; latest failures include HTTP 403. Other identifiers were checked independently.","lastVerifiedAt":"2026-11-09T09:16:12.249+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13699,"expectedIdentifiers":13706,"failedIdentifiers":7},{"source":"first-epss:nuget","scope":"FIRST EPSS for explicit CVE aliases in the collected public NuGet archive. Not a global EPSS backfill.","generation":"2026-11-09T09:04:02.9162191+00:00","complete":true,"records":1096,"lastAttemptAt":"2026-11-09T09:04:02.9162191+00:00","lastSuccessAt":"2026-11-09T09:04:03.197028+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:04:03.1970284+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"nvd","scope":"Rolling NVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global NVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-156d67f0b09643159ff4bd684ee896db","complete":true,"records":13666,"lastAttemptAt":"2026-11-09T09:04:03.6692263+00:00","lastSuccessAt":"2026-11-09T07:04:26.209+00:00","error":null,"lastVerifiedAt":"2026-11-09T07:04:26.209+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13706,"expectedIdentifiers":13706,"failedIdentifiers":0},{"source":"osv:Go","scope":"Complete OSV Go ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"go-980593e6977a6d1b4fb1eed5a1ffe88a468736f89f0a06f710924ad59132c023","complete":true,"records":9914,"lastAttemptAt":"2026-11-09T09:04:02.7750454+00:00","lastSuccessAt":"2026-11-08T11:07:07.068788+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:04:02.7750454+00:00","snapshotPublishedAt":"2026-11-08T11:02:46+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:NuGet","scope":"Complete OSV NuGet ecosystem archive, including GitHub Advisory Database records; NuGet version matching only","generation":"nuget-fde804134ecdda0ddd5ff5c26ee1fff5a6fa659311f7ef2e51c6ad54964db0e2","complete":true,"records":1971,"lastAttemptAt":"2026-11-09T09:02:14.7586225+00:00","lastSuccessAt":"2026-11-06T19:03:17.0399903+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:02:14.7586225+00:00","snapshotPublishedAt":"2026-11-06T18:17:57+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:crates.io","scope":"Complete OSV crates.io ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"crates.io-f6d341f4320a5a0c059c28102ee651c3dd06abc87b84d2bafa4e2a823ec07d35","complete":true,"records":3056,"lastAttemptAt":"2026-11-09T09:04:02.8843128+00:00","lastSuccessAt":"2026-11-09T05:02:23.1539412+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:04:02.8843128+00:00","snapshotPublishedAt":"2026-11-09T04:47:48+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:npm","scope":"Complete OSV npm ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"npm-d0592215f99679f1cc533698c7c7cf50c306057d38021110cecb15015dc78137","complete":true,"records":231297,"lastAttemptAt":"2026-11-09T09:04:02.4970329+00:00","lastSuccessAt":"2026-11-09T09:04:00.7848047+00:00","error":null,"lastVerifiedAt":"2026-11-09T09:04:02.4970329+00:00","snapshotPublishedAt":"2026-11-09T08:33:22+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null}]}