zoukankan      html  css  js  c++  java
  • IIS短文件名枚举漏洞

    1.1.1  漏洞描述

    为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名。 在Windows下查看对应的短文件名,可以使用命令 dir /x

     

    只有前六位字符直接显示,后续字符用~1指代。其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同)。后缀名最长只有3位,多余的被截断。我们可以在启用.net的IIS下暴力列举短文件名,原因是:

    访问构造的某个存在的短文件名,会返回404

    访问构造的某个不存在的短文件名,会返回400

    1.1.2  漏洞测试

     

    1.1.3  漏洞利用

     

    1.1.4  漏洞修复

    通用有效方法:

    禁用windows系统中的短文件名功能。

    打开注册表并打开此目录 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem

    修改 NtfsDisable8dot3NameCreation 的值为1 。

    修改完成后,需要重启系统生效。

    2)简单有效方法:CMD命令

    Windows Server 2008 R2

    查询是否开启短文件名功能:fsutil 8dot3name query

    关闭该功能:fsutil 8dot3name set 1

    Windows Server 2003

    关闭该功能:fsutil behavior set disable8dot3 1

    3)手动验证

    新建文件夹并创建几个文件,打开CMD进入该文件夹呢执行dir /x 检测,看不到有显示短文件名则成功。

    注: 1.Windows Server 2003修改后需要重启服务器生效!

       2.已存在的文件短文件名不会取消,只对以后创建的文件有效!

       3.WEB站点需要将内容拷贝到另一个位置,

       如D:www到D:www.back,然后删除原文件夹D:www,再重命名D:www.back到D:www。

       如果不重新复制,已经存在的短文件名则是不会消失的。

  • 相关阅读:
    Redis-10 Bitmap位图基本操作
    Redis学习-09 hyperloglog基本操作
    Redis学习-08 Geospatial地理位置详解
    Redis学习-07 Zset有序集合
    Redis学习-06 Hash哈希基本操作
    部分知识路径
    Docker 容器中安装vi、ifconfig、ping命令
    Java new一个对象的过程超级详解
    SVN
    创建ssm项目
  • 原文地址:https://www.cnblogs.com/guohu/p/14103582.html
Copyright © 2011-2022 走看看