web中间件漏洞之IIS篇

栏目: ASP.NET · 发布时间: 5年前

内容简介:最初是Windows NT版本的可选包,随后内置在Windows 2000、Windows XP Professional和Windows Server 2003一起发行,但在Windows XP Home版本上并没有IIS。IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。

一、IIS简介

web中间件漏洞之IIS篇

最初是Windows NT版本的可选包,随后内置在Windows 2000、Windows XP Professional和Windows Server 2003一起发行,但在Windows XP Home版本上并没有IIS。

IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。

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

二、PUT漏洞

1. 漏洞介绍及成因

IIS Server在Web服务扩展中开启了WebDAV,配置了可以写入的权限,造成任意文件上传。

版本:IIS 6.0

2.  漏洞复现

1)开启WebDAV和写权限;

web中间件漏洞之IIS篇 web中间件漏洞之IIS篇

web中间件漏洞之IIS篇

web中间件漏洞之IIS篇

3)利用 工具 进行测试; web中间件漏洞之IIS篇 web中间件漏洞之IIS篇

成功上传,再上传一句话木马,然后用菜刀连接,getshell;

web中间件漏洞之IIS篇

3. 漏洞修复

关闭WebDAV和写权限;

三、短文件名猜解

1. 漏洞介绍及成因

IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个存在的短文件名,会返回404,访问构造的某个不存在的短文件名,返回400。

2. 漏洞复现

1)在网站根目录下添加aaaaaaaaaa.html文件;

web中间件漏洞之IIS篇

2)进行猜解;

web中间件漏洞之IIS篇

web中间件漏洞之IIS篇

3. 漏洞修复

修复方法:

1)升级.net framework;

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

快捷键Win+R打开命令窗口,输入regedit打开注册表窗口,找到路径:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式,修改完成后,需要重启系统生效。

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

4)将web文件夹的内容拷贝到另一个位置,如c:\www到d:\w,然后删除原文件夹,再重命名d:\w到c:\www。

修复后:

web中间件漏洞之IIS篇

4. 局限性

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

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

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

四、远程代码执行

1. 漏洞介绍及成因

在IIS6.0处理PROPFIND指令的时候,由于对url的长度没有进行有效的长度控制和检查,导致执行memcpy对虚拟路径进行构造的时候,引发栈溢出,从而导致远程代码执行。

2. 漏洞复现

1)漏洞环境搭建

在windows server 2003 r2 32位上安装iis6.0;

2)触发漏洞

在本地执行exp,exp如下:

web中间件漏洞之IIS篇

执行成功后,服务器端弹出计算器:

web中间件漏洞之IIS篇

3. 漏洞修复

1)关闭WebDAV服务;

2)使用相关防护设备;

五、解析漏洞

1. 漏洞介绍及成因

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

/test.asp/test.jpg

test.asp;.jpg

2. 漏洞复现

  • 利用方式1

第一种是新建一个名为”test.asp”的目录,该目录中的任何文件都被IIS当作asp程序执行(特殊符号是“/”);

web中间件漏洞之IIS篇

  • 利用方式2

第二种是上传名为”test.asp;.jpg”的文件,虽然该文件真正的后缀名是”.jpg”,但由于含有特殊符号”;”,仍会被IIS当做asp程序执行;

web中间件漏洞之IIS篇

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程序执行了。

3. 漏洞修复

1)对新建目录文件名进行过滤,不允许新建包含‘.’的文件;

2)曲线网站后台新建目录的功能,不允许新建目录;

3)限制上传的脚本执行权限,不允许执行脚本;

4)过滤.asp/xm.jpg,通过ISApi组件过滤。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算理论导引

计算理论导引

[美]Michael Sipser / 张立昂、王捍贫、黄雄 / 机械工业出版社 / 2000-2 / 30.00元

本书由计算理论领域的知名权威Michael Sipser撰写。他以独特的视角,综合地描述了计算机科学理论,并以清新的笔触、生动的语言给出了宽泛的数学理论,而并非拘泥于某些低层次的技术细节。在证明之前,均有“证明思路”,帮助读者理解数学形式下蕴涵的概念。同样,对于算法描述,均以直观的文字,而非伪代码给出,从而将注意力集中于算法本身,而不是某些模型。本书的内容包括三个部分:自动机与语言、可计算性理论和一起来看看 《计算理论导引》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码