{"id":"CVE-2026-99220","revision":"1cea6257482241c2999ee992395d8412","records":[{"revision":"1cea6257482241c2999ee992395d8412","observedAt":"2026-11-03T21:57:16.832+00:00","statement":{"source":"cve-program","id":"CVE-2026-99220","aliases":[],"title":"asymmetric_keys: reject trust keys without IDs","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nasymmetric_keys: reject trust keys without IDs\n\nThe PKCS#8 parser deliberately leaves the asym_key_ids payload slot\nempty. key_or_keyring_common() unconditionally dereferences that slot\nwhen a PKCS#8 key is supplied to a key_or_keyring restriction. Both the\nplain and :chain forms reach this branch, allowing an unprivileged caller\nto trigger a NULL pointer dereference through KEYCTL_RESTRICT_KEYRING\nfollowed by add_key().\n\n Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000\n KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]\n RIP: 0010:key_or_keyring_common (crypto/asymmetric_keys/restrict.c:205 crypto/asymmetric_keys/restrict.c:279)\n Call Trace:\n  <TASK>\n  __key_create_or_update (security/keys/key.c:884)\n  key_create_or_update (security/keys/key.c:1021)\n  __do_sys_add_key (security/keys/keyctl.c:134)\n  do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83)\n  entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130)\n  </TASK>\n Kernel panic - not syncing: Fatal exception\n\nReject an asymmetric restriction key without key IDs. A PKCS#8 private\nkey cannot identify the signer of a candidate certificate and is not a\nvalid trust anchor.","state":0,"publishedAt":"2026-11-02T16:06:31.966+00:00","modifiedAt":"2026-11-03T19:12:54.971+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                        \"crypto/asymmetric_keys/restrict.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"889a2293a95f6c2880bf73b67f9b0af23251a128\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"7f0728ba89624e25df2bb80ff59bbfb545060935\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"2a40bdd4409567de4c2a141ac66439dc238af752\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"1aa0c7aa4c2554a5b6d74ae1924508ca4718234b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"33a078f04e264eb71aa9f209cb334e4010123818\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"57e54b6939c6539d90a81c7e57531901d5991651\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"3c58b2362ba828ee2970c66c6a6fd7b04fde4413\",\n                            \"lessThan\": \"9695df3b1db4ac4534274d38ee16e3b9b0bf910e\",\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                        \"crypto/asymmetric_keys/restrict.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"4.20\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"4.20\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.191\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.161\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.115\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.60\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.14\",\n                            \"lessThanOrEqual\": \"7.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.3.1\",\n                            \"lessThanOrEqual\": \"7.3.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.4-rc1\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/889a2293a95f6c2880bf73b67f9b0af23251a128","https://git.kernel.org/stable/c/7f0728ba89624e25df2bb80ff59bbfb545060935","https://git.kernel.org/stable/c/2a40bdd4409567de4c2a141ac66439dc238af752","https://git.kernel.org/stable/c/1aa0c7aa4c2554a5b6d74ae1924508ca4718234b","https://git.kernel.org/stable/c/33a078f04e264eb71aa9f209cb334e4010123818","https://git.kernel.org/stable/c/57e54b6939c6539d90a81c7e57531901d5991651","https://git.kernel.org/stable/c/9695df3b1db4ac4534274d38ee16e3b9b0bf910e"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-99220","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-99220","identifiers":["CVE-2026-99220"]},"retained":false,"historicalAffected":[]}],"coverage":[]}