🇰🇷 한글 설명
Apache Tomcat의 정수 오버플로우 취약점으로, 리버스 프록시 환경에서 조작된 Content-Length 헤더를 통해 HTTP 요청 밀반입(Request Smuggling) 공격이 가능합니다. 이는 Tomcat 6.0.40 이전, 7.0.53 이전, 8.0.4 이전 버전에서 발생합니다.
💡 쉬운 설명
웹 서버가 요청의 크기를 잘못 계산하도록 속여서, 공격자가 숨겨진 악의적 요청을 함께 보낼 수 있는 취약점입니다. 리버스 프록시를 사용하는 웹 서비스의 보안 장치를 우회할 수 있습니다.
🇺🇸 원문 (English)
Integer overflow in java/org/apache/tomcat/util/buf/Ascii.java in Apache Tomcat before 6.0.40, 7.x before 7.0.53, and 8.x before 8.0.4, when operated behind a reverse proxy, allows remote attackers to conduct HTTP request smuggling attacks via a crafted Content-Length HTTP header.
📍 영향받는 시스템
Apache Tomcat 6.0.x (6.0.40 이전), 7.0.x (7.0.53 이전), 8.0.x (8.0.4 이전)
⚔️ 공격 벡터
리버스 프록시 환경에서 조작된 Content-Length 헤더로 HTTP 요청 밀반입(Request Smuggling) 수행
🛡️ 대응 방법
Tomcat을 6.0.40, 7.0.53 또는 8.0.4 이상으로 업그레이드
🔧 검증 코드
위 명령어로 Tomcat 설치 경로를 찾은 후, 해당 경로의 CATALINA_HOME/lib 디렉토리에서 tomcat-coyote JAR 파일의 버전을 확인하면 현재 설치된 Tomcat 버전을 알 수 있습니다.
ps aux | grep tomcat | grep -oP '(?<=/catalina.home=)\S+' || find / -name 'catalina.sh' -type f 2>/dev/null | head -1 | xargs dirname | xargs dirname