CVE-2026-74671

ima: fix out-of-bounds read in xattr_verify()

N/A
Published: August 22, 2026 at 03:32 PM UTC
Updated: October 14, 2026 at 01:10 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
N/A
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: ima: fix out-of-bounds read in xattr_verify() The digest-length check in xattr_verify() mixes int and size_t: if (xattr_len - sizeof(xattr_value->type) - hash_start >= iint->ima_hash->length) sizeof() yields size_t, so the usual arithmetic conversions promote the whole left-hand side to unsigned 64-bit before the subtraction runs. For a truncated xattr this underflows instead of going negative: a 1-byte IMA_XATTR_DIGEST_NG xattr (xattr_len == 1, hash_start == 1) turns "1 - 1 - 1" into SIZE_MAX, which is trivially >= ima_hash->length. The check then passes and the following memcmp() reads iint->ima_hash->length bytes starting past the end of the buffer vfs_getxattr_alloc() allocated for it. Nothing upstream clamps xattr_len back into a safe range first: ima_get_hash_algo() only special-cases xattr_len < 2 to pick a default algorithm, and evm_verifyxattr() returns INTEGRITY_UNKNOWN rather than failing when no HMAC key is loaded, so a truncated security.ima value reaches the length check as-is. Rewrite the comparison so every operand stays a signed int and no implicit conversion to size_t can occur.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

3.133ea7a56067e663278470c04fd655adf809e72d4d
Vendor states this is fixed in 27f3924061592d0ef6b04e16f48754b6cb6adf27 (fixed)
Vendor states this is fixed in 5ff232d31106f45ac87c3b64e1d35a0667777797 (fixed)
Vendor states this is fixed in 7e515b6c9aab452a4f0734bd7208e4e780e164ca (fixed)
Vendor states this is fixed in a784b4732ac7e51862b9b210c2d8b2ab9e83568c (fixed)
Vendor states this is fixed in b6cb134707a2127d90a58d69dd818679cae8033c (fixed)
Vendor states this is fixed in caeb105c15ea2431fa8da7ecfa242d0c68272426 (fixed)
Vendor states this is fixed in d823b5f4557083d1dd92096f796a78a2b1b06d10 (fixed)
Vendor states this is fixed in dd04114af0d451091f7b8cbd26d9e37d011e9131 (fixed)
Vendor states this is fixed in 3.13 (unaffected)
Vendor states this is fixed in 5.10.265 (unaffected)
Vendor states this is fixed in 5.15.216 (unaffected)
Vendor states this is fixed in 6.1.183 (unaffected)
Vendor states this is fixed in 6.12.104 (unaffected)
Vendor states this is fixed in 6.18.45 (unaffected)
Vendor states this is fixed in 6.6.152 (unaffected)
Vendor states this is fixed in 7.1.9 (unaffected)
Vendor states this is fixed in 7.2 (unaffected)

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

Quick Info

StatusRECEIVED

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card