IIS 解析漏洞复现

news/2025/1/21 10:41:44/

文章目录

  • IIS 解析漏洞复现
    • 1. 漏洞描述
    • 2. 漏洞复现
    • 3. 漏洞原因
    • 4. 安全加固
    • 5. 安全防护

IIS 解析漏洞复现

1. 漏洞描述

说明内容
漏洞编号
漏洞名称IIS 解析漏洞
漏洞评级高危
影响范围IIS 6.0及以前版本
IIS 7.0
IIS 7.5
漏洞描述IIS 解析漏洞是指在 IIS 服务器上存在的安全漏洞,可能导致恶意用户能够执行未经授权的代码或访问受限资源。
修复方案打补丁,上设备,升级组件

IIS漏洞通常涉及两个主要问题:

  1. 目录遍历漏洞(Directory Traversal): 目录遍历漏洞发生在 IIS 服务器中,当处理某些请求时,未正确过滤用户提供的输入。攻击者可以利用此漏洞跳出 Web 根目录,访问系统上的其他目录或文件。通过构造特定的请求,攻击者可以获取敏感文件、执行任意代码,甚至可能导致服务器完全被控制。
  2. 文件扩展名映射漏洞(File Extension Handling): 文件扩展名映射漏洞指的是 IIS 对不同文件扩展进行处理时的安全性问题。如果服务器配置不当,攻击者可以通过将特定的文件扩展名追加到 URL 中,绕过正常的处理流程,让服务器错误地解析不应该被解析的文件。这可能导致服务器执行了恶意脚本或返回敏感文件的内容。

漏洞存在版本IIS7.0/7.5

IIS支持PHP脚本

在指定目录下创建一个phpinfo.php文件

image-20230908154829323

文件内容如下

image-20230908154859435

访问该文件

image-20230908154952933

发现报错404找不到文件或目录。

这里我们需要赋予IIS能够解释和执行PHP脚本的能力。

在虚拟机中打开IIS管理器,这里我们在全局进行配置。

image-20230908155310079

php解释执行是通过php解释器来决定的,这里我们使用phpstudy中的php-cgi.exe

image-20230908155820840

当用户访问phpinfo.php的时候,将该文件找到交给php-cgi.exe来解释执行。

image-20230908160443231

image-20230908160502850

image-20230908160624395

执行成功

image-20230908161356959

但是该处存在漏洞

将phpinfo.php后缀名修改为png,重新访问页面。

image-20230908161557970

IIS 7.0/7.5 解析漏洞,在路径的末尾添加一个/.php,页面报错的原因是这里使用的是IIS10.0 该漏洞已被修复。

image-20230908161711630

那么我们可以手动创建该漏洞。

2. 漏洞复现

image-20230908162615464

image-20230908162637255

image-20230908162735616

image-20230908162804535

3. 漏洞原因

在做cgi配置的时候请求限制选项中的仅当请求映射至以下内容时才调用处理程序(1)选项没有勾选上。

image-20230908163130489

4. 安全加固

将cgi.fix_patginfo的值修改为false

image-20230908163242154

添加一个CGI

image-20230908163424960

右键点击编辑

image-20230908163506495

选择php.ini文件

image-20230908163611066

修改php.ini文件中的cgi.fix.pathinfo的值为0

image-20230908163913783

刷新页面,发现已经无法访问了

image-20230908163958389

5. 安全防护

为了防止 IIS 解析漏洞的利用,可以采取以下措施:

  1. 及时更新和修补操作系统和 IIS 服务器的安全补丁。
  2. 限制文件和目录的访问权限,确保 IIS 运行在最低特权级别。
  3. 配置 IIS,禁用或限制处理不常见的文件扩展名。只允许必要的扩展名进行解析。
  4. 对用户输入进行严格的验证和过滤,避免目录遍历攻击。例如,使用白名单检查来限制允许访问的目录和文件。
    录的访问权限,确保 IIS 运行在最低特权级别。
  5. 配置 IIS,禁用或限制处理不常见的文件扩展名。只允许必要的扩展名进行解析。
  6. 对用户输入进行严格的验证和过滤,避免目录遍历攻击。例如,使用白名单检查来限制允许访问的目录和文件。

http://www.ppmy.cn/news/1151640.html

相关文章

vue-插件

插件 插件通常用来为 Vue 添加全局功能。插件的功能范围没有严格的限制。 通过全局方法 Vue.use() 使用插件。它需要在你调用 new Vue() 启动应用之前完成 // 调用 MyPlugin.install(Vue) Vue.use(MyPlugin)new Vue({// ...组件选项 })本质:包含install方法的一个…

3D 生成重建007-Fantasia3D和Magic3d两阶段玩转文生3D

3D生成重建3D 生成重建007-Fantasia3D和magic3d 文章目录 0 论文工作1 论文方法1.1 magic3d1.2 Fantasia3D 2 效果2.1 magic3d2.2 fantasia3d 0 论文工作 两篇论文都是两阶段法进行文生3d,其中fantasia3D主要对形状和外表进行解耦,然后先对geometry进行…

Ant Design of React组件引用及路由跳转

Ant Design of React 学习笔记(2) Ant Design of React组件引用及路由跳转,接着笔记(1)继续 这里我们主要3点:1.使用Ant的组件;2,如何引用页面组件;3,路由导航跳转 这是我的目录结…

TypeScript React(上)

目录 扩展学习资料 TypeScript设计原则 TypeScript基础 语法基础 变量声明 JavaScript声明变量 TypeScript声明变量 示例 接口 (标准类型-Interface) 类型别名-Type 接口 VS 类型别名 类型断言:欺骗TS&#xff0c;肯定数据符合结构 泛型、<大写字母> 扩展学习…

c语言之strcmp函数使用和实现

文章目录 前言一、strcmp函数使用二、实现方法 前言 c语言中常用的字符串处理函数strcmp总结。 一、strcmp函数使用 原型 int strcmp ( const char * str1, const char * str2 );strcmp比较两个字符串的大小&#xff0c;一个字符一个字符比较&#xff0c;按ASCII码比较 规定…

汽车RNC主动降噪算法DSP C程序实现

汽车RNC主动降噪算法C程序 是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,车载

python 之xml 使用原生xml.dom

一、xml操作 使用xml进行创建<Placemark id"placemark_id"><name>模型</name><Location><longitude>121.6097139799135</longitude></Location> </Placemark>from xml.dom import minidom# 创建一个新的XML文档 do…

pytorch中的池化函数

PyTorch 提供了多种池化函数&#xff0c;用于对输入数据进行不同类型的池化操作。以下是一些常用的 PyTorch 池化函数&#xff1a; 平均池化&#xff08;Average Pooling&#xff09;: nn.AvgPool1d: 一维平均池化。nn.AvgPool2d: 二维平均池化。nn.AvgPool3d: 三维平均池化。 …