CVE-2023-6937
Assigner: wolfSSL
Published: 2024-02-15T17:21:44.342Z
State: PUBLISHED
affected: defaultStatus: unaffected
modules: (D)TLS
product: wolfSSL
repo: https://github.com/wolfSSL/wolfssl
vendor: wolfSSL
versions: lessThanOrEqual: 5.6.4
status: affected
version: 0
versionType: release bundle
credits: type: finder
user: 00000000-0000-4000-9000-000000000000
value: Johannes Wilson from Sectra Communications and Linköping University
datePublic: 2023-12-20T00:00:00.000Z
descriptions: supportingMedia: base64: no
type: text/html
value: wolfSSL prior to 5.6.6 did not check that messages in one (D)TLS record do not span key boundaries. As a result, it was possible to combine (D)TLS messages using different keys into one (D)TLS record. The most extreme edge case is that, in (D)TLS 1.3, it was possible that an unencrypted (D)TLS 1.3 record from the server containing first a ServerHello message and then the rest of the first server flight would be accepted by a wolfSSL client. In (D)TLS 1.3 the handshake is encrypted after the ServerHello but a wolfSSL client would accept an unencrypted flight from the server. This does not compromise key negotiation and authentication so it is assigned a low severity rating.
value: wolfSSL prior to 5.6.6 did not check that messages in one (D)TLS record do not span key boundaries. As a result, it was possible to combine (D)TLS messages using different keys into one (D)TLS record. The most extreme edge case is that, in (D)TLS 1.3, it was possible that an unencrypted (D)TLS 1.3 record from the server containing first a ServerHello message and then the rest of the first server flight would be accepted by a wolfSSL client. In (D)TLS 1.3 the handshake is encrypted after the ServerHello but a wolfSSL client would accept an unencrypted flight from the server. This does not compromise key negotiation and authentication so it is assigned a low severity rating.
impacts: capecId: CAPEC-272
descriptions: value: CAPEC-272 Protocol Manipulation
metrics: cvssV3_1: attackComplexity: LOW
attackVector: NETWORK
availabilityImpact: NONE
baseScore: 5.3
baseSeverity: MEDIUM
confidentialityImpact: LOW
integrityImpact: NONE
privilegesRequired: NONE
scope: UNCHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
version: 3.1
format: CVSS
scenarios: value: GENERAL
problemTypes: descriptions: cweId: CWE-20
description: CWE-20 Improper Input Validation
type: CWE
solutions: supportingMedia: base64: no
type: text/html
value: <p><span style="background-color: transparent;">The fix for this issue is located in the following GitHub Pull Request: </span><a target="_blank" rel="nofollow" href="https://github.com/wolfSSL/wolfssl/pull/7029"><span style="background-color: transparent;">https://github.com/wolfSSL/wolfssl/pull/7029</span></a><span style="background-color: transparent;">.</span></p>
value: The fix for this issue is located in the following GitHub Pull Request:  https://github.com/wolfSSL/wolfssl/pull/7029 https://github.com/wolfSSL/wolfssl/pull/7029 .


source: discovery: EXTERNAL
title: Improper (D)TLS key boundary enforcement
x_generator: engine: Vulnogram 0.1.0-dev