🇰🇷 한글 설명
Netty의 특정 버전에서 OpenSSL 클라이언트 경로를 사용할 때 TLS 호스트네임 검증이 비활성화되는 취약점이 발견되었습니다. 특정 조건(일반 X509TrustManager 사용 및 Java 25+ 환경에서 Unsafe 기반 래핑 불가)에서 호스트네임 검증이 수행되지 않아 중간자 공격(MITM)에 노출될 수 있습니다.
💡 쉬운 설명
인터넷 연결 시 상대방이 진짜인지 확인하는 과정 중 이름표를 확인하는 절차가 생략되는 문제입니다. 이로 인해 해커가 가짜 사이트로 연결을 가로채더라도 시스템이 이를 알아차리지 못할 수 있습니다.
🇺🇸 원문 (English)
Netty (io.netty:netty-handler) versions from 4.2.0.Final through 4.2.16.Final and versions through 4.1.136.Final disable TLS hostname verification on the SslProvider.OPENSSL client path when a plain (non-extended) X509TrustManager is used and Unsafe-based trust-manager wrapping is unavailable (Java 25+). In this configuration the OpenSSL client does not perform hostname verification, allowing a man-in-the-middle attacker to present a certificate issued for a different hostname that is accepted without validation. Fixed in 4.2.17.Final and 4.1.137.Final.
📍 영향받는 시스템
io.netty:netty-handler 4.2.0.Final ~ 4.2.16.Final 및 4.1.x 버전 중 4.1.136.Final 이하 버전
⚔️ 공격 벡터
중간자 공격(Man-in-the-Middle)을 통해 유효하지 않은 호스트네임의 인증서를 제시하여 통신 가로채기
🛡️ 대응 방법
Netty 라이브러리를 4.2.17.Final 또는 4.1.137.Final 이상의 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 결과에서 netty-handler의 버전이 4.2.17.Final 미만이거나 4.1.137.Final 미만인지 확인하십시오.
mvn dependency:tree | grep -E 'netty-handler:[0-9]\.'