CVE-2022-49286 tpm: use try_get_ops() in tpm-space.c
A race condition in the Linux kernel TPM driver can cause a NULL pointer dereference, leading to a system crash.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-49286?
CVE-2022-49286 is a medium-severity vulnerability in Linux kernel, published on 26 Feb 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
tpm: use try_get_ops() in tpm-space.c
As part of the series conversion to remove nested TPM operations:
https://lore.kernel.org/all/[email protected]/
exposure of the chip->tpm_mutex was removed from much of the upper level code. In this conversion, tpm2_del_space() was missed. This didn't matter much because it's usually called closely after a converted operation, so there's only a very tiny race window where the chip can be removed before the space flushing is done which causes a NULL deref on the mutex. However, there are reports of this window being hit in practice, so fix this by converting tpm2_del_space() to use tpm_try_get_ops(), which performs all the teardown checks before acquring the mutex.
Weakness: CWE-476
Which versions are affected by CVE-2022-49286?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2022-49286?
Apply the vendor's patch.
Is CVE-2022-49286 being exploited?
There is no known exploitation of CVE-2022-49286 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as DEBIAN-CVE-2022-49286, GHSA-j8q3-52jg-4q93, UBUNTU-CVE-2022-49286.