从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:tpm: Clean up TPM space after command failure - 描述:tpm_dev_transmit 函数在准备 TPM 空间后,如果命令失败,没有进行回滚。这可能导致 transient handles 被泄露,如果设备在没有进一步命令的情况下被关闭。 2. 修复措施: - 修复方法:通过在命令传输失败的情况下清空 TPM 空间来解决这个问题。 - 修复代码:在 drivers/char/tpm/tpm-dev-common.c 和 drivers/char/tpm/tpm2-space.c 文件中进行了修改。 3. 修复历史: - 上游提交:e3aaebcbb7c6b403416f442d1de70d437ce313a7 - 修复提交:ebc4e1f4492d114f9693950621b3ea42b2f82bec 4. 修复者: - 作者:Jonathan McDowell - 提交者:Greg Kroah-Hartman - 审查者:Jarkko Sakkinen - 签署者:Sasha Levin 5. 代码变更: - 文件:drivers/char/tpm/tpm-dev-common.c 和 drivers/char/tpm/tpm2-space.c - 变更类型:添加了对 TPM 空间的清理代码。 6. 补丁状态: - 状态:已修复,修复了两个文件中的代码。 这些信息表明,这个漏洞是由于在 TPM 空间准备后,如果命令失败没有进行回滚导致的。修复措施是通过在命令传输失败的情况下清空 TPM 空间来解决这个问题。修复者已经对相关的代码进行了修改,并通过上游和下游的提交进行了确认。