요약

- 선행조건 : enableCmdLineArguments 기능 사용이 허용, 운영체자가 Windows인 경우

- 취약점 : JRE가 코맨드 라인 인수를 Windows로 전달하는 과정 중 발생하는 오류로 인해 CGI(Command Gateway Interface) 서블릿에 원격 코드 실행 취약점 존재. 

원격 공격자는 특수하게 가공한 요청을 보내 시스템에 임의의 코드를 실행 할 수 있음.

- 영향받는 제품 : Windows에서 운영되는 

Apache Tomcat 7.0.0 – 7.0.93

Apache Tomcat 8.5.0 - 8.5.39

Apache Tomcat 9.0.0.M1 - 9.0.17

- 대응방안 : Tomcat 최신 버전으로 업그레이드 또는 업그레이드가 불가능할 경우 enableCmdLineArguments 기능 사용하지 않음으로 설정

Apache Tomcat 9.0.18 또는 최신 버전으로 업그레이드

Apache Tomcat 8.5.40 또는 최신 버전으로 업그레이드

Apache Tomcat 7.0.94 또는 최신 버전으로 업그레이드  

*Tomcat 9.0.X 버전 enableCmdLineArguments 기본 설정은 ‘허용하지 않음’



관련 CVE정보

- CVE-2019-0232

- CVSS 3.0 Base Score : 9.8

- PoC : 

    https://packetstormsecurity.com/files/153506/Apache-Tomcat-CGIServlet-enableCmdLineArguments-Remote-Code-Execution.html

    https://github.com/pyn3rd/CVE-2019-0232

-Metasploit : https://www.rapid7.com/db/modules/exploit/windows/http/tomcat_cgi_cmdlineargs

- 재현 영상 : https://twitter.com/4chr4f2



영향성

취약 버전 사용 시 신속한 업데이트 및 조치 필요



참고자료

출처 : http://mail-archives.apache.org/mod_mbox/www-announce/201904.mbox/<13d878ec-5d49-c348-48d4-25a6c81b9605@apache.org

   https://thehackernews.com/2019/04/apache-tomcat-security-flaw.html

   https://wwws.nightwatchcybersecurity.com/2019/04/30/remote-code-execution-rce-in-cgi-servlet-apache-tomcat-on-windows-cve-2019-0232/

윈도우 코맨드 라인 삽입 : https://codewhitesec.blogspot.com/2016/02/java-and-command-line-injections-in-windows.html

잘못된 코멘드 라인 인수 사용 : https://web.archive.org/web/20161228144344/https://blogs.msdn.microsoft.com/twistylittlepassagesallalike/2011/04/23/everyone-quotes-command-line-arguments-the-wrong-way/

+ Recent posts