Pikachu- unsafe filedownload-不安全的文件下载

不安全的文件下载概述

文件下载功能在很多web系统上都会出现,一般我们当点击下载链接,便会向后台发送一个下载请求,一般这个请求会包含一个需要下载的文件名称,后台在收到请求后 会开始执行下载代码,将该文件名对应的文件response给浏览器,从而完成下载。 如果后台在收到请求的文件名后,将其直接拼进下载文件的路径中而不对其进行安全判断的话,则可能会引发不安全的文件下载漏洞。
此时如果 攻击者提交的不是一个程序预期的的文件名,而是一个精心构造的路径(比如../../../etc/passwd),则很有可能会直接将该指定的文件下载下来。 从而导致后台敏感信息(密码文件、源代码等)被下载。

所以,在设计文件下载功能时,如果下载的目标文件是由前端传进来的,则一定要对传进来的文件进行安全考虑。 切记:所有与前端交互的数据都是不安全的,不能掉以轻心!

点击下载科比的头像,会直接把 kb.png 做参数传给 filename

修改 filename,  filename=../../../../../../../../../../../etc/passwd

右边响应可以看到,直接把passwd 文件返回来了;

同样的,从源码上也可以看出来,没对文件路径做处理

防范措施:

1、对输入的文件名进行严格的过滤和限定;

2、对文件下载的目录进行严格的限定;

pikachu-master是一个带有漏洞的Web应用系统,可以用于进行web安全漏洞的练习和学习。你可以从GitHub上下载pikachu-master的源码,并将其上传到你的Web服务器的根目录下。然后,你可以通过访问服务器的IP地址加上pikachu-master的路径来访问这个靶场,例如http://192.168.132.131/pikachu-master/。在安装和配置pikachu-master时,你需要确保Apache和MySQL服务开启,并将pikachu-master文件夹放置在xampp安装目录的htdocs文件夹下,并将config.inc.php文件中的数据库连接信息修改为你实际的数据库连接信息。在安装和配置完成后,你可以通过127.0.0.1/pikachu-master路径来访问这个靶场。在访问之前,你可以通过phpmyadmin来修改数据库账号和密码。请注意,解压pikachu-master文件时会生成两个文件夹,所以路径是127.0.0.1/pikachu-master/pikachu-master。pikachu-master提供了综合类型的靶场练习环境,涵盖了多种漏洞,适合进一步加强你的知识和技能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Linux--linux部署pikachu靶场-kali-部署靶场(详细讲解)](https://blog.youkuaiyun.com/qq_56664029/article/details/129888616)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [pikachu实验靶场环境部署](https://blog.youkuaiyun.com/qq_40731934/article/details/130676513)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [pikachu-master.zip](https://download.youkuaiyun.com/download/BROTHERYY/12550852)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值