CVE-2025-24893 - XWiki平台远程代码执行漏洞利用
一个针对CVE-2025-24893的Python漏洞利用工具,该漏洞是XWiki平台中的远程代码执行漏洞。此利用工具包含使用pwntools的自包含反向Shell监听器。
描述
此利用工具针对易受CVE-2025-24893攻击的XWiki平台安装,通过SolrSearch组件中的模板注入漏洞实现远程代码执行。该工具会自动启动反向Shell监听器,并在成功利用后提供交互式Shell。
要求
- Python 3.x
requests库pwntools库
安装
推荐:使用UV(现代Python包管理器)
|
|
替代方案:使用pip
|
|
使用方法
基本用法
|
|
示例
|
|
命令行参数
-
target: 目标URL(必需)- 可以是仅域名:
example.com - 可以包含协议:
http://example.com或https://example.com
- 可以是仅域名:
-
-i, --ip: 反向Shell的回调IP(默认:0.0.0.0)- 使用
0.0.0.0在所有接口上监听 - 使用特定IP(如
192.168.1.100)绑定到特定接口
- 使用
-
-p, --port: 反向Shell的回调端口(默认:9521) -
--no-test: 跳过初始测试直接进行反向Shell -
--max-reconnects: Shell断开时的最大重连尝试次数(默认:5)
工作原理
- 协议检测:自动检测目标是否支持HTTP或HTTPS
- 测试阶段:运行测试命令(
id)验证利用是否有效 - 监听器设置:使用pwntools自动启动反向Shell监听器
- 载荷执行:向目标发送反向Shell载荷
- 交互式Shell:成功连接后提供交互式Shell
- 自动重连:如果Shell断开,自动重新建立连接
自包含反向Shell
此利用工具是自包含的,不需要手动设置netcat:
- 自动在指定IP和端口上启动监听器
- 自动处理反向Shell连接
- 提供交互式Shell界面
- 无需手动运行
nc -lvp
自动重连
该利用工具包含强大的重连功能:
- EOF处理:自动检测Shell连接断开
- 自动恢复:重新建立监听器并重新发送利用载荷
- 可配置重试:设置最大重连尝试次数(默认:5)
- 优雅降级:持续尝试直到达到最大尝试次数
重连行为
当Shell连接断开时(EOF错误):
- 检测连接丢失
- 关闭旧监听器
- 启动新监听器
- 重新发送利用载荷
- 重新建立Shell连接
- 继续交互式会话
载荷详情
该利用工具使用Groovy模板注入载荷,执行:
|
|
特性
- 自动协议检测:自动检测HTTP/HTTPS
- 自包含监听器:无需手动netcat设置
- 交互式Shell:成功利用后提供完整交互式Shell
- 测试模式:可选测试阶段验证利用是否有效
- 灵活配置:可自定义回调IP和端口
- 自动重连:自动处理连接断开
- 强大错误处理:优雅处理各种错误条件
故障排除
常见问题
- “地址已在使用中”:使用
-p标志更改端口 - “权限被拒绝”:尝试使用端口>1024或以sudo运行
- 未收到连接:
- 验证目标是否易受攻击
- 检查目标是否能访问您的回调IP
- 确保没有防火墙阻止连接
- “在交互发送时收到EOF”:
- 脚本会自动处理并重新建立连接
- 如果持续存在,请检查网络稳定性或增加
--max-reconnects
网络注意事项
- 回调IP应该可以从目标访问
- 使用
0.0.0.0在所有接口上监听 - 对于外部目标,确保您的IP可公开访问
- 不稳定的网络可能需要更高的重连限制
免责声明
此工具仅用于教育和授权测试目的。在测试任何系统之前,请确保您拥有适当的授权。
致谢
- 作者:nopgadget
- 基于:Al Baradi Joy的原始脚本
许可证
此项目仅用于教育目的。请负责任地使用,并且仅在您拥有或获得明确测试权限的系统上使用。