Description
Rustls from 0.23.13 before 0.23.45 accepts TLS 1.3 handshake messages at the wrong encryption level when they follow a key-changing message in the same record, because Deframer::aligned does not enforce RFC 8446 record-boundary alignment. A peer or on-path attacker can pack a plaintext EncryptedExtensions with the ServerHello, which rustls accepts unencrypted.
Published: 2026-11-08
Score: 6.9 Medium
EPSS: n/a
KEV: No
Impact: TLS handshake encryption level bypass leading to potential data exposure
Action: Apply Patch
AI Analysis

Impact

Rustls incorrectly accepts TLS 1.3 handshake messages at an encryption level that violates RFC 8446 record‑boundary alignment when a key‑changing message is present in the same record. The library treats a plaintext EncryptedExtensions as encrypted, allowing an attacker to inject plaintext handshake data. This input‑validation flaw (CWE‑20) can expose handshake traffic and grant a malicious peer the ability to manipulate subsequent protocol steps.

Affected Systems

The vulnerability exists in Rustls library versions from 0.23.13 up to and including 0.23.44. It affects all applications that incorporate these Rustls crates, including web servers, clients, and any service that uses the Rustls TLS implementation.

Risk and Exploitability

The CVSS score of 6.9 categorizes this as medium severity. EPSS data is not available, and the issue is not listed in the CISA KEV catalog. Exploitation requires the attacker to interact with the TLS handshake, typically as a peer or on‑path entity. The attack vector is network‑based, and while it does not provide remote code execution, it enables the attacker to send crafted plaintext messages and potentially disclose sensitive handshake information.

Generated by OpenCVE AI on November 8, 2026 at 03:08 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Rustls to version 0.23.45 or newer in all dependent projects
  • Rebuild and deploy all binaries to ensure the updated Rustls crate is linked
  • Test TLS handshake behavior after the upgrade to confirm that EncryptedExtensions are no longer accepted as plaintext

Generated by OpenCVE AI on November 8, 2026 at 03:08 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 08 Nov 2026 01:45:00 +0000

Type Values Removed Values Added
Description Rustls from 0.23.13 before 0.23.45 accepts TLS 1.3 handshake messages at the wrong encryption level when they follow a key-changing message in the same record, because Deframer::aligned does not enforce RFC 8446 record-boundary alignment. A peer or on-path attacker can pack a plaintext EncryptedExtensions with the ServerHello, which rustls accepts unencrypted.
Title Rustls 0.23.13 before 0.23.45 TLS 1.3 Handshake Encryption Level Bypass
First Time appeared Rustls Project
Rustls Project rustls
Weaknesses CWE-20
CPEs cpe:2.3:a:rustls_project:rustls:*:*:*:*:*:*:*:*
Vendors & Products Rustls Project
Rustls Project rustls
References
Metrics cvssV3_1

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

cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Rustls Project Rustls
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-11-08T01:38:37.574Z

Reserved: 2026-11-06T01:02:39.794Z

Link: CVE-2026-123613

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-08T02:16:56.780

Modified: 2026-11-08T02:16:56.780

Link: CVE-2026-123613

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-08T05:00:17Z

Weaknesses
  • CWE-20

    Improper Input Validation