Impact
The OTP TLS/DTLS client (pre TLS-1.3) does not verify that the cipher suite selected by the server in ServerHello was among the suites offered in ClientHello. A man-in-the-middle attacker can exploit this by selecting an anonymous cipher suite (such as ECDH_anon) that the client never offered. Anonymous suites do not require the server to present a certificate, which completely bypasses the client's
verify_peer setting. The attacker establishes a fully authenticated-looking connection with the client without possessing any certificate
trusted by the client. All data sent over the connection is readable and modifiable by the attacker. This affects all TLS versions up to
1.2 and all DTLS versions. TLS-1.3 connections are not affected as they have a separate cipher suite validation check.
Affected/Unaffected Versions
A version larger than or equal to one of the listed patched versions is unaffected; otherwise, a version that satisfies an expression listed under affected versions is affected, and if it does not, it is unaffected.
The documentation of the OTP version scheme describes how versions should be compared. Note that versions used prior to OTP 17.0, when the new OTP version scheme was introduced, are never listed since it is not well defined how to compare those versions.
Workaround
Use only TLS-1.3
Credits
Thanks to Jonatan Männchen for responsible reporting this.
Impact
The OTP TLS/DTLS client (pre TLS-1.3) does not verify that the cipher suite selected by the server in ServerHello was among the suites offered in ClientHello. A man-in-the-middle attacker can exploit this by selecting an anonymous cipher suite (such as ECDH_anon) that the client never offered. Anonymous suites do not require the server to present a certificate, which completely bypasses the client's
verify_peer setting. The attacker establishes a fully authenticated-looking connection with the client without possessing any certificate
trusted by the client. All data sent over the connection is readable and modifiable by the attacker. This affects all TLS versions up to
1.2 and all DTLS versions. TLS-1.3 connections are not affected as they have a separate cipher suite validation check.
Affected/Unaffected Versions
A version larger than or equal to one of the listed patched versions is unaffected; otherwise, a version that satisfies an expression listed under affected versions is affected, and if it does not, it is unaffected.
The documentation of the OTP version scheme describes how versions should be compared. Note that versions used prior to OTP 17.0, when the new OTP version scheme was introduced, are never listed since it is not well defined how to compare those versions.
Workaround
Use only TLS-1.3
Credits
Thanks to Jonatan Männchen for responsible reporting this.