tpm: use try_get_ops() in tpm-space.c
Published Feb 26, 2025
5.5
MEDIUMCVSS 3.1
EPSS 0.24%
Description
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
-
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version
-
- Version 4.12StatusaffectedConstraints-
- Version 0StatusunaffectedConstraints<4.12
- Version 5.10.109StatusunaffectedConstraints<=5.10.*
- Version 5.15.32StatusunaffectedConstraints<=5.15.*
- Version 5.16.18StatusunaffectedConstraints<=5.16.*
- Version 5.17.1StatusunaffectedConstraints<=5.17.*
- Version 5.18StatusunaffectedConstraints<=*
- Version 5.4.188StatusunaffectedConstraints<=5.4.*
- Version
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux | unaffected |
| |||||||||||||||||||||||||||
| Linux | Linux | affected |
|
- ≥ 4.12 · < 5.4.188
- ≥ 5.5 · < 5.10.109
- ≥ 5.11 · < 5.15.32
- ≥ 5.16 · < 5.16.18
- 5.17
No data.
Red Hat Enterprise Linux 10
kernel
Not affected
Red Hat Enterprise Linux 6
kernel
Not affected
Red Hat Enterprise Linux 7
kernel
Out of support scope
Red Hat Enterprise Linux 7
kernel-rt
Out of support scope
Red Hat Enterprise Linux 8
kernel
Out of support scope
Red Hat Enterprise Linux 8
kernel-rt
Out of support scope
Red Hat Enterprise Linux 9
kernel
Affected
Red Hat Enterprise Linux 9
kernel-rt
Affected
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Enterprise Linux 10 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 6 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 7 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 7 | kernel-rt | Out of support scope | n/a |
| Red Hat Enterprise Linux 8 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 8 | kernel-rt | Out of support scope | n/a |
| Red Hat Enterprise Linux 9 | kernel | Affected | n/a |
| Red Hat Enterprise Linux 9 | kernel-rt | Affected | n/a |
No package ranges for this CVE.
Remediation
No remediation recorded yet.
References (11)
- https://access.redhat.com/security/cve/CVE-2022-49286 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2347958 Issue Tracking
- https://git.kernel.org/stable/c/476ddd23f818fb94cf86fb5617f3bb9a7c92113d Patch
- https://git.kernel.org/stable/c/5b1d2561a03e534064b51c50c774657833d3d2cf Patch
- https://git.kernel.org/stable/c/95193d12f10a8a088843b25e0f5fe1d83ec6b079 Patch
- https://git.kernel.org/stable/c/ba84f9a48366dcc3cdef978599433efe101dd5bd Patch
- https://git.kernel.org/stable/c/eda1662cce964c8a65bb86321f8d9cfa6e9ceaab Patch
- https://git.kernel.org/stable/c/fb5abce6b2bb5cb3d628aaa63fa821da8c4600f9 Patch
- https://lore.kernel.org/linux-cve-announce/2025022632-CVE-2022-49286-a585@gregkh/T
- https://nvd.nist.gov/vuln/detail/CVE-2022-49286
- https://www.cve.org/CVERecord?id=CVE-2022-49286
Change history (0)
No recorded changes yet.