CVE-2026-54891: CWE-924 Improper Enforcement of Message Integrity During Transmission in a Communication Channel in Erlang OTP
Improper Enforcement of Message Integrity During Transmission in a Communication Channel vulnerability in Erlang/OTP ssl (tls_gen_connection module) allows a network-positioned attacker to inject unauthenticated plaintext that the TLS client application later treats as authenticated server data. The function tls_gen_connection:handle_protocol_record/3 rejects APPLICATION_DATA records that arrive in pre-handshake states when the TLS endpoint acts as a server, but does not apply the same check when the endpoint acts as a client. A network-positioned attacker can send plaintext APPLICATION_DATA records to the client during the handshake. The records are buffered and, once the handshake completes successfully, delivered to the application as if they were authenticated post-handshake data. The attacker cannot observe the client's response or steer the connection, so the impact is limited to blind injection of unauthenticated bytes. The injection window is wider for TLS versions prior to TLS 1.3 than for TLS 1.3. This vulnerability is associated with program file lib/ssl/src/tls_gen_connection.erl. TLS 1.3 is affected starting with OTP 22.0, when TLS 1.3 support was added. This issue affects OTP from OTP R13B03 before OTP 27.3.4.14, from OTP 28.0 before OTP 28.5.0.3, and from OTP 29.0 before OTP 29.0.3, corresponding to ssl from 3.10.7 before 11.2.12.10, from 11.3 before 11.6.0.3, and from 11.7 before 11.7.3. Whether OTP before OTP R13B03, corresponding to ssl before 3.10.7, is affected is unknown.
AI Analysis
Technical Summary
This vulnerability arises from the tls_gen_connection:handle_protocol_record/3 function in Erlang/OTP's ssl module, which rejects APPLICATION_DATA records during pre-handshake states only when acting as a server, but not when acting as a client. Consequently, a network-positioned attacker can inject plaintext APPLICATION_DATA records during the handshake to the client, which are buffered and delivered post-handshake as if authenticated. The attacker cannot observe or influence the connection, so the impact is limited to blind injection of unauthenticated bytes. The issue affects OTP versions from R13B03 before 27.3.4.14, from 28.0 before 28.5.0.3, and from 29.0 before 29.0.3, corresponding to ssl versions from 3.10.7 before 11.2.12.10, from 11.3 before 11.6.0.3, and from 11.7 before 11.7.3. OTP versions before R13B03 are of unknown status. TLS 1.3 support starting with OTP 22.0 is also affected, but the injection window is narrower for TLS 1.3 than earlier TLS versions.
Potential Impact
An attacker positioned on the network can inject unauthenticated plaintext data into the TLS client during the handshake. This injected data is later processed by the client as if it were authenticated server data. However, the attacker cannot observe the client's responses or control the connection, limiting the impact to blind injection of data. This could potentially lead to application-level confusion or protocol desynchronization but does not allow direct data disclosure or connection hijacking.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch links are provided in the available data. Users should monitor Erlang/OTP vendor advisories for updates and apply official patches once available. Until then, be aware of the risk of unauthenticated data injection during TLS handshake in affected versions.
CVE-2026-54891: CWE-924 Improper Enforcement of Message Integrity During Transmission in a Communication Channel in Erlang OTP
Description
Improper Enforcement of Message Integrity During Transmission in a Communication Channel vulnerability in Erlang/OTP ssl (tls_gen_connection module) allows a network-positioned attacker to inject unauthenticated plaintext that the TLS client application later treats as authenticated server data. The function tls_gen_connection:handle_protocol_record/3 rejects APPLICATION_DATA records that arrive in pre-handshake states when the TLS endpoint acts as a server, but does not apply the same check when the endpoint acts as a client. A network-positioned attacker can send plaintext APPLICATION_DATA records to the client during the handshake. The records are buffered and, once the handshake completes successfully, delivered to the application as if they were authenticated post-handshake data. The attacker cannot observe the client's response or steer the connection, so the impact is limited to blind injection of unauthenticated bytes. The injection window is wider for TLS versions prior to TLS 1.3 than for TLS 1.3. This vulnerability is associated with program file lib/ssl/src/tls_gen_connection.erl. TLS 1.3 is affected starting with OTP 22.0, when TLS 1.3 support was added. This issue affects OTP from OTP R13B03 before OTP 27.3.4.14, from OTP 28.0 before OTP 28.5.0.3, and from OTP 29.0 before OTP 29.0.3, corresponding to ssl from 3.10.7 before 11.2.12.10, from 11.3 before 11.6.0.3, and from 11.7 before 11.7.3. Whether OTP before OTP R13B03, corresponding to ssl before 3.10.7, is affected is unknown.
CVSS v4.0
Score 6.3medium
Affected software
cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
This vulnerability arises from the tls_gen_connection:handle_protocol_record/3 function in Erlang/OTP's ssl module, which rejects APPLICATION_DATA records during pre-handshake states only when acting as a server, but not when acting as a client. Consequently, a network-positioned attacker can inject plaintext APPLICATION_DATA records during the handshake to the client, which are buffered and delivered post-handshake as if authenticated. The attacker cannot observe or influence the connection, so the impact is limited to blind injection of unauthenticated bytes. The issue affects OTP versions from R13B03 before 27.3.4.14, from 28.0 before 28.5.0.3, and from 29.0 before 29.0.3, corresponding to ssl versions from 3.10.7 before 11.2.12.10, from 11.3 before 11.6.0.3, and from 11.7 before 11.7.3. OTP versions before R13B03 are of unknown status. TLS 1.3 support starting with OTP 22.0 is also affected, but the injection window is narrower for TLS 1.3 than earlier TLS versions.
Potential Impact
An attacker positioned on the network can inject unauthenticated plaintext data into the TLS client during the handshake. This injected data is later processed by the client as if it were authenticated server data. However, the attacker cannot observe the client's responses or control the connection, limiting the impact to blind injection of data. This could potentially lead to application-level confusion or protocol desynchronization but does not allow direct data disclosure or connection hijacking.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch links are provided in the available data. Users should monitor Erlang/OTP vendor advisories for updates and apply official patches once available. Until then, be aware of the risk of unauthenticated data injection during TLS handshake in affected versions.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-06-16T10:47:13.915Z
- Cvss Version
- 4.0
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a46a8b827e9c79719cc4abc
Added to database: 07/02/2026, 18:06:48 UTC
Last enriched: 08/03/2026, 19:35:24 UTC
Last updated: 08/12/2026, 12:41:10 UTC
Views: 81
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.