🔍 CVE-2026-55953

7.4
CVSS Score
HIGH
2026-07-27
2026-10-24 13:10
✅ 완료

🇰🇷 한글 설명

Erlang/OTP의 ssl 모듈에서 TLS 1.2 및 이전 버전의 DTLS 클라이언트가 서버가 선택한 암호화 스위트가 클라이언트가 제안한 목록에 포함되어 있는지 확인하지 않는 취약점입니다. 공격자가 중간자 공격(MitM)을 통해 클라이언트가 요청하지 않은 익명 키 교환 스위트를 강제로 선택하게 함으로써 인증서 검증을 우회하고 통신 내용을 탈취할 수 있습니다.

💡 쉬운 설명

인터넷 연결 시 보안 규칙을 확인하는 과정에서 실수가 발생하여, 가짜 서버가 보낸 잘못된 보안 설정을 그대로 받아들이는 문제입니다. 이로 인해 해커가 중간에서 사용자의 통신 내용을 몰래 훔쳐보거나 조작할 수 있습니다.

🇺🇸 원문 (English)

The Erlang/OTP ssl TLS 1.2 (and earlier) and DTLS client does not verify that the cipher suite selected by the server in ServerHello was among the suites offered by the client in ClientHello. The client-side tls_handshake:hello/5 handler validates the negotiated protocol version and the downgrade sentinel but hands the server-chosen suite directly to ssl_handshake:handle_server_hello_extensions/9, which installs it without a membership check. The TLS 1.3 client path performs this check (per RFC 8446), so it is not affected. An on-path attacker between the client and the intended server can respond with a ServerHello selecting an anonymous key exchange suite such as TLS_DH_anon_* or TLS_ECDH_anon_* that the client never offered. Anonymous suites do not require the server to present a certificate, so the entire verify_peer and cacerts configuration is bypassed: the attacker completes the handshake with its own ephemeral parameters, no certificate is validated, no hostname is checked, and ssl:connect returns {ok, Socket}. All subsequent application traffic is readable and modifiable by the attacker. This issue affects OTP from OTP 17.0 before OTP 27.3.4.15, from OTP 28.0 before OTP 28.5.0.4, and from OTP 29.0 before OTP 29.0.4, corresponding to ssl from 5.3.4 before 11.2.12.11, from 11.3 before 11.6.0.4, and from 11.7 before 11.7.4. Whether OTP before OTP 17.0, corresponding to ssl before 5.3.4, is affected is unknown.

📍 영향받는 시스템

OTP 17.0~27.3.4.14, 28.0~28.5.0.3, 29.0~29.0.3 및 이에 대응하는 ssl 버전들

⚔️ 공격 벡터

클라이언트와 서버 사이의 중간자 공격(On-path attacker)을 통한 익명 암호화 스위트 강제 선택

🛡️ 대응 방법

Erlang/OTP를 최신 보안 패치가 적용된 버전(OTP 27.3.4.15, 28.5.0.4, 29.0.4 이상)으로 업데이트하십시오.

🔧 검증 코드

출력된 ssl 모듈의 버전이 취약점이 해결된 패치 버전보다 낮은지 확인하십시오.

Shell / Script
erl -eval 'io:format("~s~n", [application:get_version(ssl)]), halt().' -noshell

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

💻 영향받는 소프트웨어

IBM WebSphere Application Server