darkbytehunter/CVE-2024-22120-RCE-with-gopher
GitHub: darkbytehunter/CVE-2024-22120-RCE-with-gopher
针对CVE-2024-22120的概念验证利用工具,通过时间盲注SQL注入结合Gopher SSRF,在Zabbix服务器上实现从低权限账户到远程代码执行的完整攻击链。
Stars: 1 | Forks: 0
# 使用方法
```
python exploit.py --ip --sid --hostid --phpsessid --false_time --true_time
```
### 示例场景
你发现了一台运行在 IP `192.168.1.100` 上的 Zabbix 服务器,并且你拥有一个低权限用户的访问权限,其详细信息如下:
- Session ID (`sid`): `d82bf6715e1d3c1f25`
- Host ID (`hostid`): `10107`
- PHP session ID (`phpsessid`): `a4g7f48d9j3r7h8s9g`
你想利用此脚本执行 RCE 漏洞。
### 运行脚本
```
python exploit.py --ip 192.168.1.100 --sid d82bf6715e1d3c1f25 --hostid 10107 --phpsessid a4g7f48d9j3r7h8s9g --false_time 1 --true_time 3
```
### 参数说明:
- `--ip 192.168.1.100`: Zabbix 服务器的 IP 地址。
- `--sid d82bf6715e1d3c1f25`: 低权限用户的 Session ID。
- `--hostid 10107`: 低权限用户可以访问的 Host ID。
- `--phpsessid a4g7f48d9j3r7h8s9g`: 用于验证请求的 PHP session ID。
- `--false_time 1`: 在 SQL 注入过程中猜测错误时的休眠时间(以秒为单位,默认为 1 秒)。
- `--true_time 3`: 在 SQL 注入过程中猜测正确时的休眠时间(以秒为单位,默认为 3 秒)。
### 接下来会发生什么:
1. 脚本将首先尝试通过基于时间的 SQL 注入提取管理员的 Session ID。
2. 获取到管理员的 Session ID 后,脚本将在 Zabbix 服务器上创建一个反向 shell 脚本。
3. 最后,脚本将执行反向 shell,连接回你指定的 IP 和端口(脚本中为 `10.0.46.27:5555`)的机器上。
### 注意事项:
- 确保你的机器正在监听指定的端口(脚本中为 `5555`)以捕获反向 shell。你可以使用 `netcat` 来实现:
nc -lvnp 5555
- 将 `CreateScript` 函数中的 IP `10.0.46.27` 和端口 `5555` 替换为你自己的 IP 和希望用于接收反向 shell 的端口。
标签:CISA项目, CVE-2024-22120, Gopher协议, Maven, OPA, PoC, RCE, SSRF, Zabbix, 协议分析, 反弹Shell, 时间盲注, 暴力破解, 权限提升, 漏洞验证, 编程工具, 网络安全, 网络渗透测试, 远程代码执行, 逆向Shell, 逆向工具, 隐私保护, 靶场