
Nginxpwner 是一个用于查找常见 Nginx 错误配置和漏洞的简单工具。
cd /opt
git clone https://github.com/stark0de/nginxpwner
cd nginxpwner
chmod +x install.sh
./install.sh
git clone https://github.com/stark0de/nginxpwner
cd nginxpwner
sudo docker build -t nginxpwner:latest .
运行镜像
sudo docker run -it nginxpwner:latest /bin/bash
在 Burp 中打开 Target 选项卡,选择主机,右键单击,复制该主机的所有 URL,粘贴到文件中
cat urllist | unfurl paths | cut -d"/" -f2-3 | sort -u > /tmp/pathlist
或者以其他方式获取你已在应用中发现的路径列表。注意:路径不应以 / 开头
最后:
python3 nginxpwner.py https://example.com /tmp/pathlist
它实际上会检查以下内容:
该工具使用响应中的 Server 头来进行部分测试。有些基于 Nginx 的 CMS(如 Centminmod、OpenResty、Pantheon 或 Tengine)不会返回该头信息。在这种情况下,请使用 nginx-pwner-no-server-header.py,参数与另一个脚本相同。
另外,为了使漏洞搜索正常运行,你应该偶尔在 Kali 中运行:searchsploit -u
该工具不检查 Web 缓存投毒/欺骗漏洞或请求走私,这些需要专门的工具进行测试。NginxPwner 主要关注开发人员可能在 nginx.conf 中无意引入的错误配置。
感谢 shibli2700 提供的出色工具 Kyubi (https://github.com/shibli2700/Kyubi) 以及 gobuster 的所有贡献者。还要感谢 Detectify(实际上是他们发现了 Nginx 中的许多此类错误配置)。