In the Linux kernel, the following vulnerability has been resolved:
tpm: Lock TPM chip in tpmpmsuspend() first
Setting TPMCHIPFLAGSUSPENDED in the end of tpmpmsuspend() can be racy according, as this leaves window for tpmhwrng_read() to be called while the operation is in progress. The recent bug report gives also evidence of this behaviour.
Aadress this by locking the TPM chip before checking any chip->flags both in tpmpmsuspend() and tpmhwrngread(). Move TPMCHIPFLAGSUSPENDED check inside tpmget_random() so that it will be always checked only when the lock is reserved.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/53xxx/CVE-2024-53085.json",
"cna_assigner": "Linux"
}