CVE-2021-47940 (CVSS 9.8) - WordPress Plugin Download From Files version 1.48 and earlier contains an arbitr
🔥 热门漏洞情报 · NVD-Latest · 2026-05-10
CVE-2021-47940 (CVSS 9.8) - WordPress Plugin Download From Files version 1.48 and earlier contains an arbitr
Critical · CVSS 9.8
任意文件上传
CVE-2021-47940
📋 漏洞概述
WordPress Download From Files 插件未授权任意文件上传漏洞,允许远程攻击者上传恶意脚本实现 RCE。
📋 基础信息
| 受影响版本 | WordPress Download From Files <= 1.48 |
| 漏洞类型 | 任意文件上传 |
| CVSS | 9.8 · Critical |
| CVE | CVE-2021-47940 |
🔬 漏洞根因
插件在 AJAX 文件上传处理函数中,未对用户身份进行认证检查,导致未认证用户可调用 download_from_files_617_fileupload 动作。同时,服务端仅依赖客户端提交的 allowExt 参数来限制文件扩展名,攻击者可通过篡改该参数(如设置为 php)绕过扩展名白名单,将恶意文件直接上传至 web 根目录。
🎯 攻击场景
1. 攻击者定位目标站点中 WordPress 的 admin-ajax.php 接口。 2. 构造包含恶意 PHP webshell 的 POST 请求,设置 action=download_from_files_617_fileupload,并在请求中伪造 allowExt 参数值为 php。 3. 发送请求至 admin-ajax.php,插件接收文件并依据伪造的 allowExt 写入.php 文件到 web 根目录。 4. 攻击者通过浏览器访问上传的 PHP webshell 路径,执行任意系统命令。 5. 成功获取服务器控制权,可进行数据窃取、恶意软件部署等操作。
💥 漏洞影响
未认证攻击者可在目标服务器上上传并执行任意 PHP 代码,导致远程代码执行、服务器完全沦陷、敏感数据泄露和后续横向移动。
🛡️ 修复建议
升级插件至 1.49 或更高版本;同时作为临时缓解措施,在 Web 服务器层面禁用对 /wp-admin/admin-ajax.php 接口中不受信任的上传参数处理,或通过 WAF 规则拦截包含 download_from_files_617_fileupload 动作的可疑请求。
📎 参考链接
- https://nvd.nist.gov/vuln/detail/CVE-2021-47940
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-47940
- 原始来源(NVD-Latest)
⚠️ 本文由漏洞情报系统自动生成,仅供安全研究与防御参考。生成时间: 2026-05-12 08:07 | 来源: NVD-Latest