CVE-2021-47933 (CVSS 9.8) - WordPress MStore API 2.0.6 contains an arbitrary file upload vulnerability that
CVE-2021-47933 (CVSS 9.8) - WordPress MStore API 2.0.6 contains an arbitrary file upload vulnerability that
📋 漏洞概述
WordPress MStore API 2.0.6 插件存在未经身份验证的任意文件上传漏洞,攻击者可通过 REST API 上传 PHP 文件实现远程代码执行。
📋 基础信息
| 受影响版本 | WordPress MStore API <= 2.0.6 |
| 漏洞类型 | 任意文件上传(Unrestricted File Upload) |
| CVSS | 9.8 · Critical |
| CVE | CVE-2021-47933 |
🔬 漏洞根因
插件在处理 config_file RPC 端点时,未对上传文件的类型、内容及后缀进行有效验证,允许攻击者直接通过 REST API 上传任意内容(如 PHP 脚本)。服务器未能正确限制文件上传目录的可执行权限,且未对文件重命名或检查 MIME 类型,导致攻击者可上传 webshell。
🎯 攻击场景
1. 攻击者确定目标站点运行 WordPress 并安装了 MStore API 2.0.6 版本。 2. 构造一个包含 PHP 恶意代码的文件(如 shell.php),内容为系统命令执行脚本。 3. 使用未认证的 HTTP POST 请求向 /wp-json/mstore/v1/config_file 端点发送 multipart/form-data 请求,将恶意 PHP 文件作为文件字段上传。 4. 服务器接收文件并将其保存到可公开访问的目录(如 wp-content/uploads/ 或插件缓存目录)。 5. 攻击者通过浏览器或工具访问上传的 PHP webshell URL,传入命令参数(如 ?cmd=id),实现远程代码执行,完全控制服务器。
💥 漏洞影响
未经身份验证的攻击者可在目标服务器上上传任意文件,尤其是可执行脚本(如 PHP webshell),从而实现远程代码执行(RCE),导致服务器被完全控制、数据泄露、网站篡改或成为僵尸网络节点。
🛡️ 修复建议
升级 MStore API 插件至 2.0.7 或更高版本;同时限制上传目录的脚本执行权限(通过 .htaccess 或 Nginx 配置禁止PHP执行),并严格校验文件类型与扩展名。
📎 参考链接
- https://nvd.nist.gov/vuln/detail/CVE-2021-47933
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-47933
- 原始来源(NVD-Latest)
⚠️ 本文由漏洞情报系统自动生成,仅供安全研究与防御参考。生成时间: 2026-05-12 08:06 | 来源: NVD-Latest