1.客户端检测与绕过之删除浏览器事件
调用 checkFile()函数,使其只能上传图片格式,将红框内删除即可
2. 客户端检测与绕过之抓包修改后缀名
将上传的文件末尾加上 .jpg ,开启Burspsuite抓包,抓到包之后,将 .jpg 删除,放行包即可
3.后缀名检测与绕过之大小写绕过
将脚本文件1.php更改为1.Php即可
4. 后缀名检测与绕过之名单列表绕过
将脚本文件1.php更改为1.php3或者1.phtml,再次选择脚本文件
5.后缀名检测与绕过之Windows特性(末尾的点【.】)绕过
开启Burspsuite抓包,抓到包之后,在1.php后添加 . ,放行包即可
6.后缀名检测与绕过之Windows特性(空格【】)绕过
开启Burspsuite抓包,抓到包之后,在1.php后添加空格,放行包即可
7. 后缀名检测与绕过之Windows特性(::$DATA)绕过
开启Burspsuite抓包,抓到包之后,在1.php后添加::$DATA,放行包即可
8.后缀名检测与绕过之.htaccess文件攻击
新建.htaccess文件
当.htaccess文件内容如下,会将内容符合 php语法规则的文件当作 php文件解析
SetHandler application/x-httpd-php
先上传.htaccess文件,再上传将1.php修改为1.jpg的文件
9.MIME类型检测与绕过
Mime-Type | application/x-javascript | text/html | image/jpeg | image/png | application/pdf |
文件扩展名 | .js | .html | .jpg | .png |
将 application/octer-stream修改为image/jpeg,放行包即可
10.文件内容检测与绕过之文件幻数
添加文件头(比如GIF文件头)
11.文件内容检测与绕过之图片马
将1.php文件与图片2.jpg放进同一个文件夹内,在该目录下cmd
这句命令有很强的顺序规范性,否则执行不成功,必须要注意以下两点:
1.图片文件名称一定要先敲,代码文件名称一定要放后面
2.图片文件名称一定接“/b”,“/b”代表这是一个二进制文件
将生成的3.jpg上传即可
12.基于POST方式的00截断绕过
上传1.php文件,并用Burpsuite抓包
按图修改后,放行包即可
13.基于GET方式的00截断绕过
将1.php修改为1.jpg,上传,抓包
在save_path=../upload/后添加 1.php%00 ,放行包即可