CVE-2022-49286
N/A
Summary
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 Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < 5b1d2561a03e534064b51c50c774657833d3d2cf | affected |
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < 95193d12f10a8a088843b25e0f5fe1d83ec6b079 | affected |
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < 476ddd23f818fb94cf86fb5617f3bb9a7c92113d | affected |
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < eda1662cce964c8a65bb86321f8d9cfa6e9ceaab | affected |
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < ba84f9a48366dcc3cdef978599433efe101dd5bd | affected |
| Linux | Linux | 745b361e989af21ad40811c2586b60229f870a68 < fb5abce6b2bb5cb3d628aaa63fa821da8c4600f9 | affected |
| Linux | Linux | 4.12 | affected |
| Linux | Linux | 0 < 4.12 | unaffected |
| Linux | Linux | 5.4.188 <= 5.4.* | unaffected |
| Linux | Linux | 5.10.109 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.32 <= 5.15.* | unaffected |
| Linux | Linux | 5.16.18 <= 5.16.* | unaffected |
| Linux | Linux | 5.17.1 <= 5.17.* | unaffected |
| Linux | Linux | 5.18 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/5b1d2561a03e534064b51c50c774657833d3d2cf
- https://git.kernel.org/stable/c/95193d12f10a8a088843b25e0f5fe1d83ec6b079
- https://git.kernel.org/stable/c/476ddd23f818fb94cf86fb5617f3bb9a7c92113d
- https://git.kernel.org/stable/c/eda1662cce964c8a65bb86321f8d9cfa6e9ceaab
- https://git.kernel.org/stable/c/ba84f9a48366dcc3cdef978599433efe101dd5bd
- https://git.kernel.org/stable/c/fb5abce6b2bb5cb3d628aaa63fa821da8c4600f9
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.