文件下载漏洞的概念
一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够读取或下载任意敏感文件,这就是文件读取与下载漏洞。
文件下载漏洞利用条件
1、源码中存在读文件的函数。
2、读取文件的路径用户可控且未校验或校验不严。
3、在网页中输出了文件内容。
文件下载漏洞常用的位置
1、存在下载功能的功能点
2、链接存在以下关键字
1)download.php?path=
2)download.php?file=
3)download.php?filename=
4)read.php?filename=
5)down.php?file=
6)data.php?file=
7)readfile.php?file=
3、包含以下参数
文件下载漏洞常用的路径
文件下载漏洞利用方法
index.php?f=../../../../../../../../../etc/passwd
index.php?f=../../../index.php
index.php?f=file:///etc/passwd
readfile.php?file=/etc/passwd
readfile.php?file=../../../../../etc/passwd
readfile.php?file=../../../../../../../etc/passwd%00
execdownload.php?filename=../../../index.php
文件下载漏洞漏洞危害
1、可以下载服务器的任意文件
2、获得网站web源码,再对代码进行审计,以获得更多的漏洞
3、获得网站、服务器、系统、数据库等中间件配置文件
4、获得应用于系统配置文件
5、对内网的信息进行一个探测
6、下载各种.log文件,并寻找后台地址、文件上传点等地方
文件下载漏洞防护措施
1、对下载路径进行过滤
2、php.ini配置open_basedir限定文件访问范围
3、更新版本
4、将要下载的文件地址保存至数据库中。
5、 文件路径保存至数据库,让用户提交文件对应ID下载文件。