muslimbek-0x/CVE-2026-48030
GitHub: muslimbek-0x/CVE-2026-48030
针对 Pheditor 2.0.4 之前版本中 OS 命令注入漏洞的 PoC 项目,包含漏洞分析、利用脚本与修复建议。
Stars: 0 | Forks: 0
# CVE-2026-48030 — Pheditor 中的 OS 命令注入
## 概述
| 字段 | 详情 |
|-------|---------|
| **CVE ID** | CVE-2026-48030 |
| **产品** | pheditor |
| **供应商** | Hamid Samak |
| **受影响版本** | 2.0.1, 2.0.2, 2.0.3 |
| **修复版本** | 2.0.4 |
| **严重程度** | 严重 |
| **CVSS Score** | 9.9 |
| **CVSS Vector** | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
| **CWE** | CWE-78 (OS 命令注入) |
| **发现者** | Muslimbek Burxonov |
## 漏洞描述
`pheditor.php` 的 terminal action 处理程序中存在一个严重的 OS 命令注入漏洞。`dir` POST 参数未经任何清理被直接拼接到 `shell_exec()` 中,允许通过身份验证的攻击者绕过 `TERMINAL_COMMANDS` 白名单并执行任意 OS 命令。
## 漏洞代码
**pheditor.php, 第 586 行:**
```
$command = $_POST['command']; // ✓ metacharacters checked
$dir = $_POST['dir']; // ✗ NOT checked — vulnerable
// Check applies to $command only, NOT $dir
if (strpos($command, '&') !== false ||
strpos($command, ';') !== false ||
strpos($command, '||') !== false) {
die(...);
}
// $dir injected unsanitized into shell_exec
$output = shell_exec(
(empty($dir) ? null : 'cd ' . $dir . ' && ')
. $command . ' && echo \ ; pwd'
);
```
## 概念验证
```
python3 poc.py --target http://TARGET/pheditor.php --password admin
```
有关完整的 PoC 脚本,请参见 [poc.py](poc.py)。
## 修复
**pheditor.php, 第 586 行 — 替换为:**
```
// BEFORE (vulnerable)
'cd ' . $dir
// AFTER (patched)
'cd ' . escapeshellarg($dir)
```
## 参考
- [GitHub Advisory GHSA-jvc5-6g7q-c843](https://github.com/pheditor/pheditor/security/advisories/GHSA-jvc5-6g7q-c843)
- [pheditor v2.0.4 Release](https://github.com/pheditor/pheditor/releases/tag/2.0.4)
- [pheditor Repository](https://github.com/pheditor/pheditor)
## 免责声明
此 PoC 仅用于教育和研究目的。请仅在您获得明确许可进行测试的系统上使用。
标签:PoC, 命令注入, 暴力破解, 逆向工具