Skip to main content
← All vulnerabilities
CVE-2026-89989

ima: Check for ERR_PTR from dentry_path() in validate_hash_algo()

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.15.221, 6.1.188, 6.6.157, 6.12.110, 6.18.51, and 1 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: ima: Check for ERR_PTR from dentry_path() in validate_hash_algo() dentry_path() returns ERR_PTR(-ENAMETOOLONG) when the path exceeds the buffer. validate_hash_algo() passes the result straight to integrity_audit_msg() without checking. ERR_PTR is not NULL, so integrity_audit_message() sees a valid pointer and calls strlen() on it, which faults: BUG: unable to handle page fault for address: ffffffffffffffdc RIP: 0010:strlen+0x30/0xa0 Call Trace: audit_log_untrustedstring+0x19/0x30 integrity_audit_message+0x366/0x4f0 ima_inode_setxattr+0x512/0x5f0 Check for IS_ERR() and use NULL instead, which makes the audit message skip the name= field instead of crashing.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in d6fade89903c8fd0af6c956242aec8b927040e02; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in 0de5b525c0cd7d202848b8adfde3c01c287fb1a6; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in 30b5c0e17dcad72b6b2f987319aa645570e6376d; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in 9e69d683ebd7def04557fe758ff123105d7d9840; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in f8a2f2a4602318eb93d49d27fd0d0fdaab17edde; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in d62a84a78de5f29c642fa3bd4eee072ba7289cb4; From 4f2946aa0c45c78b4f4ef101bab9694e38c68db0 · fixed in 8861f6d5c0678a7c5089c7b272509fc5931b8437

  • Linux Linux

    5.15

  • KernelLinux

    From 5.15.0 · fixed in 5.15.221; From 5.16.0 · fixed in 6.1.188; From 6.2.0 · fixed in 6.6.157; From 6.7.0 · fixed in 6.12.110; From 6.13.0 · fixed in 6.18.51; From 6.19.0 · fixed in 7.2.5

References 7

git.kernel.org