文件上传绕过方法总结记录
#前端验证,仅检查header,更改请求绕过
有的站点仅仅在前端检测了文件类型,这种类型的检测可以直接修改网络请求绕过。
同样的,有的站点在后端仅检查了HTTP Header中的信息,比如 Content-Type 等,这种检查同样可以通过修改网络请求绕过。
#Magic检测绕过
有的站点使用文件头来检测文件类型,这种检查可以在Shell前加入对应的字节以绕过检查。
类型二进制值
JPGFF D8 FF E0 00 10 4A 46 49 46
GIF47 49 46 38 39 61
PNG89 50 4E 47
TIF49 49 2A 00
BMP42 4D
#后缀绕过
PHP - php / php5 / pht / phtml / shtml / pwml / phtm
JSP - jspx / jspf / jspa / jsw / jsv / jtml
asp - asa / asax / cer / cdx / aspx / ascx / ashx / asmx / asp{80-90}
#系统命名绕过
Windows - index.php. 会重命名为 . ,可以绕过后缀检查。也可尝试 index.php%20 , index.php:1.jpg index.php::$DATA 等
Linux - 可以尝试上传名为 index.php/. 或 ./aa/../index.php/. 的文件
#boundary后加空格
#解析漏洞
iis6分号截断asp.asp;asp.jpg
Nginx<8.03+IIS7-7.5(Fast-CGI开启、访问路径qq.com/1.jpg/.php)
apache解析漏洞php.php.ddd
boundary和content-disposition中间插入换行
hello.php:a.jpg然后hello.<<<
filename=“a.txt”;filename=“a.php”(绕狗)
#文件名处回车
filename="a.phnp"
.htaccess文件
a.jpg.nphp
php<5.3 单双引号截断特性
head头的content-type: tab
head头的content-type: multipart/form-DATA
filename后缀改为大写
head头的Content-Type: multipart/form-data;n
.asp空格
.asp0x00.jpg截断
#软链接任意读文件
上传的压缩包文件会被解压的文件时,可以考虑上传含符号链接的文件 若服务器没有做好防护,可实现任意文件读取的效果
来玩
欢迎进群吹水交流~~~、
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...