Tomcat7+ 弱口令 && 后臺getshell漏洞
Path tomcat/tomcat8
- Tomcat版本:8.0
環境說明
Tomcat支持在后臺部署war文件,可以直接將webshell部署到web目錄下。其中,欲訪問后臺,需要對應用戶有相應權限。
Tomcat7+權限分為:
- manager(后臺管理)
- manager-gui 擁有html頁面權限
- manager-status 擁有查看status的權限
- manager-script 擁有text接口的權限,和status權限
- manager-jmx 擁有jmx權限,和status權限
- host-manager(虛擬主機管理)
- admin-gui 擁有html頁面權限
- admin-script 擁有text接口權限
這些權限的究竟有什么作用,詳情閱讀 http://tomcat.apache.org/tomcat-8.5-doc/manager-howto.html
在conf/tomcat-users.xml文件中配置用戶的權限:
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0">
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script" />
</tomcat-users>
可見,用戶tomcat擁有上述所有權限,密碼是tomcat。
正常安裝的情況下,tomcat8中默認沒有任何用戶,且manager頁面只允許本地IP訪問。只有管理員手工修改了這些屬性的情況下,才可以進行攻擊。
漏洞測試
無需編譯,直接啟動整個環境:
docker-compose up -d
打開tomcat管理頁面http://your-ip:8080/manager/html,輸入弱密碼tomcat:tomcat,即可訪問后臺:

上傳war包即可直接getshell。
Vulhub 文檔