🇰🇷 한글 설명
Erlang/OTP의 ssl 애플리케이션에서 발생하는 부적절한 인증서 검증 취약점입니다. 클라이언트가 특정 SNI 가상 호스트에서 신뢰받은 인증서를 보유한 경우, TLS 1.2 세션 재개를 통해 동일 리스너 내의 다른 SNI 가상 호스트로 인증을 우회하여 접속할 수 있습니다.
💡 쉬운 설명
인터넷 서버가 여러 웹사이트를 운영할 때, 한 사이트에서 통과한 인증 정보를 이용해 다른 사이트까지 허가 없이 들어갈 수 있는 보안 결함입니다. 이는 서버가 세션을 다시 연결할 때 사용자의 인증서를 제대로 다시 확인하지 않기 때문에 발생합니다.
🇺🇸 원문 (English)
Improper Certificate Validation vulnerability in the ssl application in Erlang/OTP allows a client that holds a certificate trusted by one SNI virtual host to authenticate to a second SNI virtual host on the same listener by resuming its TLS 1.2 session there.
A server that serves several SNI names from one listen socket through sni_fun or sni_hosts keeps one pre-TLS 1.3 session cache per listener and does not bind a cached session to the SNI name or client trust policy that established it. When an SNI option set switches to verify_peer without naming reuse_sessions, ssl_config:update_options/3 inherits the base listener's reuse_sessions value of true, so the default that disables reuse for client-authenticating servers does not apply. On an abbreviated handshake ssl_session:is_resumable/4 checks only that the cached session uses one of the current server certificates and carries some peer certificate, and never revalidates that certificate against the CA selected for the requested name. The names must share a server certificate, which is common with wildcard or multi-SAN certificates. TLS 1.3 does not use this cache and is not affected.
This issue affects OTP from OTP 18.0 before OTP 27.3.4.19, OTP 28.5.0.8, and OTP 29.1.2, corresponding to ssl from 7.0 before 11.2.12.14, 11.6.0.7, and 11.7.8.
📍 영향받는 시스템
OTP 18.0 ~ 27.3.4.19, 28.5.0.8, 29.1.2 미만 버전 및 ssl 7.0 ~ 11.2.12.14, 11.6.0.7, 11.7.8 미만 버전
⚔️ 공격 벡터
TLS 1.2 세션 재개(Session Resumption) 기능을 악용하여 인증서 검증을 우회하는 방식
🛡️ 대응 방법
Erlang/OTP를 최신 보안 패치 버전(OTP 27.3.4.19, 28.5.0.8, 29.1.2 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 OTP 버전 숫자가 취약점이 해결된 버전(27.3.4.19, 28.5.0.8, 29.1.2 이상)인지 확인하십시오.
erl -eval 'io:format("~s~n", [erlang:system_info(otp_release)]), halt().' -noshell
💻 영향받는 소프트웨어
IBM WebSphere Application Server