Frieza

MS08067安全实验室

  博客园  :: 首页  :: 新随笔  :: 联系 ::  :: 管理

为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名,攻击者可利用此漏洞枚举网络服务器根目录中的文件

  • 当我们访问一个长名称目录的时候:http://127.0.0.1/administrator
  • 这个administrator目录可以简写为admini~1
  • 根据这个上述格式,我们访问/admini~1也可以相当于访问administrator

产生:

Windows系统为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名.且这种特性被IIS中间件继承.

范围:

以IIS为中间件的asp网站(网站URL以<.asp,.aspx>为后缀结尾)

测试:

若:

则:

  • 网站可能存在IIS短文件枚举漏洞

注:

  • 在IIS不同版本中,返回的参数会有略微差别

工具:

  • nmap -Pn --script http-iis-short-name-brute

修复

百度方案:

  1. 禁止url中使用“~”或它的Unicode编码;
  2. 关闭windows的8.3格式功能;
  3. 将.NET Farrmework升级至4.0

最终的方案(仅作参考):

  1. 修改注册表项:(重启服务器生效)
    HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation
    值为1;
  2. 执行DOS命令, fsutil behavior set disable8dot3 1;
  3. 删除现有的IIS目录重新部署,完成此步骤才能完全修复
posted on 2021-03-30 14:03  Frieza_021  阅读(845)  评论(0编辑  收藏  举报