{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-98065 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-98065 is a vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-98065 and fix it if it is affected.\n\nWhat it is: CVE-2026-98065 is a vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-98065 in the wild and no public exploit code.\n\nAffected product: Linux. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-98065/ (Markdown: https://insights.sbomify.com/CVE-2026-98065/index.md)","id":"CVE-2026-98065","markdown":"https://insights.sbomify.com/CVE-2026-98065/index.md","name":"CVE-2026-98065","record":{"aliases":["DEBIAN-CVE-2026-98065","GHSA-mhp6-ww8c-xw4f","UBUNTU-CVE-2026-98065"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Linux kernel","requires_auth":"low_privilege","summary":"A local attacker can cause a kernel crash by reading a key-less BPF hash map via bpffs, leading to a null pointer dereference.","user_interaction":"not_required","vuln_class":"null_dereference"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Reject key-less BTF for hash maps\n\nmap_check_btf() allows a key-less BTF (btf_key_type_id == 0) only for\nmaps that have a -\u003emap_check_btf callback, and leaves the actual\ndecision to that callback. Hash maps used to have no -\u003emap_check_btf,\nso a key-less BTF was rejected outright.\n\nThat changed when htab and rhtab gained a -\u003emap_check_btf to register a\ndtor - htab in commit 1df97a7453ee (\"bpf: Register dtor for freeing\nspecial fields\") and rhtab in commit 6905f8601298 (\"bpf: Allow special\nfields in resizable hashtab\"). Neither looks at the key, so a key-less\nhash map now passes map_check_btf() and gets created. Reading it back\nthrough bpffs feeds the key type_id 0 into btf_type_seq_show();\nbtf_type_by_id() returns the void type, kind_ops[BTF_KIND_UNKN] is NULL,\nand btf_type_show() dereferences it:\n\nRIP: 0010:btf_type_show+0x223/0x2e0 kernel/bpf/btf.c:8232\nRSP: 0018:ffffc9000399f868 EFLAGS: 00010206\nRAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000\nRDX: 0000000000000005 RSI: 0000000000000000 RDI: 0000000000000028\nRBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000\nR10: ffffc9000399f970 R11: 0000000000000001 R12: ffffffff9b96b140\nR13: ffffc9000399f8e0 R14: ffff88803d393c00 R15: 0000000000000003\nCS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\nCR2: 0000200000000000 CR3: 000000003d213000 CR4: 0000000000352ef0\nDR0: 0000000039ae8f55 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nCall Trace:\n \u003cTASK\u003e\n btf_type_seq_show_flags+0xca/0x120 kernel/bpf/btf.c:8250\n htab_map_seq_show_elem+0x12e/0x350 kernel/bpf/hashtab.c:1669\n map_seq_show+0x13d/0x1e0 kernel/bpf/inode.c:293\n traverse.part.0.constprop.0+0x107/0x650 fs/seq_file.c:112\n traverse fs/seq_file.c:99 [inline]\n seq_read_iter+0x93f/0x1270 fs/seq_file.c:196\n seq_read+0x344/0x4d0 fs/seq_file.c:163\n vfs_read+0x1e4/0xb40 fs/read_write.c:572\n ksys_pread64 fs/read_write.c:764 [inline]\n __do_sys_pread64 fs/read_write.c:772 [inline]\n __se_sys_pread64 fs/read_write.c:769 [inline]\n __x64_sys_pread64+0x1eb/0x250 fs/read_write.c:769\n do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]\n do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84\n entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\nReject a key-less BTF in htab_map_check_btf() and rhtab_map_check_btf(),\nrestoring the previous behavior.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"bpf: Reject key-less BTF for hash maps","id":"CVE-2026-98065","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"null_dereference","year":"2026"},"n_packages":0,"n_references":4,"next":{"headline":"ALSA: caiaq: Fix potential double-free at error path","id":"CVE-2026-98066"},"packages":[],"prev":{"headline":"bpf: Fix NULL-ptr-deref when showing a void BTF type","id":"CVE-2026-98064"},"products":["Linux"],"published":"2026-09-25","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-10-19","vendors":["Linux"]},"summary":"A local attacker can cause a kernel crash by reading a key-less BPF hash map via bpffs, leading to a null pointer dereference.","url":"https://insights.sbomify.com/CVE-2026-98065/"}