What’s Vulnerable › Vulnerabilities

CVE-2022-49286: tpm: use try_get_ops() in tpm-space.c

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/20190205224723.19671-1-jarkko.sakkinen@linux.intel.com/ 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.

Affected products

How to fix

Upgrade to a fixed version: Linux kernel 5.10.109, 5.15.32, 5.16.18, 5.4.188. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2022-49286 or the next vulnerability affects your stack