第一关
第二关
直接上传一个php文件
用burp suite抓包,然后改包,将文件类型改为image/png。
Content-Type: image/png,然后上传成功
第三关
不准上传php结尾的文件,那就上传以php5结尾的文件。
在Apache的配置文件里找到红色框框里的那一行,把前面的注释去掉,后面加上.php5
保存后重启Apache服务
第四关
利用Apache的漏洞,先上传一个.htaccess文件
首先新建一个txt文件,在里面输入:SetHandler application/x-httpd-php
,这行命令的意思就是将后续上传的文件不管任何后缀名都按照php进行执行,我这里把文件命名为123.txt
然后保存,把文件改为.htaccess文件
打开cmd,进入123.txt文件保存的位置,我这里是在桌面上。
cd C:\Users\50153\Desktop
rename 123.txt .htaccess
然后先上传.htaccess文件
再上传木马文件,这里是234.png
如果出现这个,提示你权限不够。没关系,其实文件已经执行了
第五关
看源码,大小写的后缀名没有过滤完全,比如PHP
抓包,将后缀改为PHP
就可以了
第六关
没有首位去空,可以抓包,把png改为php,然后在末尾加上空格
因为windows会自动把文件后缀后面的空格去掉(可以在windows里面把一个txt
文件,后缀改成txt 空格
,会发现保存后又自动改回txt)
但是php的源码黑名单里面txt
与txt 空格
是不一样的
第七关
这一关可以在后缀名后面加上 .
因为windows的特性,会自动去掉后缀名最后的 .
(比如1.txt.
=1.txt
)
第八关
在后缀名加入::$DATA,实现将当前文件不会进行黑、白名单检测
::$DATA :将文件转换为windows的文件流形式
(此种方法仅仅针对windows平台+php语言的站点才有效
)
这一关要注意的一点就是在用菜刀连接的时候,要把链接后面的::$data
去掉
第九关
文件名后缀改为php,并在后面加上. .
(点+空格+点)
第十关
可以双写绕过,后缀改为pphphp