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

#免责声明:
本文属于个人笔记,仅用于学习,禁止使用于任何违法行为,任何违法行为与本人无关。

漏洞简介

Tomcat默认开启AJP服务(8009端口),存在一处文件包含缺陷。攻击者可以通过构造的恶意请求包来进行文件包含操作,从而读取或包含Tomcat上所有webapp目录下的任意文件,如:webapp配置文件或源代码等。

tomcat默认的conf/server.xml中配置了2个Connector,一个为8080的对外提供的HTTP协议端口,另外一个就是默认的8009 AJP协议端口,两个端口默认均监听在外网ip。
 

 影响版本

  • 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

搭建环境

使用ubuntu打开vulhub中的tomcat/CVE-2020-1938目录,拉取镜像。

docker-compose up -d

查看环境

docker ps

访问http://your-ip:8080即可查看tomcat默认页面,此时通过AJP协议的8009端口亦可访问Tomcat。

漏洞复现

1.使用nmap查看开启端口(靶机ip:192.168.1.3)

可以看到8009端口的AJP协议是开启的,并且存在8009端口服务的开启,可以怀疑有CVE-2020-1938 Apache Tomcat文件包含漏洞的存在。

2.从Github克隆POC脚本到本地kali

POC脚本下载地址(github)

#kali下载地址
git clone https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi.git

3.读取靶机上Tomcat服务器的/usr/local/tomcat/webapps/ROOT/WEB-INF文件:(注意:python环境为python2,否则会报错)

成功读取Tomcat的Webapps下的文件web.xml

4.返回靶机,进入Docker容器,查看相应的文件是否一致

文件一致,成功复现CVE-2020-1938 漏洞

5.实验结束,关闭环境

docker-compose down

漏洞防御

1.临时禁用AJP协议8009端口,在conf/server.xml配置文件中注释掉<Connector port="8009" protocol="AJP/1.3"redirectPort="8443" />;

2.配置ajp配置中的secretRequired跟secret属性来限制认证;

3.更新tomcat版本至漏洞以外的版本;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
复现Tomact_CVE-2020-1938漏洞,可以按照以下步骤进行操作: 1. 下载POC:可以使用以下命令下载POC文件: git clone https://github.com/sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read/ 2. 在攻击机上搭建环境:确保攻击机上已经安装了Tomcat服务器,并且版本在3.4.3以下,可以使用以下命令下载并安装Tomcat 3.4.3版本: git clone https://github.com/sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read/ 3. 配置Tomcat服务器:在Tomcat安装目录下,找到server.xml文件,在<Connector>标签中添加以下内容: protocol="org.apache.coyote.ajp.AjpNio2Protocol" secretRequired="false" 4. 启动Tomcat服务器:在Tomcat安装目录下运行启动脚本,如./catalina.sh run 5. 复现漏洞:使用以下命令触发漏洞复现: python3 file_include.py -u http://目标IP:目标端口/ -p /WEB-INF/web.xml 以上步骤可以帮助你复现Tomact_CVE-2020-1938漏洞。请注意,在进行漏洞复现时务必遵守道德规范,并获得合法授权进行测试。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [CVE-2020-1938 漏洞复现](https://blog.csdn.net/weixin_48799157/article/details/124889366)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [CVE-2020-1938 Tomcat文件包含漏洞复现](https://blog.csdn.net/qq_49279082/article/details/129018726)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值