In the Linux kernel, the following vulnerability has been resolved:
tpm: tpm2-sessions: wait for async KPP completion in tpmbufappend_salt
tpmbufappendsalt() in drivers/char/tpm/tpm2-sessions.c calls cryptokppgeneratepublickey() and cryptokppcomputesharedsecret() without installing a completion callback, discards both return values, and immediately frees the kpprequest via kpprequestfree(). When the resolved ecdh-nist-p256 KPP backend is asynchronous (atmel-ecc, HPRE, keembay-ocs), either operation returns -EINPROGRESS and the deferred completion worker dereferences the freed request.
The path fires automatically from the hwrngfillfn kernel thread via tpmgetrandom -> tpm2getrandom -> tpm2startauthsession -> tpmbufappend_salt on every entropy poll, without any userland action.
Install cryptoreqdone as the completion callback, wrap both KPP operations in cryptowaitreq(), and propagate errors to the caller. The wait is a no-op for synchronous backends.
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72151.json"
}