漏洞成因
IIS 6.0 在处理含有特殊符号的文件路径时会出现逻辑错误,从而造成文件解析漏洞。一般配合服务器的文件上传功能使用,以获取服务器的权限。
IIS6.0在网站下对创建目录格式没有做严格的过滤限制措施,导致目录解析漏洞。
漏洞类型
文件解析漏洞、目录解析漏洞
漏洞细节
验证有哪些文件格式被IIS6.0当做asp格式执行?
从上述测试结果来看,IIS6.0下可执行的文件格式有.asp、.asa、.cer;只有后缀为.cdx格式的文件无法被解析。
文件解析漏洞复现
在已经启动的网站下文件夹的名为 .asp、.asa 、.cer的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行
当文件名后缀出现 ";" 和"."时后面格式会被截断,只解析分号前面的部分,如下图的所示:
再尝试一个例子依旧如此
目录解析漏洞复现
在我尝试直接给iis.asp文件后面加"/"时,出现如下限制:
创建目录iis.asp,设置如下:
访问如下:
再测试一个例子依旧如此
发现"/"后面再次被截断了,服务器将iis.asp文件夹当做iis.asp进行了解析。
小结:在web目录下,";" "." "/"均可以当做截断,IIS6.0只解析这些符号前面的可解析文件
漏洞防御
目录解析漏洞
禁止在网站目录下创建目录,或者创建目录名规则中禁止含符号"."
文件解析漏洞
对文件名命名进行限制、过滤,如:*/*.asp/*、*\*.asp\*等方式,
限制上传脚本文件的执行权限