IIS简介:
Internet Information Services 互联网信息服务是Microsoft公司提供的可扩展Web服务器。支持HTTP、HTTP/2,HTTPS、FTP、FTPS、SMTP和NNTP等。起初用于WindowsNT系列,随后内置在Windows2000、Windows XP Home 版本上并没有IIS。IIS目前只适用于Windows系统、不适用于其他操作系统他操作系统
IIS短文件:
此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息
短文件规则:
查看当前文件夹的段文件:在cmd中 执行dir /x
1.只显示前6位的字符,后续字符用~1代替。其中数字1是可以递增。如果存在文件名类似的文件,则前面的6个字符是相同的,后面的数字进行递增
2.后缀名最长只有3位,超过3位的会生成短文件名,且后缀多余的部分会截断
3.所有小写字母均转换成大写的字母
4.长文件名中包含多个”.”的时候,以文件最后一个”.”作为短文件名的后缀
5.长文件名前缀/文件夹名字符长度符合0-9和A-Z、a-z范围且需要大于等于9位才会生成短文件名,如果包含空格或者其他部分特殊字符,不论长度均会生成短文件
IIS漏洞产生原因:
该漏洞的产生原因来源于服务器配置不当造成,利用IIS PUT Scaner扫描有漏洞的iis,此漏洞主要是因为服务器开启了webdav的组件导致的可以扫描到当前的操作,具体操作其实是通过webdav的OPTION来查询是否支持PUT
漏洞利用
1、猜测文件全名
1)通过IIS短文件漏洞猜测出来的短文件名称,需要继续猜测出全名才可以在IIS上进行访问(即IIS由于安全原因不支持短文件名访问)
2)通过对目标网站或同类型网站进行爬虫,爬出建立一个字典库,再与得到的短文件名来猜剩下的字符 ;
3)利用fuzzdb(一个应用程序模糊测试(fuzzing)数据库)来猜解;
结合OWASP的dirbuster(一款路径及网页暴力破解的工具)
2.短文件特性软件(Apache、Wordpress):
例如,backup_20180101.sql,其短文件是BACKUP~1.SQL
3.绕过Basic and Windows认证 / 后台
在某些IIS服务器配置下,可以绕过Basic and Windows认证,猜解出认证目录下的文件。
利用IIS漏洞可以进行多种攻击和非法操作。在文件解析漏洞的情况下,攻击者可以通过上传一个特殊的文件,使其被解释成脚本文件并执行。这可能导致以下几种危险行为:
执行恶意代码:攻击者可以注入恶意代码,例如通过创建一个能够执行系统命令的脚本文件,从而控制服务器或者在服务器上执行其他危险的操作。
获取服务器敏感信息:攻击者可以读取服务器上的敏感信息,例如数据库凭证、配置文件等,从而进一步渗透到系统中。
破坏服务器功能:攻击者可以上传恶意文件,通过执行恶意代码破坏服务器的功能或导致拒绝服务攻击,使服务器无法正常运行。
窃取用户信息:攻击者可以通过恶意代码窃取用户的敏感信息,例如登录凭证、个人资料等。
扩大攻击面:攻击者可以利用服务器的漏洞,通过横向移动攻击其他系统或网络。
修复建议
1、cmd关闭NTFS 8.3文件格式的支持
2、修改注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式
此方法只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除,需要重新复制才会消失
以下两种方法仅适用于缓解GET 方法,其他方法依旧可以猜解
3、关闭Web服务扩展- ASP.NET
4、升级netFramework至4.0以上版本