Description
In the Linux kernel, the following vulnerability has been resolved: tpm: Use kfree_sensitive() to free auth session in tpm_dev_release() tpm_dev_release() uses plain kfree() to free chip->auth, which contains sensitive cryptographic material including HMAC session keys, nonces, and passphrase data (struct tpm2_auth). Every other code path that frees this structure uses kfree_sensitive() to zero the memory before releasing it: both tpm2_end_auth_session() and tpm_buf_check_hmac_response() do so. The tpm_dev_release() path is the only one that does not, leaving key material in freed slab memory until it is eventually overwritten. Use kfree_sensitive() for consistency with the rest of the driver and to ensure session keys are scrubbed during device teardown.
Product status
699e3efd6c645c741ea4d6d58282c56b6d108cf7 (git) before dd3ac52ea7a001406c7dbc663aae4b9f89da679a
699e3efd6c645c741ea4d6d58282c56b6d108cf7 (git) before 53e6d2d834df40960b655b353e7a8ff4d927e1c7
699e3efd6c645c741ea4d6d58282c56b6d108cf7 (git) before 84ced03172da544c9f8c0862faad48104f519352
699e3efd6c645c741ea4d6d58282c56b6d108cf7 (git) before c424d2664f08c77f08b4580b5f0cbaabf7c229b2
6.10
Any version before 6.10
6.12.86 (semver)
6.18.27 (semver)
7.0.4 (semver)
7.1-rc1 (original_commit_for_fix)
References
git.kernel.org/...c/dd3ac52ea7a001406c7dbc663aae4b9f89da679a
git.kernel.org/...c/53e6d2d834df40960b655b353e7a8ff4d927e1c7
git.kernel.org/...c/84ced03172da544c9f8c0862faad48104f519352
git.kernel.org/...c/c424d2664f08c77f08b4580b5f0cbaabf7c229b2