Read the docs
TI-2026-81557 Aliases GHSA-c8m5-c952-6cm4

Rustls session Debug formatting exposes TLS master secrets

Priority LOW 38CWE-212Published · Updated

Key facts

Attack vector
—
Privileges required
—
User interaction
—
Attack complexity
—
Impact type
—
Confidentiality · integrity · availability
—
Fix status
Fixed

No CVSS vector from any source. Fix status from GitHub.

Summary

The Rustls crate from 0 before 0.23.46 and from 0.24.0-dev.1 before 0.24.0-dev.2 exposes secrets through the Debug formatting of client session values. Formatting a Tls12ClientSessionValue or Tls13ClientSessionValue prints the TLS 1.2 master secret or the TLS 1.3 resumption PSK. A custom session store that logs these values can disclose keys to anyone who reads the logs, tracked as CWE-212.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

Description from the GitHub advisory

### Summary Formatting a client session value with Debug exposes its TLS 1.2 master secret or TLS 1.3 resumption PSK. A custom session store that logs these values can disclose keys to readers of the logs. Ordinary connection and built-in cache diagnostics remain redacted, and the session-store interface already warns that its values are sensitive. ### Details Derived formatters traverse the session's secret-bearing fields. This conflicts with the project's explicit [key-material redaction policy](https://github.com/rustls/rustls/blob/99f2358cae2954837dbb866faf6727de75489ab9/SECURITY.md#boundary-public-api). ### Proof of concept Custom `ClientSessionStore` implementations could leak secret data by using the provided `Tls12ClientSessionValue` or `Tls13ClientSessionValue` in a way that triggers its implementation of the `Debug` trait. ### Impact Such store implementations could leak the master secret for the TLS connection. ### Acknowledgement Thanks to OpenAI [[email protected]](mailto:[email protected]) for the disclosure.

Why it matters now

Fix Fixed rustls (crates.io): 0.23.46, 0.24.0-dev.2

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
—rustls (crates.io)before 0.23.460.23.46Patch availableGHSA-c8m5-c952-6cm4
—rustls (crates.io)0.24.0-dev.1 to before 0.24.0-dev.20.24.0-dev.2Patch availableGHSA-c8m5-c952-6cm4
  • rustls (crates.io) Vendor— Affected before 0.23.46 Fixed in 0.23.46 Patch available GHSA-c8m5-c952-6cm4
  • rustls (crates.io) Vendor— Affected 0.24.0-dev.1 to before 0.24.0-dev.2 Fixed in 0.24.0-dev.2 Patch available GHSA-c8m5-c952-6cm4

Remediation

Update rustls to 0.23.46 or 0.24.0-dev.2. The sources list no fixed version for rustls in other release lines.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

  • Fix · GHSA-c8m5-c952-6cm4 rustls (crates.io) Fixed in 0.23.46 Advisory →
  • Fix · GHSA-c8m5-c952-6cm4 rustls (crates.io) Fixed in 0.24.0-dev.2 Advisory →

Timeline

  1. 2026-10-27 Threatist record created from GHSA-c8m5-c952-6cm4

References

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences