CVE-2026-80882 in Linux
Summary
by MITRE • 09/04/2026
In the Linux kernel, the following vulnerability has been resolved:
crypto: tegra - Return ENOMEM when input buffer allocation fails for ccm
Ensure the ENOMEM error value is set when the input buffer allocation fails in tegra_ccm_do_one_req.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Analysis
by VulDB Data Team • 09/04/2026
The identified issue resides within the Tegra cryptographic subsystem of the Linux kernel, specifically affecting the implementation of the Counter with CBC-MAC (CCM) mode for authenticated encryption. The vulnerability arises from an improper error handling mechanism during memory allocation operations in the tegra_ccm_do_one_req function. When the system attempts to allocate a buffer required for processing input data, it relies on standard kernel memory allocation routines that may fail under conditions of high memory pressure or resource exhaustion. In such scenarios, if the allocation fails, the code path does not correctly propagate the ENOMEM error code back to the caller. Instead, the function likely proceeds with an invalid or null pointer, leading to undefined behavior within the cryptographic processing pipeline.
This flaw represents a classic instance of improper input validation and error handling in low-level system software. From a classification perspective, this aligns with CWE-754, which describes improper check for unusual or exceptional conditions, specifically where the failure condition is not handled correctly. Furthermore, it relates to CWE-252, as unchecked return values can lead to subsequent failures that are difficult to diagnose and may cause system instability. The lack of explicit error propagation means that higher-level cryptographic APIs or user-space applications invoking these kernel services will not receive a clear indication of resource exhaustion. This ambiguity complicates debugging efforts for developers who rely on standard errno codes to determine the root cause of operation failures, potentially leading them to investigate incorrect areas such as data integrity issues rather than system resources.
The operational impact of this vulnerability is primarily centered around reliability and stability rather than direct security exploitation like remote code execution or privilege escalation. However, in a production environment where cryptographic operations are frequent, repeated memory allocation failures could lead to inconsistent behavior within the kernel's crypto framework. If the function proceeds with an uninitialized pointer due to the missing ENOMEM check, it may result in a kernel panic, data corruption of sensitive cryptographic material being processed, or silent failure where encryption or decryption appears successful but produces incorrect ciphertext or authentication tags. Such outcomes compromise the confidentiality and integrity guarantees that CCM mode is designed to provide. In high-security contexts, this could inadvertently weaken the overall security posture by allowing operations to complete with corrupted state without raising appropriate alarms.
Mitigation strategies for this vulnerability involve both immediate patching and long-term defensive coding practices. The primary remediation is applying the kernel update provided by the distribution vendor that includes the fix ensuring tegra_ccm_do_one_req correctly returns ENOMEM upon allocation failure. This ensures that calling functions can properly handle resource exhaustion scenarios, allowing them to retry operations later or gracefully fail with a meaningful error code. Additionally, developers should enforce strict checks on all memory allocations in kernel space using helper macros like kzalloc or kmalloc followed by explicit NULL checks before dereferencing pointers. Adhering to these practices aligns with secure coding standards such as CERT C Secure Coding Standard and helps prevent similar issues across other subsystems within the Linux kernel architecture.