【网络安全】-文件下载漏洞-pikachu

文件操作漏洞包括文件上传漏洞,文件包含漏洞,文件下载漏洞。

文章目录 

前言 什么是文件下载漏洞?

1.常见形式:

  常见链接形式:

  常见参数:

2.利用方式:

3.举例:pikachu不安全的文件下载

4.逆向:

5.防护策略:

总结


前言 什么是文件下载漏洞?

网站对用户查看和下载文件不做限制,使hacker可以利用利用这些文件进行提权操作,完全控制服务器,进而以服务器为跳板攻击网站其他系统,进一步扩大攻击范围。


1.常见形式:

常见链接形式:
php 复制代码
download.php?path=

down.php?file=

data.php?file=

download.php?filename=
常见参数:
php 复制代码
&src=

&inputfile=

&path=

&data=

通常情况下,在某网站上看见以上链接或参数,该网站极有可能具有文件下载漏洞。

2.利用方式:

1.下载常规的配置文件

2.下载各种.log文件

3.下载业务文件进行代码审计,找出漏洞进一步打下服务器

3.举例:pikachu不安全的文件下载

我们点击下载,

右击复制下载链接:

科比:http://pikachu-master/vul/unsafedownload/execdownload.php?filename=kb.png

其它同理。

艾伦:http://pikachu-master/vul/unsafedownload/execdownload.php?filename=ai.png

发现链接形式(execdownload.php?filename=)

与文件下载漏洞(download.php?filename=)相符。

证明我们可以在此构造url下载服务器/本地的任意文件。

服务器:对皮卡丘网站,它都服务器为搭建皮卡丘靶场的盘(我的是D盘)

本地:C盘。

分析:

url:http://pikachu-master/vul/unsafedownload/execdownload.php?filename=ai.png

对应D:\phpstudy_pro\WWW\pikachu-master\vul\unsafedownload\download

1.我们在**pikachu-master/vul/unsafedownload/**路径下添加一个图片a.png

返回靶场下载:

http://pikachu-master/vul/unsafedownload/execdownload.php?filename=ai.png

下载成功。

  1. 我们在pikachu-master路径下添加一个图片a.png

返回靶场下载:

http://pikachu-master/vul/unsafedownload/execdownload.php?filename=../../../a.png

向上../返回三个目录

下载成功。

接着我们试试其它文件

http://pikachu-master/vul/unsafedownload/execdownload.php?filename=../../../.DS_Store

下载成功。

4.逆向:

通过改变download.php?filename=的路径我们可以下载/pikachu-master/vul/unsafedownload/三个目录中的任意文件。

5.防护策略:

严格的验证和过滤:只允许下载经过白名单列出的特定文件类型,这可以有效阻止用户下载私密文件。

**随机文件名和存储路径:**为上传和下载的文件生成随机的文件名和存储路径,以防止攻击者预测或猜测文件的存储位置。

**使用防火墙:**防火墙waf可以记录所有文件下载行为,进而阻止那些试图绕过正常访问控制或下载敏感文件的请求。


总结

文件上传漏洞是指hacker利用网站或web应用系统中用户上传文件的功能,在上传过程中上传恶意文件,这些恶意文件在服务器端被解析时产生漏洞,从而导致攻击者能够在服务器上执行任意代码的一种安全漏洞。

相关推荐
天平5 小时前
油猴脚本创建webworker踩坑记录
前端·javascript·typescript
米小虾9 小时前
AI Agent 安全实战指南:当智能体开始"不听话",开发者该如何应对?
人工智能·安全·agent
山河木马11 小时前
渲染管线-计算得到gl_Position(顶点着色器)之后续GPU流程
javascript·webgl·图形学
竹林81811 小时前
用 The Graph 查询链上数据实战:从手搓 RPC 到 Subgraph,我的 NFT 项目数据加载快了 10 倍
前端·javascript
kyriewen14 小时前
别再每次都 Google 了:我整理了前端日常最常踩的 10 个 Git 坑,附速查表
前端·javascript·git
SmartBoyW15 小时前
深入ECMAScript规范:彻底搞懂JS隐式类型转换与底层ToPrimitive机制
前端·javascript
用户8524950718416 小时前
解密 JavaScript 中的 this:谁才是真正的调用者?
javascript·面试
Heo16 小时前
Vite进阶用法详解
前端·javascript·面试
铁皮饭盒17 小时前
Next.js 风格路由内置?Bun FileSystemRouter 凭啥这么香
javascript
小林ixn18 小时前
别再背八股了!从 5 个真实场景彻底搞懂 JavaScript 的 this
javascript