精华内容
下载资源
问答
  • 如何禁用短文件名功能
    千次阅读
    2019-02-28 15:43:43

    漏洞的成因

    为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名。

    在Windows下查看对应的短文件名,可以使用命令dir /x

    比如,我在D盘下创建了一个名为aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.html文件:

    D:\>dir /x
     驱动器 D 中的卷是 Data
     卷的序列号是 3EDF-2E00
    
    D:\ 的目录
    
    2014/10/11  13:08   256,515,706   2014101.sql
    2014/10/13  17:01   0 AAAAAA~1.HTM aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.html
         2 个文件    256,515,706 字节
         0 个目录 107,017,154,560 可用字节
    

    观察命令结果,可以看到,其对应的短文件名 AAAAAA~1.HTM。该短文件名有以下特征:

    (1)只有前六位字符直接显示,后续字符用~1指代。其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同)。
    (2)后缀名最长只有3位,多余的被截断。

    我们可以在启用.net的IIS下暴力列举短文件名,原因是:

    (1)访问构造的某个存在的短文件名,会返回404
    (2)访问构造的某个不存在的短文件名,会返回400

    【这个漏洞的意义何在】:

    (1)猜解后台地址
    (2)猜解敏感文件,例如备份的rar、zip、.bak、.SQL文件等。
    (3)在某些情形下,甚至可以通过短文件名web直接下载对应的文件。比如下载备份SQL文件。

    举个例子,有一个数据库备份文件 backup_20180101.sql ,它对应的短文件名是 backup~1.sql 。因此攻击者只要暴力破解出backup~1.sql即可下载该文件,而无需破解完整的文件名。

    漏洞的利用

    手工猜解

    漏洞的利用,需要使用到通配符*。在windows中,*可以匹配n个字符,n可以为0。判断某站点是否存在IIS短文件名暴力破解,构造payload,分别访问如下两个URL:

    1. http://www.target.com/*~1****/a.aspx
    2. http://www.target.com/l1j1e*~1****/a.aspx

    在这里插入图片描述
    服务器返回404。
    在这里插入图片描述
    服务器返回400。

    这里我使用了4个星号,主要是为了程序自动化猜解,逐个猜解后缀名中的3个字符,实际上,一个星号与4个星号没有任何区别(上面已经提到,*号可以匹配空)。

    如果访问第一个URL,返回404。而访问第二个URL,返回400。 则目标站点存在漏洞。

    判断漏洞存在后,继续猜解目录下是否存在一个a开头的文件或文件夹,访问: http://www.target.com/a*~1****/a.aspx 如果存在,将返回404。

    如此反复,不断向下猜解完所有的6个字符。猜解完之后,得到的序列应该类似:http://www.target.com/abcdef*~1****/a.aspx

    到了这一步,需要考虑两种情况,如果以abcdef开头的是一个文件夹,则 http://www.target.com/abcdef*~1/a.aspx 将返回404。

    如果abcdef开头的是一个文件,则自动提交:http://www.target.com/abcdef*~1*g**/a.aspx 用a-z的26个字母替换上述g的位置,应该能得到多个404页面。(记住一点,404代表的是存在。)如果下面的地址返回404,http://www.target.com/abcde*~1*g**/a.aspx 则代表扩展名中肯定存在g。

    按照上面的思路,继续猜解g后面的字符,直到后缀名中的3个字符都猜解完,就可以了。

    工具验证

    在这里插入图片描述
    使用IIS短文件名泄漏利用工具对漏洞进行利用:
    在这里插入图片描述
    漏洞修复以后:
    在这里插入图片描述

    漏洞的局限

    这个漏洞的局限有几点:
    1、此漏洞只能确定前6个字符,如果后面的字符太长、包含特殊字符,很难猜解;
    2、如果文件名本身太短(无短文件名)也是无法猜解的;
    3、需要IIS和.net两个条件都满足;
    4、不支持中文文件名,包括中文文件和中文文件夹。一个中文相当于两个英文字符,故超过4个中文字会产生短文件名,但是IIS不支持中文猜测。

    漏洞的修复

    1. CMD关闭NTFS 8.3文件格式的支持

    举例:(1代表关闭,0代表开启)

    Windows Server 2008 R2:

    查询是否开启短文件名功能:fsutil 8dot3name query
    关闭该功能:fsutil 8dot3name set 1
    

    Windows Server 2003:

    关闭该功能:fsutil behavior set disable8dot3 1
    

    不同系统关闭命令稍有区别,该功能默认是开启的,对于大多数用户来说无需开启。

    1. 修改注册表禁用短文件名功能

    快捷键Win+R打开命令窗口,输入regedit打开注册表窗口

    找到路径:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式

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

    注:此方法只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除,需要重新复制才会消失。

    以下两种方法仅适用于缓解GET 方法,其他方法依旧可以猜解。

    1. 关闭Web服务扩展- ASP.NET

    2. 升级netFramework至4.0以上版本

    漏洞的复现

    1、漏洞环境搭建

    基于Win 10安装默认IIS 10.0 (未安装APS.NET)
    IIS短文件漏洞扫描Java程序(需要配置Java环境变量)
    

    2、漏洞环境调试准备

    IIS 安装成功以后,会默认在C盘目录下生成intpub目录,网站的根目录位于C:\inetpub\wwwroot,此时查看下根目录是否存在短文件名:
    在这里插入图片描述

    由上图可知,默认IIS 10.0 网站根目录不存在短文件名,只有默认的htm和png文件,且名称长度未达到生成短文件的要求。下面使用IIS短文件扫描程序检测下有无短文件信息泄漏漏洞:
    在这里插入图片描述
    3、漏洞环境复现

    手动创建网站长文件名“IIS10test.html” ,自动生成对应短文件名“IIS10T~1.HTM”
    在这里插入图片描述
    使用IIS短文件扫描程序再次扫描,扫描发现存在短文件漏洞,且通过HTTP OPTIONS方法成功猜解出短文件名称:IIS10T.HTM
    在这里插入图片描述
    修改漏洞扫描程序,注视掉OPTIONS方法,尝试是否还有其他HTTP方法可以猜解成功。
    在这里插入图片描述
    验证发现,除了OPTIONS方法外,HTTP TRACE方法也能成功猜解出短文件名称。

    更多相关内容
  • 2021-06-21

    2021-06-21 14:00:55
    短文件名猜解漏洞介绍及成因漏洞修复3、远程代码执行漏洞介绍及成因:漏洞修复4、解析漏洞介绍及成因:IIS6.0漏洞复现:利用方式1:IIS6.0漏洞复现:利用方式2IIS7.5 文件解析漏洞:漏洞修复:二、 Apache1、解析漏洞介绍...


    一、IIS

    IIS的安全脆弱性曾长时间被业内诟病,一旦IIS出现远程执行漏洞威胁将会非常严重。远程执行代码漏洞存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HTTP 请求时会导致此漏洞。成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任意代码,可以导致IIS服务器所在机器蓝屏或读取其内存中的机密数据.

    1.PUT漏洞介绍及成因:

    IIS Server在Web服务扩展中开启WebDAV ,配置了可以写入权限,造成任意文件上传,受影响版本:IIS6.0,漏洞复现:开启WebDAV和写入权限.
    在这里插入图片描述
    在这里插入图片描述

    PUT漏洞修复

    关闭WebDAV和写入权限.

    2.短文件名猜解漏洞介绍及成因

    IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个存在的短文件名,会返回404,访问构造的某个不存在的短文件名,返回400,漏洞复现:在网站根目录下添加aaaaaaaaaa.html文件:

    在这里插入图片描述
    在这里插入图片描述

    漏洞修复

    1.升级.net framework;
    2.修改注册表禁用短文件名功能;
    3.快捷键Win+R打开命令窗口,输入regedit打开注册表窗口,找到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式,修改完成后,需要重启系统生效;
    4.CMD关闭NTFS 8.3文件格式支持;
    5.将web文件夹的内容拷贝到另一个位置,如c:\www到d:\w,然后删除原文件夹,再重命名d:\w到c:\www,

    3、远程代码执行漏洞介绍及成因:

    在IIS6.0处理PROPFIND指令的时候,由于对url的长度没有进行有效的长度控制和检查,导致执行memcpy对虚拟路径进行构造的时候,引发栈溢出,从而导致远程代码执行,漏洞复现:漏洞环境搭建:在Windows server 2003 r2 32位上安装iis6.0,触发漏洞:在本地执行exp,

    漏洞修复

    禁用WebDAV、开启防火墙等防护机制

    4、解析漏洞介绍及成因:

    IIS 6.0在处理含有特殊符号的文件路径时会出现逻辑错误,从而造成文件解析漏洞,漏洞有两种完全不同的利用方式
    IIS7.5 文件解析漏洞

    IIS6.0漏洞复现:利用方式1:

    新建名为 “test.asp”目录,该目录中的任何文件都被IIS当作asp程序执行,特殊符号是 “/”:
    在这里插入图片描述

    IIS6.0漏洞复现:利用方式2

    上传名为 “test.asp;.jpg” 的文件,虽然该文件真正的后缀名是 “.jpg”, 但由于含有特殊符号 “;” ,仍会被 IIS 当做asp程序执行:
    在这里插入图片描述

    IIS7.5 文件解析漏洞:

    test.jpg/.php

    注:URL中文件后缀是 .php ,便无论该文件是否存在,都直接交给 php 处理,而 php 又默认开启 “cgi.fix_pathinfo”, 会对文件进行 “ 修理 ” ,可谓 “ 修理 ” ?举个例子,当 php 遇到路径 “/aaa.xxx/bbb.yyy” 时,若 “/aaa.xxx/bbb.yyy” 不存在,则会去掉最后的 “bbb.yyy” ,然后判断 “/aaa.xxx” 是否存在,若存在,则把 “/aaa.xxx” 当作文件,若有文件 test.jpg ,访问时在其后加 /.php ,便可以把 “test.jpg/.php” 交给 php , php 修理文件路径 “test.jpg/.php” 得到 ”test.jpg” ,该文件存在,便把该文件作为 php 程序执行。

    漏洞修复:

    1.对新建目录文件名进行过滤,不允许新建包含‘.’的文件;
    2.曲线网站后台新建目录的功能,不允许新建目录;
    3.限制上传的脚本执行权限,不允许执行脚本;
    4.过滤.asp/xm.jpg,通过ISApi组件过滤

    二、 Apache

    1、解析漏洞介绍及成因:

    介绍

    Apache默认一个文件可以有多个后缀名,每次识别从右到左识别,当最右边的后缀无法识别时,则继续向左识别。mime.types中记录apache可识别的后缀名。
    举个例子:
    浏览器请求一个文件为a.php.xx时,apache先从.xx识别,但.xx是它不认识的后缀,于是继续向左识别,当识别到.php时,发现该后缀可识别,于是启动php处理器处理。
    但是,php处理器只识别最后一个后缀名,而a.php.xx它是不认识的,所以php处理器不会解析该文件,因此直接返回纯文本内容。

    成因

    Apache文件解析漏洞的是由于用户在配置服务器时,配置不当导致,导致本来非php文件也会被认为php文件处理。

    情况1:

    添加AddHandler,使得任何文件只要包含.php后缀名的文件都会被当作php文件解析
    为了使php文件可以被解析,用户自己添加了AddHandler:“AddHandler application/x-httpd-php .php”

    在这里插入图片描述
    AddHandler的作用是,在apache识别到php文件时,将文件交给php处理器处理时,php处理器不再根据正则表达式去匹配文件后缀,只要文件后缀中包含.php后缀,php处理器都会将该文件作为php文件解析。
    举个例子:
    正常情况下,php处理器只识别最后一个后缀名,所以php处理器是无法识别11.php.xx(a.php.jpg)文件,浏览器请求该文件,服务器会返回纯文本。但添加该handler后,浏览器请求该文件时,文件可正常被解析。

    情况2:

    添加 AddType application/x-httpd-php .jpg,使得.jpg文件被当作php文件解析(此处以.jpg为例,其他后缀文件类似,只要把.jpg修改即可)
    在apache配置文件httpd.conf添加配置AddType application/x-httpd-php .jpg,此时,及时文件是.jpg文件,也同样会被当做php文件解析
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    Apache文件解析漏洞的防御

    apache配置文件中,禁止”.php.”类似的文件执行,即配置文件httpd.conf不使用AddHandler,而在php.conf中写好正则表达式
    在这里插入图片描述
    当然了,也禁止添加 类似于“AddType application/x-httpd-php .jpg”的配置。

    2.目录遍历漏洞介绍及成因

    目录遍历(路径遍历)是由于web服务器或者web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任意的文件(可以使web根目录以外的文件),甚至执行系统命令。
    程序在实现上没有充分过滤用户输入的…/之类的目录跳转符,导致恶意用户可以通过提交目录跳转来遍历服务器上的任意文件。
    在这里插入图片描述

    Apache目录遍历漏洞修复

    1、在服务器端,打开Apache配置文件C:\Program Files\phpStudy\Apache\conf\httpd.conf

    2、在httpd.conf文件中找到 Options +Indexes +FollowSymLinks +ExecCGI 并修改成 Options -Indexes+FollowSymLinks +ExecCGI 并保存;
    3、’重启服务

    Tomcat目录遍历漏洞修复

    修改conf/web.xml
    在这里插入图片描述
    将true 改为false 重启tomcat即可

    三、nginx

    1.nginx解析漏洞

    介绍

    该漏洞与nginx、php版本无关,属于用户配置不当造成的解析漏洞

    成因

    1.由于nginx.conf的如下配置导致nginx把以’.php’结尾的文件交给fastcgi处理,为此可以构造http://ip/uploadfiles/test.png/.php (url结尾不一定是‘.php’,任何服务器端不存在的php文件均可,比如’a.php’),其中test.png是我们上传的包含PHP代码的图片文件。
    在这里插入图片描述
    2、但是fastcgi在处理’.php’文件时发现文件并不存在,这时php.ini配置文件中cgi.fix_pathinfo=1 发挥作用,这项配置用于修复路径,如果当前路径不存在则采用上层路径。为此这里交由fastcgi处理的文件就变成了’/test.png’。

    3、 最重要的一点是php-fpm.conf中的security.limit_extensions配置项限制了fastcgi解析文件的类型(即指定什么类型的文件当做代码解析),此项设置为空的时候才允许fastcgi将’.png’等文件当做代码解析。
    在这里插入图片描述

    漏洞修复

    1、 将php.ini文件中的cgi.fix_pathinfo的值设置为0,这样php再解析1.php/1.jpg这样的目录时,只要1.jpg不存在就会显示404页面

    2、 php-fpm.conf中的security.limit_extensions后面的值设置为.php

    2.nginx目录遍历漏洞简介及成因:

    介绍

    Nginx目录遍历与Apache一样,属于配置方面的问题,错误的配置可到导致目录遍历与源码泄露

    成因

    /etc/nginx/sites-avaliable/default,在如下图所示的位置添加autoindex on/:在这里插入图片描述

    nginx目录遍历漏洞修复

    将/etc/nginx/sites-avaliable/default里的autoindex on改为autoindex off

    3、CRLF注入漏洞简介及成因:

    CRLF是”回车 + 换行”(\r\n)的简称。在HTTP协议中,HTTP Header与HTTP Body是用两个CRLF分隔的,浏览器就是根据这两个CRLF来取出HTTP 内容并显示出来。所以,一旦我们能够控制HTTP 消息头中的字符,注入一些恶意的换行,这样我们就能注入一些会话Cookie或者HTML代码,所以CRLF Injection又叫HTTP Response Splitting,简称HRS。
    参照:CRLF注入

    nginx CRLF漏洞复现:

    可以使用nginx进行错误配置进行模拟复现,nginx错误配置如下图
    在这里插入图片描述

    CRLF注入漏洞修复:

    Nginx的配置文件/etc/nginx/conf.d/error1.conf修改为使用不解码的url跳转.
    过滤 \r 、\n 之类的行结束符,避免输入的数据污染其他 HTTP 首部字段

    4.目录穿越漏洞简介及成因:

    Nginx反向代理,静态文件存储在/home/下,而访问时需要在url中输入files,配置文件中/files没有用/闭合,导致可以穿越至上层目录

    目录穿越漏洞成因:

    在这里插入图片描述
    files后面没使用/闭合

    目录穿越漏洞修复:

    在这里插入图片描述

    四、Tomcat

    1、war后门文件部署

    参考war后门文件部署

    2、Tomcat远程执行漏洞

    参考Tomcat远程执行漏洞

    展开全文
  • 深入浅出之IIS短文件名漏洞

    千次阅读 2019-07-09 21:11:09
    一、 什么是IIS Internet Information Services(IIS,以前称为Internet Information Server)互联网信息服务是 Microsoft 公司提供的可扩展 Web服务器 ,支持 ...系列,随后内置在...查询是否开启短文件名功能:...

    一、 什么是IIS

    Internet Information Services(IIS,以前称为Internet Information Server)互联网信息服务是Microsoft公司提供的可扩展Web服务器,支持HTTPHTTP/2HTTPSFTPFTPSSMTPNNTP等。起初用于Windows NT系列,随后内置在Windows 2000、Windows XP Professional、Windows Server 2003和后续版本一起发行,但在Windows XP Home版本上并没有IIS。IIS目前只适用于Windows系统,不适用于其他操作系统。

    根据Netcraft在2017年2月的数据显示,IIS在“百万最繁忙网站”中的市场份额为10.19%,成为全球第三大网络服务器,落后于Apache 41.41%和 Nginx 28.34%。目前流行的Windows版本都默认安装IIS服务 ,但同时 IIS的安全性一直被业内诟病,一旦IIS出现高危漏洞威胁将会非常严重。

     

    在接触IIS漏洞之前我们先来了解下不同Windows系统下默认内置的IIS版本,以便更好的理解和区分IIS漏洞的影响范围:

     

    图片.png图1  各Windows版本默认IIS版本 

     

    二、 IIS漏洞大全

     

    千里目实验室搜集了下近十五载的IIS相关漏洞,中、高危漏洞共计39个,其中15年爆发的(MS15-034)HTTP.sys 远程执行代码漏洞和16年的(MS16-016)WebDAV 特权提升漏洞影响范围尤其广泛。

     

    图片.png

    图2  近15年IIS漏洞大全

     

    看了上面IIS 近十几年的漏洞后,你也许会问,怎么没有看到本文的主人公“IIS短文件漏洞”呢?!在了解IIS漏洞大家庭前,我们先通过IIS短文件来了解下Windows下IIS的一些特性。

     

     

     

     

    三、 IIS短文件

     

    1. IIS短文件漏洞的由来

     

    Microsoft IIS 短文件/文件夹名称信息泄漏最开始由Vulnerability Research Team(漏洞研究团队)的Soroush Dalili在2010年8月1日发现,并于2010年8月3日通知供应商(微软公司)。微软公司分别于2010年12月1日和2011年1月4日给予答复下个版本修复。2012年6月29日,此漏洞公开披露(中危)。

     

    此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。

     

    Microsoft IIS 波浪号造成的信息泄露是世界网络范围内最常见的中等风险漏洞。这个问题至少从1990年开始就已经存在,但是已经证明难以发现,难以解决或容易被完全忽略。

     

    2. IIS短文件漏洞影响范围及危害

     

    2.1受影响的版本:

     

    IIS 1.0,Windows NT 3.51  
    IIS 3.0,Windows NT 4.0 Service Pack 2  
    IIS 4.0,Windows NT 4.0选项包 
    IIS 5.0,Windows 2000  
    IIS 5.1,Windows XP Professional和Windows XP Media Center Edition  
    IIS 6.0,Windows Server 2003和Windows XP Professional x64 Edition  
    IIS 7.0,Windows Server 2008和Windows Vista  
    IIS 7.5,Windows 7(远程启用<customErrors>或没有web.config)

     

    IIS 7.5,Windows 2008(经典管道模式)

    注意:IIS使用.Net Framework 4时不受影响

    (以上数据来源:https://www.securityfocus.com/archive/1/523424)

     

     

    经验证,以上受影响范围主要是针对HTTP GET方法,且需要同时安装ASP.NET应用程序。该漏洞发现者在2014年再次披露:在测试IIS 7.5(Windows 2008 R2)和IIS 8.0(Windows 2012)过程中,当使用OPTIONS来代替GET 方法时,如果请求中的短文件名是存在的,IIS就会返回一个不一样的错误信息。利用这种特点,攻击者就可以在最新的IIS版本中,实现基于短文件名的文件或目录扫描了。

     

    目前IIS支持短文件名猜测的HTTP方法主要包括:DEBUG、OPTIONS、GET、POST、HEAD、TRACE六种,经千里目实验室验证,IIS 8.0、IIS 8.5和IIS 10.0的短文件名称均可以通过OPTIONS和TRACE方法被猜测成功。所以上述受影响版本需要再加上如下版本:

     

    IIS 8.0,Windows 8, Windows Server 2012

     

    IIS 8.5,Windows 8.1,Windows Server 2012 R2

     

    IIS 10.0,Windows 10, Windows Server 2016

    可以看到,IIS全部版本都存在短文件名泄漏的问题,微软似乎忽视了这个问题。从微软回复该漏洞发现者的消息可以看出,IIS短文件漏洞未达到安全更新标准,且需要确定何时在下一个逻辑版本中解决它。

     

     

    2.2漏洞危害:

     

    2.2.1 利用“~”字符猜解暴露短文件/文件夹名 (主要危害)

     

    Windows 支持以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16 位 Windows的程序访问这些文件。在cmd下进入IIS网站根目录C:\inetpub\wwwroot输入“dir /x”即可看到短文件名的效果:

     

    图片.png

    图3 IIS短文件名

     

    如上图是Windows 10内置的IIS 10.0默认站点根目录,iisstart.htm和iisstart.png是网站默认文件,文件名前缀字符长度均没有达到9位,所以没有短文件名。IIS10test.html是人为添加的网站文件,文件名前缀字符长度达到了9位,对应的短文件名为IIS10T~1.HTM。根据此特性,我们能够通过访问短文件名间接访问它对应的文件。

     

    由于短文件名的长度固定(xxxxxx~xxxx),因此攻击者可直接对短文件名进行暴力破解 ,从而访问对应的文件。

     

    举个例子,有一个数据库备份文件 backup_20180101.sql ,它对应的短文件名是 backup~1.sql 。因此攻击者只要暴力破解出backup~1.sql即可下载该文件,而无需破解完整的文件名。

     

    IIS短文件名有以下几个特征:

     

    1.只有前六位字符直接显示,后续字符用~1指代。其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同);

     

    2.后缀名最长只有3位,多余的被截断,超过3位的长文件会生成短文件名;

     

    3.所有小写字母均转换成大写字母;

     

    4.长文件名中含有多个“.”,以文件名最后一个“.”作为短文件名后缀;

     

    5.长文件名前缀/文件夹名字符长度符合0-9和Aa-Zz范围且需要大于等于9位才会生成短文件名,如果包含空格或者其他部分特殊字符,不论长度均会生成短文件;

    我们可以在启用.net的IIS下使用GET方法暴力列举短文件名,原因是攻击者使用通配符“*”和“?”发送一个请求到IIS,当IIS接收到一个文件路径中包含“~”请求时,它的反应是不同的,即返回的HTTP状态码和错误信息不同。基于这个特点,可以根据HTTP的响应区分一个可用或者不可用的文件。如下图所示不同IIS版本返回信息的不同:

     

    图片.png

    图4  IIS 5.0 ~ IIS 7.X短文件猜解HTTP响应信息

     

    上图是由此漏洞发现者Soroush Dalili在其研究报告中给出的IIS短文件合法和不合法猜解响应信息的图解:

     

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

     

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

     

    图片.png

    图5  利用IIS 状态码猜解过程

     

    以上方法是在IIS较低版本+ASP.NET环境下使用GET方法反复循环猜测,直到猜解出短文件名。

     

    但是千里目实验室在真实环境验证发现,在IIS高版本(如:IIS 8.0/IIS 8.5/IIS 10.0),即使没有安装asp.net,通过OPTIONS和TRACE方法也可以猜解成功。这两种方法猜解返回的HTTP状态码类型和上述截图有些许出入,但是不失为另一种利用方式。

     

    2.2.2 .Net Framework的拒绝服务攻击 (副危害)

     

    据Soroush Dalili在研究表明,攻击者如果在文件夹名称中向发送一个不合法的.Net文件请求,.NeFramework将递归搜索所有的根目录,消耗网站资源进而导致DOS问题。微软认为此危害是可恢复的DOS,将在后续SP版本修改,此处不做探讨研究。

     

    3. IIS短文件漏洞复现和利用       

     

    3.1  IIS短文件漏洞复现

     

    3.1.1 漏洞环境搭建

     

    基于Win 10安装默认IIS 10.0 (未安装APS.NET)

     

    IIS短文件漏洞扫描Java程序(需要配置Java环境变量)

    3.1.2 漏洞环境调试准备

     

    IIS 安装成功以后,会默认在C盘目录下生成intpub目录,网站的根目录位于C:\inetpub\wwwroot,此时查看下根目录是否存在短文件名:

     

    图片.png

    由上图可知,默认IIS 10.0 网站根目录不存在短文件名,只有默认的htm和png文件,且名称长度未达到生成短文件的要求。下面使用IIS短文件扫描程序检测下有无短文件信息泄漏漏洞:

     

    图片.png

    3.1.3 漏洞环境复现

     

    手动创建网站长文件名“IIS10test.html” ,自动生成对应短文件名“IIS10T~1.HTM”

     

    图片.png

    使用IIS短文件扫描程序再次扫描,扫描发现存在短文件漏洞,且通过HTTP OPTIONS方法成功猜解出短文件名称:IIS10T.HTM    

     

    图片.png

    修改漏洞扫描程序,注视掉OPTIONS方法,尝试是否还有其他HTTP方法可以猜解成功。

     

    图片.png

    验证发现,除了OPTIONS方法外,HTTP TRACE方法也能成功猜解出短文件名称。

     

     

    3.1.4 IIS漏洞OPTIONS、TRACE方法猜解分析

     

    OPTIONS方法猜解分析

     

    由于上述OPTIONS方法请求了196次才猜测出短文件名,猜测成功返回404,猜测失败返回的是200,失败的组合比较多,所以下面主要分析下404猜测成功的请求如何通过OPTIONS方法获取短文件名IIS10T.HTM的。如下图:

     

     

     

    图片.png

     

    TRACE方法猜解分析

     

    通过TRACE方法猜解的过程基本同上,只不过此HTTP方法猜解失败返回的状态码不是200,而是501(未执行)。

     

    图片.png3.2  IIS短文件漏洞利用

     

    1. 深入爆破猜测文件全名

     

    通过IIS短文件漏洞猜测出来的短文件名称,需要继续猜测出全名才可以在IIS上进行访问,即IIS由于安全原因不支持短文件名访问。以下是Soroush Dalili给出的几种猜测文件全名的方法:

     

    1) 通过对目标网站或同类型网站进行爬虫,爬出建立一个字典库,再与得到的短文件名来猜剩下的字符 ;

     

    2) 利用fuzzdb(一个应用程序模糊测试(fuzzing)数据库)来猜解;

     

    3) 结合OWASP的dirbuster(一款路径及网页暴力破解的工具)。

     

    Github上有研究人员已经用python将上述方法实现,并且获取到了网站后台的用户名和密码,很好的利用了IIS短文件漏洞。

     

    注: 研究报告地址:https://webbreacher.com/2014/10/23/tilde-enumeration/ (推荐)

     

    python程序下载:https://github.com/WebBreacher/tilde_enum (推荐)

     

    2. 结合支持短文件特性软件(Apache、Wordpress)

     

    Acunetix研究指出当Apache运行在windows下,如果创建了一个长文件,那么无需猜解长文件,直接用短文件就可以下载了。例如一个backup_20180101.sql的长文件,其短文件是BACKUP~1.SQL,攻击者只需要提交BACKUP~1.SQL就可以直接访问并下载该文件。

     

    此外,有学者表明,其在安装Wordpress备份插件之后,通过短文件名成功地访问到了了WordPress博客的备份文件。

     

    3. 绕过Basic and Windows认证

     

    Soroush Dalilide研究中还提到,在某些IIS服务器配置下,可以绕过Basic and Windows认证,猜解出认证目录下的文件。举例,如果需要访问一个开启认证的目录下文件时,比如这个目录是“AuthNeeded”,那么可以通过如下方式访问:

     

    /AuthNeeded::$Index_Allocation/*~1*/.aspx   或者

     

    /AuthNeeded:$I30:$Index_Allocation/*~1*/.aspx

     

     

     

    4. IIS短文件漏洞局限性

     

    此漏洞存在以下几个局限点:

     

    1) 此漏洞只能确定前6个字符,如果后面的字符太长、包含特殊字符,很难猜解;

     

    2) 如果文件名本身太短(无短文件名)也是无法猜解的;

     

    3) 如果文件名前6位带空格,8.3格式的短文件名会补进,和真实文件名不匹配;

     

    图片.png

    4) 如果文件夹名前6位字符带点“.”,扫描程序会认为是文件而不是文件夹,最终出现误报;

     

     

    图片.png

    图片.png

     

    5) 不支持中文文件名,包括中文文件和中文文件夹。一个中文相当于两个英文字符,故超过4个中文字会产生短文件名,但是IIS不支持中文猜测。

     

     

    5. IIS短文件漏洞解决方案

     

     

    5.1 通用漏洞修复方案

     

     

    1) CMD关闭NTFS 8.3文件格式的支持

     

    举例:(1代表关闭,0代表开启)

     

    Windows Server 2008 R2:

     

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

     

    关闭该功能:fsutil 8dot3name set 1

    Windows Server 2003:

     

    关闭该功能:fsutil behavior set disable8dot3 1

    不同系统关闭命令稍有区别,该功能默认是开启的,对于大多数用户来说无需开启。

     

    2) 修改注册表禁用短文件名功能

     

    快捷键Win+R打开命令窗口,输入regedit打开注册表窗口

     

    找到路径:

     

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式

     

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

     

    注:此方法只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除,需要重新复制才会消失。

     

    以下两种方法仅适用于缓解GET 方法,其他方法依旧可以猜解。

     

    3) 关闭Web服务扩展- ASP.NET

     

    4) 升级netFramework至4.0以上版本

     

    参考链接:

     

    [1] Windows如何从长文件名生成8.3文件名,URL:http://support.microsoft.com/kb/142982/en-us

     

    [2] Soroush Dalili IIS短文件漏洞研究报告地址:

     

    https://soroush.secproject.com/downloadable/microsoft_iis_tilde_character_vulnerability_feature.pdf  

     

    [3] SecurtiyFocus漏洞信息:https://www.securityfocus.com/archive/1/523424

     

    [4] Acunetix研究结果:https://www.acunetix.com/blog/web-security-zone/windows-short-8-3-filenames-web-security-problem/

     

    [5] Webbreacher研究结果:https://webbreacher.com/2014/10/23/tilde-enumeration/

     

     *本文作者:千里目安全实验室,转载请注明来自 FreeBuf.COM

    展开全文
  • IIS短文件名泄露漏洞修复

    万次阅读 2019-10-08 19:12:37
    2) 修改注册表禁用短文件名功能 快捷键Win+R打开命令窗口,输入regedit打开注册表窗口 找到路径: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3...

    一、 什么是IIS

    Internet Information Services(IIS,以前称为Internet Information Server)互联网信息服务是Microsoft公司提供的可扩展Web服务器,支持HTTPHTTP/2HTTPSFTPFTPSSMTPNNTP等。起初用于Windows NT系列,随后内置在Windows 2000、Windows XP Professional、Windows Server 2003和后续版本一起发行,但在Windows XP Home版本上并没有IIS。IIS目前只适用于Windows系统,不适用于其他操作系统。

    根据Netcraft在2017年2月的数据显示,IIS在“百万最繁忙网站”中的市场份额为10.19%,成为全球第三大网络服务器,落后于Apache 41.41%和 Nginx 28.34%。目前流行的Windows版本都默认安装IIS服务 ,但同时 IIS的安全性一直被业内诟病,一旦IIS出现高危漏洞威胁将会非常严重。

    在接触IIS漏洞之前我们先来了解下不同Windows系统下默认内置的IIS版本,以便更好的理解和区分IIS漏洞的影响范围:

    图片.png图1  各Windows版本默认IIS版本

    二、 IIS漏洞大全

    千里目实验室搜集了下近十五载的IIS相关漏洞,中、高危漏洞共计39个,其中15年爆发的(MS15-034)HTTP.sys 远程执行代码漏洞和16年的(MS16-016)WebDAV 特权提升漏洞影响范围尤其广泛。

    图片.png

    图2  近15年IIS漏洞大全

    看了上面IIS 近十几年的漏洞后,你也许会问,怎么没有看到本文的主人公“IIS短文件漏洞”呢?!在了解IIS漏洞大家庭前,我们先通过IIS短文件来了解下Windows下IIS的一些特性。

    三、 IIS短文件

    1. IIS短文件漏洞的由来

    Microsoft IIS 短文件/文件夹名称信息泄漏最开始由Vulnerability Research Team(漏洞研究团队)的Soroush Dalili在2010年8月1日发现,并于2010年8月3日通知供应商(微软公司)。微软公司分别于2010年12月1日和2011年1月4日给予答复下个版本修复。2012年6月29日,此漏洞公开披露(中危)。

    此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。

    Microsoft IIS 波浪号造成的信息泄露是世界网络范围内最常见的中等风险漏洞。这个问题至少从1990年开始就已经存在,但是已经证明难以发现,难以解决或容易被完全忽略。

    2. IIS短文件漏洞影响范围及危害

    2.1受影响的版本:

    IIS 1.0,Windows NT 3.51 
    IIS 3.0,Windows NT 4.0 Service Pack 2 
    IIS 4.0,Windows NT 4.0选项包
    IIS 5.0,Windows 2000 
    IIS 5.1,Windows XP Professional和Windows XP Media Center Edition 
    IIS 6.0,Windows Server 2003和Windows XP Professional x64 Edition 
    IIS 7.0,Windows Server 2008和Windows Vista 
    IIS 7.5,Windows 7(远程启用<customErrors>或没有web.config)

    IIS 7.5,Windows 2008(经典管道模式)

    注意:IIS使用.Net Framework 4时不受影响

    (以上数据来源:https://www.securityfocus.com/archive/1/523424)

    经验证,以上受影响范围主要是针对HTTP GET方法,且需要同时安装ASP.NET应用程序。该漏洞发现者在2014年再次披露:在测试IIS 7.5(Windows 2008 R2)和IIS 8.0(Windows 2012)过程中,当使用OPTIONS来代替GET 方法时,如果请求中的短文件名是存在的,IIS就会返回一个不一样的错误信息。利用这种特点,攻击者就可以在最新的IIS版本中,实现基于短文件名的文件或目录扫描了。

    目前IIS支持短文件名猜测的HTTP方法主要包括:DEBUG、OPTIONS、GET、POST、HEAD、TRACE六种,经千里目实验室验证,IIS 8.0、IIS 8.5和IIS 10.0的短文件名称均可以通过OPTIONS和TRACE方法被猜测成功。所以上述受影响版本需要再加上如下版本:

    IIS 8.0,Windows 8, Windows Server 2012

    IIS 8.5,Windows 8.1,Windows Server 2012 R2

    IIS 10.0,Windows 10, Windows Server 2016

    可以看到,IIS全部版本都存在短文件名泄漏的问题,微软似乎忽视了这个问题。从微软回复该漏洞发现者的消息可以看出,IIS短文件漏洞未达到安全更新标准,且需要确定何时在下一个逻辑版本中解决它。

    2.2漏洞危害:

    2.2.1 利用“~”字符猜解暴露短文件/文件夹名 (主要危害)

    Windows 支持以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16 位 Windows的程序访问这些文件。在cmd下进入IIS网站根目录C:\inetpub\wwwroot输入“dir /x”即可看到短文件名的效果:

    图片.png

    图3 IIS短文件名

    如上图是Windows 10内置的IIS 10.0默认站点根目录,iisstart.htm和iisstart.png是网站默认文件,文件名前缀字符长度均没有达到9位,所以没有短文件名。IIS10test.html是人为添加的网站文件,文件名前缀字符长度达到了9位,对应的短文件名为IIS10T~1.HTM。根据此特性,我们能够通过访问短文件名间接访问它对应的文件。

    由于短文件名的长度固定(xxxxxx~xxxx),因此攻击者可直接对短文件名进行暴力破解 ,从而访问对应的文件。

    举个例子,有一个数据库备份文件 backup_20180101.sql ,它对应的短文件名是 backup~1.sql 。因此攻击者只要暴力破解出backup~1.sql即可下载该文件,而无需破解完整的文件名。

    IIS短文件名有以下几个特征:

    1.只有前六位字符直接显示,后续字符用~1指代。其中数字1还可以递增,如果存在多个文件名类似的文件(名称前6位必须相同,且后缀名前3位必须相同);

    2.后缀名最长只有3位,多余的被截断,超过3位的长文件会生成短文件名;

    3.所有小写字母均转换成大写字母;

    4.长文件名中含有多个“.”,以文件名最后一个“.”作为短文件名后缀;

    5.长文件名前缀/文件夹名字符长度符合0-9和Aa-Zz范围且需要大于等于9位才会生成短文件名,如果包含空格或者其他部分特殊字符,不论长度均会生成短文件;

    我们可以在启用.net的IIS下使用GET方法暴力列举短文件名,原因是攻击者使用通配符“*”和“?”发送一个请求到IIS,当IIS接收到一个文件路径中包含“~”请求时,它的反应是不同的,即返回的HTTP状态码和错误信息不同。基于这个特点,可以根据HTTP的响应区分一个可用或者不可用的文件。如下图所示不同IIS版本返回信息的不同:

    图片.png

    图4  IIS 5.0 ~ IIS 7.X短文件猜解HTTP响应信息

    上图是由此漏洞发现者Soroush Dalili在其研究报告中给出的IIS短文件合法和不合法猜解响应信息的图解:

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

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

    图片.png

    图5  利用IIS 状态码猜解过程

    以上方法是在IIS较低版本+ASP.NET环境下使用GET方法反复循环猜测,直到猜解出短文件名。

    但是千里目实验室在真实环境验证发现,在IIS高版本(如:IIS 8.0/IIS 8.5/IIS 10.0),即使没有安装asp.net,通过OPTIONS和TRACE方法也可以猜解成功。这两种方法猜解返回的HTTP状态码类型和上述截图有些许出入,但是不失为另一种利用方式。

    2.2.2 .Net Framework的拒绝服务攻击 (副危害)

    据Soroush Dalili在研究表明,攻击者如果在文件夹名称中向发送一个不合法的.Net文件请求,.NeFramework将递归搜索所有的根目录,消耗网站资源进而导致DOS问题。微软认为此危害是可恢复的DOS,将在后续SP版本修改,此处不做探讨研究。

    3. IIS短文件漏洞复现和利用       

    3.1  IIS短文件漏洞复现

    3.1.1 漏洞环境搭建

    基于Win 10安装默认IIS 10.0 (未安装APS.NET)

    IIS短文件漏洞扫描Java程序(需要配置Java环境变量)

    3.1.2 漏洞环境调试准备

    IIS 安装成功以后,会默认在C盘目录下生成intpub目录,网站的根目录位于C:\inetpub\wwwroot,此时查看下根目录是否存在短文件名:

    图片.png

    由上图可知,默认IIS 10.0 网站根目录不存在短文件名,只有默认的htm和png文件,且名称长度未达到生成短文件的要求。下面使用IIS短文件扫描程序检测下有无短文件信息泄漏漏洞:

    图片.png

    3.1.3 漏洞环境复现

    手动创建网站长文件名“IIS10test.html” ,自动生成对应短文件名“IIS10T~1.HTM”

    图片.png

    使用IIS短文件扫描程序再次扫描,扫描发现存在短文件漏洞,且通过HTTP OPTIONS方法成功猜解出短文件名称:IIS10T.HTM    

    图片.png

    修改漏洞扫描程序,注视掉OPTIONS方法,尝试是否还有其他HTTP方法可以猜解成功。

    图片.png

    验证发现,除了OPTIONS方法外,HTTP TRACE方法也能成功猜解出短文件名称。

    3.1.4 IIS漏洞OPTIONS、TRACE方法猜解分析

    OPTIONS方法猜解分析

    由于上述OPTIONS方法请求了196次才猜测出短文件名,猜测成功返回404,猜测失败返回的是200,失败的组合比较多,所以下面主要分析下404猜测成功的请求如何通过OPTIONS方法获取短文件名IIS10T.HTM的。如下图:

     

    图片.png

    TRACE方法猜解分析

    通过TRACE方法猜解的过程基本同上,只不过此HTTP方法猜解失败返回的状态码不是200,而是501(未执行)。

    图片.png3.2  IIS短文件漏洞利用

    1. 深入爆破猜测文件全名

    通过IIS短文件漏洞猜测出来的短文件名称,需要继续猜测出全名才可以在IIS上进行访问,即IIS由于安全原因不支持短文件名访问。以下是Soroush Dalili给出的几种猜测文件全名的方法:

    1) 通过对目标网站或同类型网站进行爬虫,爬出建立一个字典库,再与得到的短文件名来猜剩下的字符 ;

    2) 利用fuzzdb(一个应用程序模糊测试(fuzzing)数据库)来猜解;

    3) 结合OWASP的dirbuster(一款路径及网页暴力破解的工具)。

    Github上有研究人员已经用python将上述方法实现,并且获取到了网站后台的用户名和密码,很好的利用了IIS短文件漏洞。

    注: 研究报告地址:https://webbreacher.com/2014/10/23/tilde-enumeration/ (推荐)

    python程序下载:https://github.com/WebBreacher/tilde_enum (推荐)

    2. 结合支持短文件特性软件(Apache、Wordpress)

    Acunetix研究指出当Apache运行在windows下,如果创建了一个长文件,那么无需猜解长文件,直接用短文件就可以下载了。例如一个backup_20180101.sql的长文件,其短文件是BACKUP~1.SQL,攻击者只需要提交BACKUP~1.SQL就可以直接访问并下载该文件。

    此外,有学者表明,其在安装Wordpress备份插件之后,通过短文件名成功地访问到了了WordPress博客的备份文件。

    3. 绕过Basic and Windows认证

    Soroush Dalilide研究中还提到,在某些IIS服务器配置下,可以绕过Basic and Windows认证,猜解出认证目录下的文件。举例,如果需要访问一个开启认证的目录下文件时,比如这个目录是“AuthNeeded”,那么可以通过如下方式访问:

    /AuthNeeded::$Index_Allocation/*~1*/.aspx   或者

    /AuthNeeded:$I30:$Index_Allocation/*~1*/.aspx

    4. IIS短文件漏洞局限性

    此漏洞存在以下几个局限点:

    1) 此漏洞只能确定前6个字符,如果后面的字符太长、包含特殊字符,很难猜解;

    2) 如果文件名本身太短(无短文件名)也是无法猜解的;

    3) 如果文件名前6位带空格,8.3格式的短文件名会补进,和真实文件名不匹配;

    图片.png

    4) 如果文件夹名前6位字符带点“.”,扫描程序会认为是文件而不是文件夹,最终出现误报;

    图片.png

    图片.png

    5) 不支持中文文件名,包括中文文件和中文文件夹。一个中文相当于两个英文字符,故超过4个中文字会产生短文件名,但是IIS不支持中文猜测。

    5. IIS短文件漏洞解决方案

    5.1 通用漏洞修复方案

    1) CMD关闭NTFS 8.3文件格式的支持

    举例:(1代表关闭,0代表开启)

    Windows Server 2008 R2:

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

    关闭该功能:fsutil 8dot3name set 1

    Windows Server 2003:

    关闭该功能:fsutil behavior set disable8dot3 1

    不同系统关闭命令稍有区别,该功能默认是开启的,对于大多数用户来说无需开启。

    2) 修改注册表禁用短文件名功能

    快捷键Win+R打开命令窗口,输入regedit打开注册表窗口

    找到路径:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式

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

    注:此方法只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除,需要重新复制才会消失。

    以下两种方法仅适用于缓解GET 方法,其他方法依旧可以猜解。

    3) 关闭Web服务扩展- ASP.NET

    4) 升级netFramework至4.0以上版本

    参考链接:

    [1] Windows如何从长文件名生成8.3文件名,URL:http://support.microsoft.com/kb/142982/en-us

    [2] Soroush Dalili IIS短文件漏洞研究报告地址:

    https://soroush.secproject.com/downloadable/microsoft_iis_tilde_character_vulnerability_feature.pdf  

    [3] SecurtiyFocus漏洞信息:https://www.securityfocus.com/archive/1/523424

    [4] Acunetix研究结果:https://www.acunetix.com/blog/web-security-zone/windows-short-8-3-filenames-web-security-problem/

    [5] Webbreacher研究结果:https://webbreacher.com/2014/10/23/tilde-enumeration/

     *本文作者:千里目安全实验室,转载请注明来自 FreeBuf.COM

    展开全文
  • 今天使用AWVS对目标网站进行漏扫时,发现了Microsoft IIS tilde directory enumeration漏洞,即常说的Microsoft IIS短文件名漏洞。 afei 短文件漏洞请参考笔记:短文件名漏洞介绍及利用 漏洞等级: 获取非...
  • 短文件名猜解

    2020-07-06 17:29:18
    1、漏洞介绍及成因 IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个...2)修改注册表禁用短文件名功能 快捷键Win+R打开命令窗口,输入regedit打开注册表窗口,找到路径: HKEY_LOCAL_MACHINE\SYSTEM\CurrentC
  • 在很久之前,大概是Win3.x的时候,Windows中的文件名是由不超过8个字符的主文件名,和不超过3个字符的扩展名组成。到了Windows 95的时候,这个长度被扩展成主文件名+扩展名不超过255个字符。为了保证兼容性,Windows...
  • 禁用windows系统中的短文件名功能。 打开注册表并打开此目录 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 修改 NtfsDisable8dot3NameCreation 的值为1 。 修改完成后,需要重启系统生效。 ...
  • 漏洞名称:IIS短文件名泄露 风险等级:低 问题类型:信息泄露 0x01 漏洞描述 此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号引起的。 为了兼容16位MS-DOS程序,Windows为文件名较长的文件...
  • 查询和关闭NTFS8.3短文件名格式

    千次阅读 2021-05-22 11:29:50
    在很久之前,大概是Win3.x的时候,Windows中的文件名是由不超过8个字符的主文件名,和不超过3个字符的扩展名组成。到了Windows 95的时候,这个长度被扩展成主文件名+扩展名不超过255个字符。为了保证兼容性,Windows...
  • 为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3 短文件名。 在Windows下查看对应的短文件名,可以使用命令 dir /x 只有前六位字符直接显示,后续字符用~1指代。其中数字...
  • IIS短文件名泄露修复方法

    千次阅读 2020-06-16 14:22:45
    Web安全-IIS短文件名泄露 IIS短文件名泄露修复方法 你好! 这是你第一次使用 Markdown编辑...查询是否开启短文件名功能:fsutil 8dot3name query 关闭该功能:fsutil 8dot3name set 1 Windows Server 2003: 关闭该功
  • (此修改只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除), 2)如果你的web环境不需要asp.net的支持你可以进入Internet 信息服务(IIS)管理器 --- Web 服务扩展 - ASP.NET 选择禁止此功能。 3)升级...
  • 漏洞的成因与分析: 1)利用“~”字符猜解暴露文件/文件夹名。 2).Net Framework的拒绝服务攻击。...Windows 还以 8.3 格式生成与 MS-DOS 兼容的(文件名,以允许基于 MS-DOS 或 16 位 Windows的程序...
  • ftp上传不了多个汉字文件名的文件。server-U11安装后,ftp上传文件时,必须使用英文字符或数据的文件名才能进入ServerU管理端界面,点击“服务器限制和设置...用FTP上传长文件名的文件不能上传,短文件名的文件用FTP...
  • ftp上传不了多个汉字文件名的文件。server-U11安装后,ftp上传文件时,必须使用英文字符或数据的文件名才能进入ServerU管理端界面,点击“服务器限制和设置...用FTP上传长文件名的文件不能上传,短文件名的文件用FTP...
  • IIS文件猜解

    千次阅读 2018-11-18 13:11:42
    1.IIS文件漏洞 Microsoft IIS 文件/文件夹名称信息泄漏最开始由Vulnerability Research Team(漏洞研究团队)的Soroush Dalili在2010年8月1日发现,并于2010年8月3日通知供应商(微软公司)。微软公司分别于2010...
  • iis6.0渗透实战笔记

    2021-05-31 00:46:48
    2) 修改注册表禁用短文件名功能 快捷键Win+R打开命令窗口,输入regedit打开注册表窗口找到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的...
  • 8.windows 2012 R2 及 centos 7.X 禁用不必要服务 React VR 技术开发群 579149907 1.windows2012 R2 可以禁用以下不必要的服务,以下禁用的服务是以win2012R2 core安装完后的服务为依据禁用的。 1.1禁用服务...
  • 批处理当前目录的文件名重命名

    千次阅读 2020-12-10 15:30:10
    批处理当前目录的文件名1.1. 打开 Windows 控制台(cmd)1.2. 当前目录打开 Windows 控制台(cmd)1.3. 建议使用第三方控制台 cmder1.4. 获取当前目录的文件名1.5. 用 `Excel`打开 `rename.xls`1.6. 构建重命名脚本...
  • 大家都知道 bash里有个文件自动补全功能,按两下Tab键显示出候选补全文件名,不同程序会显示相应的文件类型(根据扩展名来判断),例如mplayer 会显示媒体文件(如 avi、mpg、mkv),而不会显示文本文件(如 txt、cfg、...
  • IIS文件漏洞的由来 Microsoft IIS 文件/文件夹名称信息泄漏最开始由Vulnerability Research Team(漏洞研究团队)的Soroush Dalili在2010年8月1日发现,并于2010年8月3日通知供应商(微软公司)。微软公司...
  • (5)日后会开放更多的功能,欢迎广大开发者使用串分享功能; ------------------------------------------------------------------------------------- 十七、 Demo名称:LBS.云检索 文件名: ...
  • 8dot3format文件名修改的问题

    千次阅读 2017-09-04 11:18:55
    可以禁用这个功能,这样每次识别的名称都是原始名称,就可以用上述processname的方法啦。 禁用8dot3 format步骤 Disable 8.3 filename support for the future files (modify registry) Click the ...
  • Web中间件漏洞

    2022-03-21 10:16:59
    漏洞修复 修复方法: 1)升级.net framework 2)修改注册表禁用短文件名功能 快捷键Win+R打开命令窗口,输入regedit打开注册表窗口,找到路径: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,...
  • 增加编辑器插入代码功能,用户体验提供升; 增加公众号吸粉功能,关注访问隐藏内容; 增加文章密码保护功能,用户体验提供升; 增加展开/收缩功能,用户体验提供升; 增加回复可见功能,用户体验提供升; 读者墙,展示...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,008
精华内容 4,403
关键字:

如何禁用短文件名功能