🇰🇷 한글 설명
Apache Tomcat에서 SNI 확장 정보와 HTTP Host 헤더 간의 호스트 이름 일치 여부를 검증하지 않아 발생하는 입력값 검증 미흡 취약점입니다. 다중 가상 호스트 환경에서 클라이언트 인증이 필요한 호스트와 그렇지 않은 호스트가 혼재할 경우, 인증을 우회할 수 있습니다. 이 취약점은 클라이언트 인증이 커넥터 수준에서만 강제될 때 발생합니다.
💡 쉬운 설명
서버에 접속할 때 사용하는 이름과 실제 요청하는 이름을 다르게 보내서 보안 인증 과정을 몰래 통과하는 공격입니다. 인증서가 필요한 페이지임에도 불구하고 인증 없이 접속할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
Improper Input Validation vulnerability.
This issue affects Apache Tomcat: from 11.0.0-M1 through 11.0.14, from 10.1.0-M1 through 10.1.49, from 9.0.0-M1 through 9.0.112.
The following versions were EOL at the time the CVE was created but are
known to be affected: 8.5.0 through 8.5.100. Older EOL versions are not affected.
Tomcat did not validate that the host name provided via the SNI
extension was the same as the host name provided in the HTTP host header
field. If Tomcat was configured with more than one virtual host and the
TLS configuration for one of those hosts did not require client
certificate authentication but another one did, it was possible for a
client to bypass the client certificate authentication by sending
different host names in the SNI extension and the HTTP host header field.
The vulnerability only applies if client certificate authentication is
only enforced at the Connector. It does not apply if client certificate
authentication is enforced at the web application.
Users are recommended to upgrade to version 11.0.15 or later, 10.1.50 or later or 9.0.113 or later, which fix the issue.
📍 영향받는 시스템
Apache Tomcat 11.0.0-M1 ~ 11.0.14, 10.1.0-M1 ~ 10.1.49, 9.0.0-M1 ~ 9.0.112, 8.5.0 ~ 8.5.100
⚔️ 공격 벡터
SNI 확장 정보와 HTTP Host 헤더에 서로 다른 호스트 이름을 입력하여 클라이언트 인증 절차를 우회함
🛡️ 대응 방법
Apache Tomcat을 11.0.15, 10.1.50 또는 9.0.113 이상의 최신 버전으로 업그레이드하십시오.
🔧 검증 코드
출력된 Tomcat 버전이 취약한 버전 범위에 포함되는지 확인하십시오.
java -jar /path/to/tomcat/bin/version.sh | grep 'Server'