今天继续给大家介绍渗透测试相关知识,本文主要内容是文件下载漏洞详解。
免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!
一、文件下载漏洞概述
文件下载是当前很多Web站点提供的正常功能,但是如果我们再Web后台没有对下载正确的处理,那么就有可能造成文件下载漏洞。文件下载、文件包含以及文件读取三者之间的区别在于,文件下载会下载文件、而文件包含会使得目标文件被当作PHP等动态脚本解析,而文件读取则会显示文件源代码。
文件下载漏洞不会直接影响站点权限的丢失,但是会对系统安全造成简介影响。对于攻击者而言,一般下载的文件是后台日志、Web站点源代码等可见文件,以及一些数据库等配置文件、各种接口文件、密钥信息文件等。
在Web系统中,如果我们把一个下载文件的URL直接放在页面上,那么基本上不会造成文件下载漏洞。但是问题在于,有些站点将文件下载功能写入到一个URL中,然后用参数值来控制下载的文件。这样,如果用户可以控制这个参数值,并且Web站点后端没有对这个参数值进行过滤,或者说过滤不完全的情况下,就有可能造成文件下载漏洞。
二、文件下载漏洞示例
接下来,我们就使用pikachu靶场,来进行文件下载漏洞的演示。
来到pikachu靶场,找到Unsafe Filedownload模块后,点击进入如下页面:
从上图可以看出,下载文件的地址链接携带有file参数,并且file参数就是下载文件的文件名。因此,在这里可能存在文件下载漏洞。
为了证实我们的猜想,我们可以手动将该参数替换成该页的源代码,在这里要注意文件路径。替换后尝试访问该链接,结果如下所示:
从上图可以看到,我们在访问该URL后,成功下载到了站点后台源代码。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200