提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
浅析文件上传%00截断绕过姿势
一、绕过上传漏洞姿势
1.文件名大小写绕过
用像Asp,Php之类的文件名绕过黑名单检测
2.名单列表绕过 php1 php2 php3 php9 phtml
用黑名单没有的名单进行攻击,比如黑名单没有的php1-9,phtml
3.特殊文件名绕过
比如发送的http包里面吧文件名改成test.asp或test,asp(下划线为空格),这种命名方式在windows系统里面是不被允许的,所以需要在burp之类里进行修改,然后绕过验证后,会被windows系统资助去掉后面的点和空格,需要注意Unix/Linux没有这种特性
4.%00截断绕过
5.Windows流文件绕过shell.php::$Data
6.解析调用,漏洞绕过
7.中间件绕过。上传.htaccess(apache)或者.user.ini(nginx)
二、靶场演示
`
拿uploadlab第11关做演示,先上传一个jpg格式的免杀马
我们这里抓个包文件后缀改成.php发现他只允许上传.jpg|.png|.gif类型文件!白名单限制死了换个思路
看POST /uploadlab/Pass-11/index.php?save_path=…/upload/ HTTP/1.1 这里路径可控如果拼接save_path=…/upload/123.php就相当于上传了一个123.phpsqzr.jpg
接下来想办法吧后面的sqzr.jpg去掉用%00截段
知道路径upload/123.php蚁剑连接成功
总结
%00姿势利用操作系统概念,操作系统会把%00理解成截段符号只保存前面的123.php