CVE-2026-46096
MediumCVSS 5.5Exploitation Probability (EPSS)
Low risk2th percentile - higher than 2% of all known CVEs
Summary
In the Linux kernel, the tpm2_read_public() function is missing tpm_buf_destroy() calls on two exit paths, causing a page allocation leak. The issue occurs when name_size() returns an error (unrecognized hash algorithm) and on the success path.
Risk Assessment
Memory leak can lead to gradual exhaustion of system resources, potentially causing denial of service (DoS) under prolonged operation or heavy TPM function usage.
Recommendation
It is recommended to immediately update the Linux kernel to a version containing the fix (commit resolving the issue). If an update is not possible, apply the appropriate security patch from the distributor.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: tpm2-sessions: Fix missing tpm_buf_destroy() in tpm2_read_public() tpm2_read_public() calls tpm_buf_init() but fails to call tpm_buf_destroy() on two exit paths, leaking a page allocation: 1. When name_size() returns an error (unrecognized hash algorithm), the function returns directly without destroying the buffer. 2. On the success path, the buffer is never destroyed before returning. All other error paths in the function correctly call tpm_buf_destroy() before returning. Fix both by adding the missing tpm_buf_destroy() calls.

