최근 Apache Tomcat의  AJP 취약점 발표이후, 해당 취약점에 대응하는 업그레이드 버전이 나왔다.

 관련 취약점은 다음과 같다.

Apache Tomcat AJP 취약점 보안 조치 권고(2차)                        2020.03.02
□ 개요
 o 최근 Apache Tomcat의 원격코드실행 취약점(CVE-2020-1938)을 악용할 수 있는 개념증명코드(Proof of concept code, PoC)가 인터넷상에 공개되어 사용자의 보안 강화 필요
※ 개념증명코드 : 취약점을 증명/검증할 수 있는 프로그램 또는 소스코드
 
□ 설명
 o Tomcat이 AJP request 메시지를 처리할 때, 메시지에 대한 처리가 미흡하여 발생하는 원격코드실행 취약점(CVE-2020-1938)
  ※ AJP(Apache JServ Protocol) : 웹서버와 어플리케이션 서버 간 연결 요청을 8009포트를 사용하여 전달하는 프로토콜(모니터링 기능 지원)
□ 영향을 받는 버전
 o Apache Tomcat
  - 9.0.0.M1 ~ 9.0.30
  - 8.5.0 ~ 8.5.50
  - 7.0.0 ~ 7.0.99
  ※ 상기 버전은 AJP 커넥터가 기본으로 활성화되어 취약점에 영향 받음
□ 해결 방안
 o 각 버전에 해당되는 페이지를 참고하여 최신 버전으로 업데이트 적용
  - 7.0.100 이상 버전
  - 8.5.51 이상 버전
  - 9.0.31 이상 버전
 o 임시 조치 방안(패치 적용이 어려운 경우)
  - AJP 기능이 불필요한 경우 Connector 비활성화
   · conf/server.xml 설정 파일 내 AJP Connector 기능 주석처리
 
□ 기타 문의사항
 o 한국인터넷진흥원 사이버민원센터: 국번없이 118
[참고사이트]
[1] https://lists.apache.org/thread.html/r7c6f492fbd39af34a68681dbbba0468490ff1a97a1bd79c6a53610ef%40%3Cannounce.tomcat.apache.org%3E
[2] http://tomcat.apache.org/security-7.html
[3] http://tomcat.apache.org/security-8.html
[4] http://tomcat.apache.org/security-9.html
KISA - Apache Tomcat 취약점 보안 업데이트 권고 (1차)
https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=35279
KISA - Apache Tomcat AJP 취약점 보안 조치 권고(2차)
https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=35292
 
취약점에 대한 더 자세한 정보
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1938

 

 최신 버전으로 업데이트를 하고 나서, server.xml 의 Connector 태그 부분의 특별한 수정을 안했다면 Nginx나 Apache HTTP Server와의 연결이 안될 수 있다.

 그 원인은 <Connector > 태그의 address 값의 default가 기존에는 0.0.0.0이였으나, 127.0.0.1이나 localhost로 변경이 된 것으로 추정된다.

 그렇기에, Connector 태그에 address="0.0.0.0" 과 같이 Listen IP를 지정해주어야 이전과 같이 정상적으로 서비스가 가능하다.

 

 관련하여 더 자세한 설명은 다음의 링크를 참고할 수 있다.

https://eastpost95.blogspot.com/2020/03/apache-tomcat-ajp-cve-2020-1938-apache.html