短文件名漏洞-处置方法

作者:vkvi 来源:ITPOW(原创) 日期:2016-8-8

“IIS 短文件和文件夹泄漏漏洞”最近被炒得很火热,因为像以前什么注入漏洞、跨站脚本攻击炒过了之后,自然要炒个新的概念出来才对得起买他们安全设备的客户。

其实这个的意思就是更方便猜测我们的网站上有哪些文件。

如果我们的网站文件不保密、如果我们的网站文件无漏洞,那这个就无所谓漏洞了。

其实就好像是做生意的,把门牌号贴到网上,并不算不安全。

但如果是个秘密基地,把门牌号贴到网上,就算不安全了。

当然安全厂商是不管这些的,好不容易抓住一个所谓的漏洞,当然要宣传宣传。

具体就是网址访问:*~1*\a.aspx,能响应,不管是不是 404,它就认为中危漏洞存在。

这个源由是 Windows 为了兼容以前 DOS 的短文件名设置的(以前文件名只能 8 个字符 + 3 个扩展名)。

要关闭这个有两个方法:

法一、关闭这个兼容设置,对新文件有效,对老文件的话,据说设置后要剪切出来再复制回去才生效。

先在命令提示符中输入:fsutil.exe 8dot3name query

一般结果是这个:NtfsDisable8dot3NameCreation 的注册表状态为默认值 2 (卷级别设置)。

就是说不同卷单独设置。

我们再输入这个命令:fsutil.exe 8dot3name set 1

意思就是将值设置为 1,就是说:禁用所有卷上的 8dot3 名称创建。

直接操作注册表是:HKLM\SYSTEM\CurrentControlSet\Control\FileSystem 下面有一个名为 NtfsDisable8dot3NameCreation 的 DWORD 值。具体请参见:微软的 NtfsDisable8dot3NameCreation

法二、直接在 IIS 中禁。

IIS 是有个 URL 重写,老版本 IIS 需要单独下载这个插件,新版本的话,新版本就没那么麻烦了。

URL 重写

没有 URL 重写?IIS URL Rewrite(URL 重写)-初探

进入后,写一个规则禁止 URL 中含有 ~。

禁止 URL 中含有 ~

也可在 web.config 的 system.webServer 下 rewrite 中配置(.NET Framework 3.5 及以下在 Visual Studio 中不认,在 IIS 中安装上述重写模块后,认)。

相关文章