为了兼容老版本系统,windows可使用8.3格式的短文件名,在cmd下通过dir /x可以查看短文件名。当使用不同的攻击向量作 为文件名(如*、~等符号)向IIS服务器发起请求时,由于服务器对存在文件和不存在文件的响应有差异,攻击者可利用此差异 探测服务器上的目录名和文件名,以此循环往复,可导致敏感目录名和文件名被猜解泄露,并有可能造成对NET.Framework的 拒绝服务攻击。
工具检测:
https://github.com/lijiejie/IIS_shortname_Scanner
https://github.com/irsdl/IIS-ShortName-Scanner
1、关闭windows的短文件名机制,在注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
中选择NtfsDisable8dot3NameCreation键(不存在则新建),将其设置为1。 WEB站点需要将内容拷贝到另一个位置,如
D:\www到D:\www.back,然后删除原文件夹D:\www,再重命名D:\www.back到D:\www。如果不重新复制,已经存在的短
文件名则是不会消失的。
2、升级net framework 至4.0以上版本。