{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-89787 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-89787 is an use after free vulnerability in Linux, published on 16 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-89787 and fix it if it is affected.\n\nWhat it is: CVE-2026-89787 is an use after free vulnerability in Linux, published on 16 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-89787 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-89787/ (Markdown: https://insights.sbomify.com/CVE-2026-89787/index.md)","id":"CVE-2026-89787","markdown":"https://insights.sbomify.com/CVE-2026-89787/index.md","name":"CVE-2026-89787","record":{"aliases":["AZL-101439","BELL-CVE-2026-89787","DEBIAN-CVE-2026-89787","GHSA-cxfp-66mh-jhvv","UBUNTU-CVE-2026-89787"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["denial_of_service","data_read"],"network_reachable":"adjacent_or_local","non_default_config":true,"product_category":"Linux kernel","requires_auth":"low_privilege","summary":"A local attacker can trigger a use-after-free in the Linux kernel ext4 filesystem by crafting a directory entry, potentially causing a crash or leaking memory.","user_interaction":"not_required","vuln_class":"use_after_free"},"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\next4: check dir entry fits before reading the hash trailer in ext4_search_dir()\n\nFor casefolded encrypted directories ext4 stores an 8-byte hash trailer\nafter the name (EXT4_DIRENT_HASHES()), at an offset derived from\nde-\u003ename_len.  On the sb_no_casefold_compat_fallback() path ext4_match()\nreads that trailer, but ext4_search_dir()'s by-hand pre-check only tests\nde-\u003ename + de-\u003ename_len \u003c= dlimit, which proves the name fits, not the\nrounded trailer.  A crafted entry whose name ends at the block boundary\npasses the check while EXT4_DIRENT_HASHES(de) lands past the block end,\nso ext4_match() reads out of bounds on an ordinary lookup.  KASAN reports\nit as a use-after-free when the page after the directory block holds a\nfreed object:\n\n  BUG: KASAN: use-after-free in ext4_match (fs/ext4/namei.c:1435)\n  Read of size 4 at addr ffff888010458000 by task exploit\n  Call Trace:\n   ext4_match (fs/ext4/namei.c:1435)\n   ext4_search_dir (fs/ext4/namei.c:1470)\n   __ext4_find_entry (fs/ext4/namei.c:1268 fs/ext4/namei.c:1632)\n   ext4_lookup (fs/ext4/namei.c:1703 fs/ext4/namei.c:1769)\n   ...\n   filename_lookup (fs/namei.c:2842)\n   vfs_statx (fs/stat.c:353)\n   __do_sys_newfstatat (fs/stat.c:538)\n   do_syscall_64 (arch/x86/entry/syscall_64.c:94)\n   entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)\n\nRequire, for hash-in-dirent directories, that the whole entry including\nthe rounded trailer fits before calling ext4_match().  This is the same\nbound ext4_check_dir_entry() already enforces via ext4_dir_rec_len(), so\nno well-formed entry is rejected.  The other caller, ext4_find_dest_de(),\nruns ext4_check_dir_entry() first and is unaffected.","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":"ext4: check dir entry fits before reading the hash trailer in ext4_search_dir()","id":"CVE-2026-89787","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"use_after_free","year":"2026"},"n_packages":0,"n_references":7,"next":{"headline":"ksmbd: fix tree connection use-after-free in smb2_tree_connect()","id":"CVE-2026-89788"},"packages":[],"prev":{"headline":"ext4: fix out-of-bounds read in ext4_read_inline_dir()","id":"CVE-2026-89786"},"products":["Linux"],"published":"2026-09-16","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 trigger a use-after-free in the Linux kernel ext4 filesystem by crafting a directory entry, potentially causing a crash or leaking memory.","url":"https://insights.sbomify.com/CVE-2026-89787/"}