还是用上述方法对比不同,发现第八关对比于前面一关少了去除字符串应该就是抓包在后缀加上::
D
A
T
A
了
在
我
查
询
后
发
现
:
p
h
p
在
w
i
n
d
o
w
的
时
候
如
果
文
件
名
+
"
:
:
DATA了 在我查询后发现:php在window的时候如果文件名+"::
DATA了在我查询后发现:php在window的时候如果文件名+"::DATA“会把::
D
A
T
A
之
后
的
数
据
当
成
文
件
流
处
理
,
不
会
检
测
后
缀
名
.
且
保
持
”
:
:
DATA之后的数据当成文件流处理,不会检测后缀名.且保持”::
DATA之后的数据当成文件流处理,不会检测后缀名.且保持”::DATA"之前的文件名 他的目的就是不检查后缀名 抓包,修改上传成功,用蚁剑连接即可
我们查看一下源码发现
f
i
l
e
n
a
m
e
=
s
t
r
i
r
e
p
l
a
c
e
(
file_name = str_ireplace(
filename=strireplace(deny_ext,"", $file_name); 这个代码的意思就是把带有黑名单中的后缀替换为空。 这时我们考虑双写绕过。如上传的66.pphphp就会变成66.php绕过 直接上传成功了,用蚁剑连接即可
查看提示我们知道,只检查图标内容的前两个字节,所以我们在一句话木马前加上GIF 89A就可以转换成为gif文件了。 直接上传这个文件,发现上传成功,但是是gif格式的这时需要我们写一个include.php传入,来解析图片 这时源码<?php /* 本页面存在文件包含漏洞,用于测试图片马是否能正常运行! */ header(“Content-Type:text/html;charset=utf-8”); $file =
G
E
T
[
′
f
i
l
e
′
]
;
i
f
(
i
s
s
e
t
(
_GET['file']; if(isset(
GET[′file′];if(isset(file)){ include $file; }else{ show_source(file); } ?> 将它放入upload-labs里面(跟之前建的upload文件夹在同一级别下,后面就知道为啥了) 然后我们来解析gif文件 http://127.0.0.1/upload-labs/upload/include.php?file=upload/文件名 解析时看路径就知道include.php跟upload同级了 解析成功后就可以用蚁剑直接连接了。