Windows Server 2008 R2(IIS7.5)Web提权核心重点总结
一、前置:蚁剑 Webshell 转 Meterpreter(MSF)
1. 转换必要性
蚁剑仅基础文件/命令执行;Meterpreter具备提权、进程迁移、抓取哈希、端口转发、持久化、键盘记录等完整后渗透能力,是Web提权核心载体。
2. 两种上线Meterpreter方式
EXE落地上传
攻击机msfvenom生成反向tcp payload.exe;MSF开启handler监听;
目标两种投递:certutil远程下载至
C:\Windows\Temp/ 蚁剑直接上传;执行exe建立会话。适用:PowerShell被禁用、无文件执行环境失效场景。
PowerShell无文件反射(EDR友好)
生成psh-reflection脚本,攻击机起HTTP服务托管;
目标执行隐藏绕过执行策略命令,内存加载payload,无磁盘落地。
3. Meterpreter基础排查命令
sysinfo # 系统版本 getuid # 当前运行身份(IIS默认NETWORK SERVICE) getprivs # 查看可用权限(提权关键) ps # 进程列表,迁移稳定进程 migrate PID # 进程迁移保活 background # 后台会话,切换MSF模块
二、提权方式1:Token模拟(JuicyPotato/SweetPotato,最高优先级)
1. 前置判定条件
getprivs存在SeImpersonatePrivilege Enabled;IIS池NETWORK SERVICE/ApplicationPoolIdentity默认自带该权限。
2. 核心原理(设计缺陷,非CVE漏洞)
SeImpersonatePrivilege允许账户模拟任意连接自身的客户端(无权限高低限制);
COM激活回调可自定义管道地址,SCM会以SYSTEM身份启动COM进程并主动连接攻击者管道;
攻击者模拟SYSTEM管道客户端,复制Token后创建SYSTEM权限进程完成提权。
3. 两种利用方案对比
| 方案 | 实现 | 落地文件 | 杀软风险 | 稳定性 |
|---|---|---|---|---|
| MSF反射ms16_075_reflection_juicy | MSF内置模块,DLL内存注入 | 无 | 极低 | 中等(依赖CLSID) |
| 原生JuicyPotato.exe | 上传exe+批处理payload | 有文件 | 高(特征入库) | 高 |
4. 关键参数
2008R2高成功率CLSID:
{9B1F122C-2982-4e91-AA8B-E071D54F2A4D}(Windows Update)MSF模块配置:指定会话、反向监听端口、对应CLSID,run直接获取SYSTEM会话。
5. 验证提权成功
getuid返回NT AUTHORITY\SYSTEM,getprivs全部权限启用。
三、提权方式2:MS16-032(CVE-2016-0099 内核竞争漏洞)
1. 适用环境
Windows 7/2008R2/8.1/2012;未安装补丁KB3139914。 检测命令:wmic qfe get hotfixid | findstr KB3139914,无输出即可利用。
2. 漏洞原理
Secondary Logon服务以SYSTEM运行,处理线程句柄存在竞争条件;攻击者在窗口期篡改线程上下文,让服务执行恶意代码。
3. 无文件利用流程
攻击机托管漏洞PS脚本+反射Meterpreter脚本,开启HTTP服务;MSF监听对应端口;
目标执行隐藏PowerShell IEX远程加载漏洞脚本,调用漏洞函数加载马;
竞争条件不稳定,建议批处理循环执行5次提升成功率。
4. 优缺点
优点:全程内存执行、无落地文件;
缺点:竞争触发概率低,多次执行;存在蓝屏风险。
四、提权方式3:BypassUAC(仅管理员账号可用)
1. 硬性使用前提
当前用户属于本地Administrators组;NETWORK SERVICE无法使用。 检测:whoami /groups | findstr S-1-5-32-544(有输出代表管理员)。
2. 适用场景
IIS池配置管理员账号、已拿到管理员账号、Web目录异常以管理员运行。
3. 2008R2稳定MSF模块
bypassuac:COM IFileOperation劫持;bypassuac_eventvwr:事件查看器注册表劫持;bypassuac_comhijack:COM接口劫持。
4. 完整链路
普通管理员(低完整性)→ BypassUAC → 高完整性管理员 →getsystem→ SYSTEM。
五、三类提权完整使用链路
Web默认NETWORK SERVICE(最常见)链路:Webshell → Meterpreter → JuicyPotato(ms16_075反射) / MS16-032 → SYSTEM
Web进程为管理员账号链路:Webshell → Meterpreter → BypassUAC → getsystem → SYSTEM
六、提权方法优先级排序
首选:MSF反射JuicyPotato(无文件、低杀软风险,依赖SeImpersonate)
次选:MS16-032(无文件,依赖未打KB3139914补丁)
管理员专属:BypassUAC系列模块
兜底备选:原生JuicyPotato.exe(落地文件,杀软易拦截)
七、关键区分与避坑要点
JuicyPotato依赖SeImpersonatePrivilege权限,和系统补丁无关;MS16-032依赖缺失指定补丁,权限无要求;
BypassUAC不能用于NETWORK SERVICE,切勿混用;
无文件方案(PowerShell反射/MSF反射)对抗EDR效果远优于EXE落地;
利用失败优先更换CLSID、循环执行、切换提权方案。
八、防御核心要点(反向总结)
IIS应用池尽量使用低权限内置账户,限制SeImpersonatePrivilege;
及时安装KB3139914等高危内核补丁;
限制PowerShell执行策略、阻断远程IEX内存加载、拦截certutil下载恶意程序;
EDR监控JuicyPotato特征、COM异常回调、命名管道异常创建;
禁止网站程序池使用本地管理员身份运行。
