Apache Tomcat

[Security] Apache Tomcat (톰캣) 신규 보안 취약점

sstdio.h·2017년 10월 23일·조회 5,792

1. 개요

  • Apache 소프트웨어 재단은 Apache Tomcat에 영향을 주는 원격 코드 실행 취약점을 해결한 보안 업데이트를 발표했습니다.
  • 취약한 버전을 사용 중이고 HTTP PUT 메소드가 허용된 경우, 공격자가 JSP 웹 셸을 업로드해 원격 코드 실행으로 이어질 수 있으므로 서버 담당자는 해결 방안에 따라 최신 버전으로 업데이트하는 것을 권고합니다.

2. 설명

  • 서버에서 HTTP PUT 메소드를 사용하도록 설정한 경우, 특수하게 조작된 요청을 통해 JSP 파일을 서버에 업로드할 수 있는 원격 코드 실행 취약점입니다(CVE-2017-12617).
  • 특히 Tomcat의 기본 서블릿(DefaultServlet)에서 쓰기 기능이 허용된 환경은 위험할 수 있습니다. 운영 환경에서는 불필요한 PUT 메소드를 차단하고, 파일 업로드가 필요한 경우에도 업로드 경로에서 JSP 등 서버 측 스크립트가 실행되지 않도록 분리하는 것이 안전합니다.

3. 영향을 받는 버전

  • Apache Tomcat 9.0.0.M1 - 9.0.0
  • Apache Tomcat 8.5.0 ~ 8.5.22
  • Apache Tomcat 8.0.0.RC1 ~ 8.0.46
  • Apache Tomcat 7.0.0 ~ 7.0.81

4. 점검 방법

  • 운영 중인 Tomcat 버전이 영향을 받는 버전에 포함되는지 확인합니다.
  • Tomcat 설정에서 DefaultServlet의 readonly 값이 false로 변경되어 있거나, 웹 애플리케이션에서 PUT 요청을 허용하고 있는지 확인합니다.
  • 외부에서 PUT 요청이 가능한지 점검하되, 운영 서비스에 영향을 줄 수 있으므로 반드시 사전 승인된 범위에서 테스트해야 합니다.

5. 해결 방안

  • Apache Tomcat 9.x 버전 사용자 - Apache Tomcat 9.0.1 버전으로 업그레이드 [1]
  • Apache Tomcat 8.x 버전 사용자 - Apache Tomcat 8.0.47 버전 또는 8.5.23 버전으로 업그레이드 [2]
  • Apache Tomcat 7.x 버전 사용자 - Apache Tomcat 7.0.82 버전으로 업그레이드 [3]
  • 업그레이드 전 임시 조치가 필요한 경우, 불필요한 HTTP PUT 메소드를 차단하고 Tomcat 및 애플리케이션 설정에서 파일 쓰기 권한이 과도하게 허용되어 있지 않은지 확인합니다. 단, 임시 조치는 업데이트를 대체할 수 없으므로 가능한 한 빠르게 보안 버전으로 교체해야 합니다.

[참고사이트]
[1] http://tomcat.apache.org/security-9.html
[2] http://tomcat.apache.org/security-8.html
[3] http://tomcat.apache.org/security-7.html

※ 출처 : KISA 인터넷침해대응센터

댓글 0

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.