IIS7.x漏洞原理和复现

一、漏洞环境安装

安装IIS7.x

1)打开控制面板–点击卸载程序

cLKc4O.png

2)打开或关闭Windows功能

3)选择相关要打开的功能

点击确认等待几分钟即可

4)在开始出搜索iis,打开IIS Manager

5)在浏览器访问127.0.0.1显示下面页面表示安装成功

安装小皮 phpstudy

小皮是结合上面IIS7用于复现的,用于联动php和IIS的

当然,也可以不装小皮,通过限制CGI来联动PHP

1)点击安装程序
默认下一步

2)安装VC11
下载地址:https://www.php.cn/xiazai/gongju/1481

安装即可

3)切换版本为PHP5.2.17+IIS

4)在IIS Manager就可以进行管理了

5)在高级设置中查看默认端口

6)访问该网站

对于一个漏洞来讲:
是什么|概述
作用何在
利用前提
复现操作
防御*

二、漏洞原理和复现

1、解析漏洞

IIS7.xFCGI运行模式下,在某文件路径后添加/.php会将该文件解析成php文件

CGI相关信息:https://blog.csdn.net/belen_xue/article/details/65950658

利用前提

该解析漏洞的条件有两个:(具体可以查看下面第4步)

  1. 处理程序映射-请求限制
  2. php.inicgi.fix_pathinfo=1(默认1,所以可以不用管)
复现操作

1)创建jiexi.jpg文件,写入如下内容

2)正常访问该jpg文件

127.0.0.1:8980/jiexi.jpg

cLMgZq.png

3)在后面加上/.php再访问
显示服务器错误

4)开启该解析漏洞的利用条件

处理程序映射中双击选择FastCGI,在请求限制中叉掉映射的选项

对于cgi.fix_pathinfo项,我们打开php.ini查看

默认路径在C:\phpStudy\PHPTutorial\php\php-5.2.17

这里注释掉了,默认情况为1,无需理它即可

5)再次打开该页面
成功将解析jpg文件解析成php文件

利用思路:
可以通过上传非php文件,如jpgpng文件,并写入一句话木马,利用该解析漏洞将该非php文件解析成php文件,进而可以执行该一句话木马

参考:
https://blog.csdn.net/nzjdsds/article/details/81367930

2、HTTP.SYS远程代码执行漏洞MS15-034

漏洞概述

远程执行代码漏洞存在于 HTTP 协议堆栈 HTTP.sys中,Http.sysMicrosoft Windows处理HTTP请求的内核驱动程序。当 HTTP.sys 错误解析经特殊构造的 HTTP 请求时会导致此漏洞。

成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任意代码,可以远程读取IIS服务器的内存数据,或使服务器系统蓝屏崩溃。此漏洞并不是针对IIS的,而是针对Windows操作系统的,主要影响了包括Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 和 Windows Server 2012 R2在内的主流服务器操作系统。

Ⅰ. 检测是否存在MS15-034漏洞

通过在数据包的请求头上添加一串数据

Range: bytes=0-18446744073709551615

1)浏览器测试

在火狐浏览器中,按如下图片进行操作,将上述数据添加进请求头中,重发

返回状态码为416Requested Range Not Satisfiable,表示存在HTTP.SYS远程代码执行漏洞

2)Kali上使用curl测试

使用下面的curl指令,添加请求头数据进行数据请求

curl http://192.168.31.84 -H "Host: 192.168.31.84" -H "Range: bytes=0-18446744073709551615"

返回Requested Range Not Satisfiable,且状态码为416,表示存在该漏洞

Ⅱ. 执行攻击

1)读取服务器内存数据

使用msfauxiliary/scanner/http/ms15_034_http_sys_memory_dump模块

设置相关信息,执行exploit,成功得到内存数据

2)进行ddos攻击

使用msfauxiliary/dos/http/ms15_034_ulonglongadd模块,序号为0

设置相关信息,exploite执行

查看IIS服务器,发现已经蓝屏了,说明攻击成功。

cLQPeI.png

Ⅲ. 参考

https://www.cnblogs.com/peterpan0707007/p/8529261.html

https://blog.csdn.net/nzjdsds/article/details/81367930

3、认证绕过漏洞

该漏洞源于对用户提供的输入未经正确的验证。攻击者可利用这些漏洞在服务器进程上下文中获取密码保护资源和查看源代码文件的未授权访问

PHP绕过认证漏洞

这里也结合小皮进行复现,当然,也可以手动安装php和IIS进行联动

1)在WWW/admin下创建一个index.php文件

#index.php
<?php echo "Hello World"; ?>

2)修改用户权限

选择身份验证

禁用匿名身份验证和开启ASP.NET模拟

cLlO2D.png

3)访问该网站文件
显示401-未授权,说明访问该文件需要权限,普通游客权限无法访问到该文件

4)添加后缀进行身份绕过

http://192.168.31.84:8980/admin:$i30:$INDEX_ALLOCATION/index.php

cL1Axg.png

扩展:.aspx认证绕过漏洞结合解析漏洞

1)先创建一个.aspx文件

#index.aspx
<?php echo "Hello World"; ?>

2)身份绕过该文件进行访问
这里显示乱码,表示文件内的代码并为按php进行解析

http://192.168.31.84:8980/admin:$i30:$INDEX_ALLOCATION/index.aspx

3)结合解析漏洞成功解析该文件

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
IIS短文件名漏洞,也称为8.3短文件名漏洞,是指在IIS(Internet Information Services)Web服务器上存在的一个安全漏洞。该漏洞允许攻击者通过构造特定的URL请求来访问Web服务器上本不公开的文件和目录。 要复现IIS短文件名漏洞,可以按照以下步骤进行: 1. 首先,确保你有一个运行IIS的Web服务器,并且可以进行配置和测试。 2. 设置IIS服务器,使其启用短文件名。可以通过修改IIS配置文件或使用命令行工具进行设置。 3. 创建一个包含敏感信息的文件,例如“secret.txt”,并将其放置在不公开访问的目录下,如“C:\inetpub\wwwroot\secret”。 4. 使用不带扩展名的文件名创建一个符号链接(Symlink),指向要访问的目标文件。例如,可以使用命令“mklink secret.lnk C:\inetpub\wwwroot\secret.txt”。 5. 访问IIS服务器上的网页,并构造一个特定的URL请求来访问该文件。例如,“http://localhost/secret.lnk”。 6. 如果IIS服务器启用了短文件名,并且漏洞存在,那么访问该URL后,应该能够直接显示或下载“secret.txt”文件,即使该文件被放置在不公开访问的目录下。 复现IIS短文件名漏洞的过程可以帮助管理员更好地理解漏洞的存在和影响,并采取相应的措施来修复该漏洞。修复方法包括禁用IIS短文件名功能、更新IIS服务器补丁、限制目录访问权限等,以增强服务器的安全性。同时,定期更新和管理服务器的安全措施也是非常重要的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值