Skip to main content

CVE-2022-48997: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2022-48997cvecve-2022-48997
Published: Mon Oct 21 2024 (10/21/2024, 20:06:12 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: char: tpm: Protect tpm_pm_suspend with locks Currently tpm transactions are executed unconditionally in tpm_pm_suspend() function, which may lead to races with other tpm accessors in the system. Specifically, the hw_random tpm driver makes use of tpm_get_random(), and this function is called in a loop from a kthread, which means it's not frozen alongside userspace, and so can race with the work done during system suspend: tpm tpm0: tpm_transmit: tpm_recv: error -52 tpm tpm0: invalid TPM_STS.x 0xff, dumping stack for forensics CPU: 0 PID: 1 Comm: init Not tainted 6.1.0-rc5+ #135 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.0-20220807_005459-localhost 04/01/2014 Call Trace: tpm_tis_status.cold+0x19/0x20 tpm_transmit+0x13b/0x390 tpm_transmit_cmd+0x20/0x80 tpm1_pm_suspend+0xa6/0x110 tpm_pm_suspend+0x53/0x80 __pnp_bus_suspend+0x35/0xe0 __device_suspend+0x10f/0x350 Fix this by calling tpm_try_get_ops(), which itself is a wrapper around tpm_chip_start(), but takes the appropriate mutex. [Jason: reworked commit message, added metadata]

AI-Powered Analysis

AILast updated: 07/01/2025, 00:57:07 UTC

Technical Analysis

CVE-2022-48997 is a concurrency vulnerability in the Linux kernel's Trusted Platform Module (TPM) subsystem, specifically related to the tpm_pm_suspend() function. The TPM is a hardware component used for secure cryptographic operations and platform integrity measurements. The vulnerability arises because TPM transactions are executed unconditionally during system suspend without proper locking mechanisms, leading to race conditions with other TPM accessors. In particular, the hw_random TPM driver calls tpm_get_random() in a kernel thread loop that is not frozen during system suspend, causing concurrent TPM accesses. This race can result in TPM transaction errors, invalid TPM status codes, and kernel stack dumps, potentially destabilizing the system or causing denial of service. The root cause is the lack of mutex protection around TPM suspend operations, which was fixed by introducing a call to tpm_try_get_ops(), a wrapper around tpm_chip_start() that acquires the appropriate mutex to serialize TPM access during suspend. The vulnerability affects Linux kernel versions prior to the patch commit identified by the hash e891db1a18bf11e02533ec2386b796cfd8d60666. No known exploits are reported in the wild as of the publication date. This issue is primarily a kernel-level race condition that can lead to system instability or TPM malfunction during suspend/resume cycles, impacting systems relying on TPM for security functions.

Potential Impact

For European organizations, this vulnerability can affect any Linux-based systems utilizing TPM hardware, which is common in enterprise servers, workstations, and embedded devices. The TPM is critical for secure boot, disk encryption, and platform attestation; thus, instability or errors during suspend/resume cycles could lead to system crashes or failures in security-critical operations. This may disrupt business continuity, especially in environments with strict security compliance requirements such as finance, healthcare, and government sectors. Additionally, TPM malfunctions could undermine trust in platform integrity measurements, potentially affecting secure authentication and encryption workflows. Although no active exploits are known, the vulnerability could be leveraged in targeted attacks to cause denial of service or to interfere with TPM-dependent security mechanisms. Organizations with automated suspend/resume policies or those using TPM-backed random number generation might experience increased risk of system instability or degraded security assurance.

Mitigation Recommendations

Organizations should promptly apply Linux kernel updates that include the patch for CVE-2022-48997. Specifically, updating to kernel versions containing the commit e891db1a18bf11e02533ec2386b796cfd8d60666 or later will resolve the race condition by ensuring proper mutex locking during TPM suspend operations. For environments where immediate patching is not feasible, consider temporarily disabling system suspend or hibernation features to avoid triggering the race condition. Additionally, review and monitor kernel logs for TPM-related errors indicative of this race condition. For critical systems, implement rigorous testing of suspend/resume cycles post-patching to confirm stability. Security teams should also audit TPM usage patterns, especially those involving the hw_random driver, to ensure no unauthorized concurrent TPM accesses occur. Finally, maintain up-to-date inventory of Linux systems with TPM hardware to prioritize patch deployment and risk management.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-08-22T01:27:53.637Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d982fc4522896dcbe686a

Added to database: 5/21/2025, 9:09:03 AM

Last enriched: 7/1/2025, 12:57:07 AM

Last updated: 8/7/2025, 8:30:24 AM

Views: 16

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats