CVE-2025-71147CVE-2025-71147是Linux内核中的一个内存泄漏安全漏洞,位于KEYS trusted模块的tpm2_load_cmd函数中。该漏洞由安全研究人员发现并于2026年1月23日披露。漏洞源于tpm2_load_cmd函数通过tpm2_key_decode间接分配临时blob内存,但在多个失败路径中未正确释放已分配的内存资源。攻击者可通过本地低权限账户触发该漏洞,持续利用可导致系统内存资源耗尽,影响系统可用性。CVSS 3.1评分为5.5分,属于中等严重程度。该漏洞需要攻击者具备本地访问权限,且无需用户交互即可触发。修复方案采用cleanup helper机制包装blob对象,确保函数退出时自动释放内存资源。
漏洞位于Linux内核的security/keys/trusted-keys子系统中的tpm2_load_cmd函数。该函数负责从TPM(可信平台模块)加载密钥数据。在执行过程中,函数调用tpm2_key_decode解码密钥数据时,会分配临时的blob内存缓冲区。问题在于当函数执行过程中遇到错误条件(如解码失败、参数验证失败等)而进入失败路径时,已分配的blob内存未被正确释放,导致内存泄漏。攻击者可通过构造特定的密钥数据或触发异常条件,使函数进入失败路径,从而造成内存泄漏。长期利用此漏洞可导致系统内存逐渐耗尽,引发服务拒绝(Denial of Service)风险。修复措施使用Linux内核的__free(kfree)cleanup机制,将blob指针包装到cleanup属性中,确保函数无论正常返回还是异常退出都能自动调用kfree释放内存。