这个漏洞是历史版本发现的漏洞,在最新版本上已经被修复。
WordPress 下载管理器是一个文件/文档管理插件,旨在管理、跟踪和控制 WordPress 网站的文件下载。您可以使用密码和用户角色来控制对文件的访问、管理下载速度并限制每个用户的下载数量。
它还提供验证码锁定或 IP 阻止等功能来阻止机器人、不需要的用户或垃圾邮件发送者。您甚至可能要求用户在下载之前同意您的条款和条件。Wordpress download-manager 插件存在越权漏洞,攻击者在知道某个文件的下载密码后,可以下载网站上的任意加密文件。
神奇的越权漏洞
漏洞测试
插件下载地址
https://downloads.wordpress.org/plugin/download-manager.3.2.70.zip
登录后台后,上传并加载启用插件,我们添加两个不同的文件,并设置不同的密码
访问对应的下载页面
点击下载均需要输入密码
此时我们仅知道文件1 的下载密码是123456 文件二的密码并不清楚
输入密码显示出了文件的下载地址
此时我们访问下载地址
下载的文件一的内容,同时修改参数wpdmdl 的值
发现将文件二也下载了下来
漏洞分析
WPDM__Apply::triggerDownload 处理下载操作
is_wpdmkey_valid
WPDM__TempStorage::get
我们注意到key 的处理查询跟时间有关,跟 id 无关,所以获取的key 在时间范围内可以下载任意加密文件,无论密钥值。
原文始发于微信公众号(火线Zone):【代码审计】WordPress 插件 download-manager 神奇的漏洞
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论