🇰🇷 한글 설명
Apache Tomcat의 기본 서블릿에서 XSLT 스타일시트를 제대로 제한하지 않아, 공격자가 XML 외부 엔티티(XXE) 기법을 이용해 보안 매니저 제한을 우회하고 임의의 파일을 읽을 수 있는 취약점입니다. 악의적인 웹 애플리케이션을 통해 XML 외부 엔티티 선언과 참조를 포함한 요청을 보내면 서버의 민감한 파일에 접근 가능합니다.
💡 쉬운 설명
Tomcat 웹 서버가 XML 파일을 처리할 때 공격자가 특정 제약을 우회하여 서버의 비공개 파일을 읽을 수 있습니다. 이는 XSLT 스타일시트 처리가 악의적인 입력을 충분히 검증하지 못하기 때문입니다.
🇺🇸 원문 (English)
java/org/apache/catalina/servlets/DefaultServlet.java in the default servlet in Apache Tomcat before 6.0.40, 7.x before 7.0.53, and 8.x before 8.0.4 does not properly restrict XSLT stylesheets, which allows remote attackers to bypass security-manager restrictions and read arbitrary files via a crafted web application that provides an XML external entity declaration in conjunction with an entity reference, related to an XML External Entity (XXE) issue.
📍 영향받는 시스템
Apache Tomcat 6.0.40 이전, 7.0.53 이전, 8.0.4 이전 버전
⚔️ 공격 벡터
악의적인 웹 애플리케이션을 배포하거나 XML 외부 엔티티 선언을 포함한 XSLT 요청을 서버에 전송
🛡️ 대응 방법
Apache Tomcat을 6.0.40, 7.0.53, 8.0.4 이상의 패치된 버전으로 업그레이드
🔧 검증 코드
출력된 버전이 6.0.40, 7.0.53, 8.0.4 이상이면 안전하고 하위 버전이면 취약함
cat /opt/tomcat/RELEASE-NOTES 2>/dev/null | head -1 || dpkg -l 2>/dev/null | grep tomcat | awk '{print $2, $3}'