Tomcat 漏洞总结

885 阅读2分钟

​本文已参与「新人创作礼」活动,一起开启掘金创作之路。

目录

CVE-2017-12615

CVE-2020-1938

Tomcat 弱口令&后台war部署

Manager App 登录口处可爆破


CVE-2017-12615

漏洞原理

CVE-2017-12615由于配置不当,可导致任意文件上传,影响版本:Tomcat7.0.0-7.0.81

由于配置不当,conf/web.xml中的readonly设置为flase,可导致用PUT方法上传任意文件,但限制了jsp后缀的上传

漏洞复现

使用Vulhub搭建测试环境

Vulhub - Docker-Compose file for vulnerability environment

成功启动环境

进入容器,并查看配置文件,发现readonly配置为false

抓包,修改请求方式为PUT,并上传test.txt

成功上传

绕过jsp后缀限制

成功绕过并上传jsp文件

CVE-2020-1938

漏洞原理

CVE-2020-1938为Tomcat AJP文件包含漏洞,由于Tomcat AJP协议本身的缺陷,攻击者可以通过Tomcat AJP connector可以包含Webapps目录下的所有文件

漏洞复现

Vulhub启环境

进入容器查看相关配置,在server.xml文件中发现8009端口的AJP协议

直接使用POC测试

GitHub - YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi: Tomcat-Ajp协议文件读取漏洞

Tomcat 弱口令&后台war部署

漏洞复现

war包

进入后台,有上传war包的地方,上传我们前面制作的test.war

成功部署war包

访问目录成功

冰蝎连接成功

Manager App 登录口处可爆破

漏洞分析

抓到登录包

GET /manager/html HTTP/1.1

Host: 192.168.1.132:8081

User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Language: en-US,en;q=0.5

Accept-Encoding: gzip, deflate

Connection: close

Upgrade-Insecure-Requests: 1

Authorization: Basic dG9tY2F0OnRvbWNhdA==

Authorization: Basic dG9tY2F0OnRvbWNhdA== 推测改字段为账户密码base64编码之后的结果

解码

那么我们就可以批量生成base字典,爆破账户