Description
In the Linux kernel, the following vulnerability has been resolved:

tpm: tpm2-sessions: wait for async KPP completion in tpm_buf_append_salt

tpm_buf_append_salt() in drivers/char/tpm/tpm2-sessions.c calls
crypto_kpp_generate_public_key() and crypto_kpp_compute_shared_secret()
without installing a completion callback, discards both return values,
and immediately frees the kpp_request via kpp_request_free(). 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 hwrng_fillfn kernel thread via
tpm_get_random -> tpm2_get_random -> tpm2_start_auth_session ->
tpm_buf_append_salt on every entropy poll, without any userland action.

Install crypto_req_done as the completion callback, wrap both KPP
operations in crypto_wait_req(), and propagate errors to the caller.
The wait is a no-op for synchronous backends.
Published: 2026-08-15
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A flaw in the Linux kernel’s TPM2 session code allows an asynchronous key‑pair‑generation request to be freed before the operation completes. The freed request is later accessed by a completion worker, which can corrupt kernel memory. This kind of kernel memory corruption may lead to a denial‑of‑service. The weakness is a classic use‑after‑free scenario, as the code discards the return value of the cryptographic request and does not set a completion callback.

Affected Systems

All Linux kernel builds that employ TPM2 session functionality are affected. The vulnerability exists at the driver level (drivers/char/tpm/tpm2‑sessions.c) and triggers automatically during entropy collection, so any system running a kernel with this code path is impacted, regardless of vendor.

Risk and Exploitability

The vulnerability is not listed in CISA’s KEV catalog, the EPSS score is <1%, and the CVSS score is 8.4. Nevertheless, the attack path is in kernel space and is triggered by normal kernel activity rather than a user‑initiated request, implying a low to moderate likelihood of accidental exploitation. Based on the description, the likely attack vector is inferred to be a kernel‑level exploitation that is automatically triggered during entropy collection, without userland input. Compromise of the system requires that the attacker can influence the kernel’s TPM subsystem, which is typically restricted to privileged code. The risk is therefore primarily of denial‑of‑service or crash. The kernel developers have addressed the issue by installing a proper completion callback and waiting for request completion before freeing the request object.

Generated by OpenCVE AI on August 22, 2026 at 09:10 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version containing the patch that installs crypto_req_done as the completion callback for TPM2 session requests.
  • Reboot the system after updating the kernel to ensure the new driver code is loaded and in use.
  • If TPM2 functionality is not required, disable or remove the TPM driver to eliminate the attack surface.

Generated by OpenCVE AI on August 22, 2026 at 09:10 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 19 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 21:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 17 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.4, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Sat, 15 Aug 2026 20:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Sat, 15 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: tpm: tpm2-sessions: wait for async KPP completion in tpm_buf_append_salt tpm_buf_append_salt() in drivers/char/tpm/tpm2-sessions.c calls crypto_kpp_generate_public_key() and crypto_kpp_compute_shared_secret() without installing a completion callback, discards both return values, and immediately frees the kpp_request via kpp_request_free(). 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 hwrng_fillfn kernel thread via tpm_get_random -> tpm2_get_random -> tpm2_start_auth_session -> tpm_buf_append_salt on every entropy poll, without any userland action. Install crypto_req_done as the completion callback, wrap both KPP operations in crypto_wait_req(), and propagate errors to the caller. The wait is a no-op for synchronous backends.
Title tpm: tpm2-sessions: wait for async KPP completion in tpm_buf_append_salt
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-17T05:41:00.459Z

Reserved: 2026-08-09T03:40:39.908Z

Link: CVE-2026-72151

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:21:32.823

Modified: 2026-08-17T06:18:15.263

Link: CVE-2026-72151

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-72151 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T09:15:04Z

Weaknesses