Upload-labs 1-19关 靶场通关全攻略上下(11-19关)(最细没有之一)

目录

Pass-11 目录可控%00 截断绕过上传(GET)

文件上传参数目录可控攻击

Pass-12目录可控%00 截断绕过上传(POST)

post 下直接注入%00 是不行的,需要把%00 编码变成空白符,截断才有效,才能把目录截断成文件名。改完然后放行。

Pass-13 文件头检测绕过上传

本关会读取判断上传文件的前两个字节,判断上传文件类型,并且后端会根据判断得到的文件类型重命名上传文件

Pass-14

Pass-15攻击方法同13,14一样

Pass-16 绕过图片二次渲染攻击

首先判断图片是否允许上传 gif,gif 图片在二次渲染后,与原图片差别不会太大。 所以二次渲染攻击最好用 gif 图片 图片马;

Pass-17 文件上传条件竞争漏洞绕过

在文件上传时,如果逻辑不对,会造成很大危害,例如文件上传时,用 move_uploaded_file 把上传的临时文件移动到指定目录,接着再用 rename 文件,设置图片格式,如果在 rename 之前 move_uploaded_file 这个步骤 如果这个文件可被客户端访问,这样我们也可以获取一个 webshell;

Pass-18

Pass-19 文件名可控绕过上传

文件上传时,文件名可被客户端修改控制,会导致漏洞产生;


Pass-11 目录可控%00 截断绕过上传(GET)

代码中使用白名单限制上传的文件后缀名,只允许指定的图片格式。但是$_GET['save_path']服务器接受 客户端的值,这个值可被客户端修改。所以会留下安全问题;

文件上传参数目录可控攻击

上传参数可控

    • 当 gpc 关闭的情况下,可以用%00 对目录或者文件名进行截断;
    • php 版本小于 5.3.4 ;

注意:需要magic_quotes_gpc=off,才可以

首先截断攻击,抓包上传将%00 自动截断后门内容

例如 1.php%00.1.jpg 变成 1.php

显然我们直接上传1.php是不行的,告诉我们只允许上传.jpg|.png|.gif类型文件!

所以我们把1.php文件改为1.jpg,然后进行截断攻击,抓包上传将%00 自动截断后门内容。

例如 1.php%00.1.jpg 变成 1.php

此时发现我们的1.jpg文件上传成功变为1.php文件,然后访问1.php。

访问成功!

Pass-12目录可控%00 截断绕过上传(POST)

我们还是先上传jpg文件,然后进行抓包,

post 下直接注入%00 是不行的,需要把%00 编码变成空白符,截断才有效,才能把目录截断成文件名。改完然后放行。

没有报错,上传成功!

然后访问1.php。

Pass-13 文件头检测绕过上传

getReailFileType 是检测 jpg、png、gif 的文件头;

本关会读取判断上传文件的前两个字节,判断上传文件类型,并且后端会根据判断得到的文件类型重命名上传文件
 

使用 图片马 + 文件包含 绕过,所以我们准备两个文件。

我们先将include.php放到upload-labs下,然后我们访问一下文件

我们上传php.php.php.jpg文件,上传成功,右键打开新建标签页打开图像,复制路径。

  

然后我们在刚刚访问的include.php后拼接:

?file=upload//7320240726200254.gif

复制整个链接利用工具连接,这里我使用的工具是中国菜刀,没有可以私信我。

http://127.0.0.1/upload-labs/include.php?file=upload//

连接成功

Pass-14

同13关一样,上传文件拼接链接,工具连接

 

Pass-15攻击方法同13,14一样

Pass-16 绕过图片二次渲染攻击

首先判断图片是否允许上传 gif,gif 图片在二次渲染后,与原图片差别不会太大。 所以二次渲染攻击最好用 gif 图片 图片马;

这关我们需要准备一个一下文件,需要的可以私信我。

我们直接上传该文件,可以看到上传成功。

以下步骤和13关一样不细说了,跟着图做吧。

   

Pass-17 文件上传条件竞争漏洞绕过

在文件上传时,如果逻辑不对,会造成很大危害,例如文件上传时,用 move_uploaded_file 把上传的临时文件移动到指定目录,接着再用 rename 文件,设置图片格式,如果在 rename 之前 move_uploaded_file 这个步骤 如果这个文件可被客户端访问,这样我们也可以获取一个 webshell;

我们首先创建一个1.php作为上传文件,里面内容如下:

<?php @fputs(fopen('123.php',w),'<?php phpinfo();?>');?>

因为我们正常上传文件会直接被删,这里我就不演示了。我们直接上传文件,burp抓包,发送到 intruder 模块,设置无限发送空的payloads,线程调高一点;

  

开始攻击,然后我们访问我们的1.php,疯狂刷新页面。页面显示Access denied代表123.php上传上去了。

成功访问123.php

Pass-18

和13一样一样的,上传个图片即可

然后还是用工具连接。

Pass-19 文件名可控绕过上传

文件上传时,文件名可被客户端修改控制,会导致漏洞产生;

访问成功!

需要工具或者有任何问题私信我。

                                                                                                                                          Meet.meet

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用\[1\]中的内容,通关upload-labs的第19的方法如下: 1. 打开18的myupload.php文件,进行修改,确保上传的图片可以放到upload文件夹下。 2. 与第17类似,这还会检测文件的后缀名,所以需要上传一个图片马,而不是直接上传php文件。 3. 上传一个名为22.gif的图片,并进行抓包。 4. 进行与第17相似的攻击过程,点击"Start Attack"按钮。 5. 完成以上步骤后,即可成功通关19。 以上是通关upload-labs第19的方法。根据引用\[2\]中的内容,这些方法在实战中可能会有所不同,但基本原理是相似的。希望这些方法能对你的学习有所帮助。 #### 引用[.reference_title] - *1* *2* [upload-labs详解1-19通关全解(最全最详细一看就会)](https://blog.csdn.net/qq_53003652/article/details/129969951)[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^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [upload-labs通关](https://blog.csdn.net/as604049322/article/details/127418017)[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^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值