渗透测试之地基服务篇:服务攻防之中间件IIS(下)
字数 1406 2025-08-13 21:33:27

IIS中间件渗透测试技术详解

一、IIS中间件概述

中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。

中间件安全重要性:

  • 连接网络和系统,接触关键数据
  • 往往连接数据库,储存重要敏感信息
  • 被攻破可能导致信息篡改或泄露
  • 影响企业经济损失甚至社会安全

二、IIS 7.x安装配置

安装步骤

  1. 打开控制面板→万维网服务→勾选全部功能
  2. 等待安装完成(约1-2分钟)
  3. 打开Internet信息服务(IIS)管理器
  4. 删除默认网站(Default Web Site)

PHP环境配置

  1. 安装小皮面板(PHPStudy),选择IIS+PHP版本
  2. 或手动配置:
    • 编辑ISAPI或CGI限制,添加php-cgi.exe路径
    • 在处理程序映射中添加PHP支持

三、IIS 7.x渗透测试技术

1. 解析漏洞

漏洞描述
IIS7.x在Fast-CGI运行模式下,在任意文件(如.jpg/.png)后加上/.php,会将文件解析为PHP执行。

复现步骤

  1. 创建包含PHP代码的图片文件(如dayu.png)
  2. 访问dayu.png/.php
  3. 若未解析,检查处理程序映射:
    • 找到phpStudy_FastCGI
    • 编辑模块映射,取消"仅当请求映射至..."选项

修复建议
配置php.ini中cgi.fix_pathinfo=0并重启php-cgi

2. HTTP.SYS远程代码执行(MS15-034)

漏洞描述
HTTP协议堆栈(HTTP.sys)未正确分析特殊设计的HTTP请求,导致远程代码执行。

影响版本

  • IIS 7.5、IIS 8.0、IIS 8.5
  • Windows 7/8/8.1、Server 2008 R2/2012/2012 R2

检测方法
发送包含特殊Range头的请求:

Range: bytes=0-18446744073709551615

若返回416状态码,则存在漏洞。

修复建议
安装微软补丁KB3042553

3. 认证绕过漏洞

(1) IIS 6.0 PHP认证绕过

利用方法
在受保护目录后附加::$INDEX_ALLOCATION

/admin::$INDEX_ALLOCATION/index.php

(2) IIS 7.5经典ASP认证绕过

利用方法
在受保护目录后附加:$i30:$INDEX_ALLOCATION

/admin:$i30:$INDEX_ALLOCATION/index.asp

(3) IIS 7.5 .NET源代码泄露

利用方法

http://victim/admin:$i30:$INDEX_ALLOCATION/admin.php

复现步骤

  1. 创建需要认证的admin目录
  2. 正常访问返回401未授权
  3. 使用绕过技术访问:
    http://192.168.x.x/admin:$i30:$INDEX_ALLOCATION/index.php
    

组合利用技巧

结合解析漏洞+认证绕过:

/admin:$i30:$INDEX_ALLOCATION/index.aspx/.php

防护措施

  • IIS 7.5配置.NET Framework 2.0可防护经典ASP绕过
  • 严格控制认证保护目录权限

四、WebDAV配置与测试

  1. 安装WebDAV功能并启用
  2. 使用扫描工具检测:
    • IIS PUT工具
    • 360网站安全检测(http://webscan.360.cn/)

五、总结与加固建议

渗透测试要点

  • 解析漏洞测试
  • HTTP.SYS远程执行检测
  • 认证绕过技术验证
  • WebDAV配置检查

安全加固建议

  1. 及时安装安全补丁
  2. 合理配置PHP和Fast-CGI设置
  3. 禁用不必要的HTTP方法(PUT等)
  4. 严格设置目录访问权限
  5. 使用最新版本的IIS和组件
  6. 定期进行安全审计和漏洞扫描

通过全面了解IIS中间件的安全特性和常见漏洞,安全人员可以更好地评估和保护基于IIS的Web应用系统。

IIS中间件渗透测试技术详解 一、IIS中间件概述 中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。 中间件安全重要性: 连接网络和系统,接触关键数据 往往连接数据库,储存重要敏感信息 被攻破可能导致信息篡改或泄露 影响企业经济损失甚至社会安全 二、IIS 7.x安装配置 安装步骤 打开控制面板→万维网服务→勾选全部功能 等待安装完成(约1-2分钟) 打开Internet信息服务(IIS)管理器 删除默认网站(Default Web Site) PHP环境配置 安装小皮面板(PHPStudy),选择IIS+PHP版本 或手动配置: 编辑ISAPI或CGI限制,添加php-cgi.exe路径 在处理程序映射中添加PHP支持 三、IIS 7.x渗透测试技术 1. 解析漏洞 漏洞描述 : IIS7.x在Fast-CGI运行模式下,在任意文件(如.jpg/.png)后加上/.php,会将文件解析为PHP执行。 复现步骤 : 创建包含PHP代码的图片文件(如dayu.png) 访问dayu.png/.php 若未解析,检查处理程序映射: 找到phpStudy_ FastCGI 编辑模块映射,取消"仅当请求映射至..."选项 修复建议 : 配置php.ini中 cgi.fix_pathinfo=0 并重启php-cgi 2. HTTP.SYS远程代码执行(MS15-034) 漏洞描述 : HTTP协议堆栈(HTTP.sys)未正确分析特殊设计的HTTP请求,导致远程代码执行。 影响版本 : IIS 7.5、IIS 8.0、IIS 8.5 Windows 7/8/8.1、Server 2008 R2/2012/2012 R2 检测方法 : 发送包含特殊Range头的请求: 若返回416状态码,则存在漏洞。 修复建议 : 安装微软补丁KB3042553 3. 认证绕过漏洞 (1) IIS 6.0 PHP认证绕过 利用方法 : 在受保护目录后附加 ::$INDEX_ALLOCATION (2) IIS 7.5经典ASP认证绕过 利用方法 : 在受保护目录后附加 :$i30:$INDEX_ALLOCATION (3) IIS 7.5 .NET源代码泄露 利用方法 : 复现步骤 : 创建需要认证的admin目录 正常访问返回401未授权 使用绕过技术访问: 组合利用技巧 结合解析漏洞+认证绕过: 防护措施 : IIS 7.5配置.NET Framework 2.0可防护经典ASP绕过 严格控制认证保护目录权限 四、WebDAV配置与测试 安装WebDAV功能并启用 使用扫描工具检测: IIS PUT工具 360网站安全检测(http://webscan.360.cn/) 五、总结与加固建议 渗透测试要点 解析漏洞测试 HTTP.SYS远程执行检测 认证绕过技术验证 WebDAV配置检查 安全加固建议 及时安装安全补丁 合理配置PHP和Fast-CGI设置 禁用不必要的HTTP方法(PUT等) 严格设置目录访问权限 使用最新版本的IIS和组件 定期进行安全审计和漏洞扫描 通过全面了解IIS中间件的安全特性和常见漏洞,安全人员可以更好地评估和保护基于IIS的Web应用系统。