内网渗透:Windows 提权实战

Windows 提权实战:不安全的服务、注册表 AlwaysInstallElevated、令牌模拟、Potato 系列、内核漏洞等,原理、影响、利用、检测、防御与加固。

写在前面:合法学习边界

提权测试只允许在授权靶场或授权主机进行。对真实系统提权、利用内核漏洞可能触犯法律。

一、漏洞原理

拿到一个 Windows 低权限 Shell 后,目标是提升到 SYSTEM/Administrator。Windows 提权大多利用“服务/配置跑在高权限上,却可以被低权限用户控制”这类问题。

常见提权面:

1
2
3
4
5
6
不安全的服务(可写二进制、可写服务路径、未引用的服务路径)
注册表 AlwaysInstallElevated(MSI 以 SYSTEM 安装)
令牌模拟(SeImpersonatePrivilege → Potato 系列)
可写启动文件夹 / 计划任务
DLL 劫持
内核漏洞

二、影响与危害

1
2
3
低权限 → SYSTEM/管理员
控制主机、横向移动
抓取更多凭据

风险等级:高。

三、利用 / 复现

第一步:收集信息

1
2
3
4
5
6
7
8
9
whoami /all          :: 用户与权限(看 SeImpersonatePrivilege)
:: 解释:SeImpersonatePrivilege 是 Potato 系列提权的前提
systeminfo           :: 系统版本与补丁
:: 解释:核对补丁找缺失 CVE
sc qc <服务名>        :: 服务配置
:: 解释:看服务二进制路径/运行账号,判断能否替换
wmic service get name,pathname,startname   :: 服务二进制路径
reg query HKCU\Software\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
:: 解释:值为 1 时 MSI 会以 SYSTEM 安装,可用来提权

第二步:不安全的服务

1
2
3
1. 找服务路径可写或引用的二进制可被替换
2. 替换成恶意程序(如创建管理员用户)
3. 重启/触发服务 → 以 SYSTEM 执行

未引用服务路径:

1
2
# 服务路径含空格且未加引号,可放同名恶意文件到前面目录
sc start <服务名>

第三步:AlwaysInstallElevated

1
2
3
# 注册表值为 1 时,MSI 以 SYSTEM 安装
msfvenom -p windows/... -f msi -o evil.msi
msiexec /quiet /i evil.msi

第四步:令牌模拟(Potato 系列)

1
2
拥有 SeImpersonatePrivilege(服务账号常见)时
用 Potato(Juicy/Rogue/LoneWolf)提权到 SYSTEM

第五步:内核漏洞

1
2
systeminfo 看补丁 → 对缺失补丁查 CVE
只在授权环境用,先评估稳定性

四、检测

1
2
3
4
服务二进制/路径权限异常(可被低权限修改)
注册表 AlwaysInstallElevated 被开启
高权限服务运行账号可疑
补丁严重缺失、版本过旧

五、防御

1
2
3
4
5
服务二进制用受控目录并收紧 ACL
关闭 AlwaysInstallElevated
服务账号最小权限,不随意给 SeImpersonate
及时打补丁
EDR 监控提权行为(Potato、服务替换)

六、加固(修复)

1
2
3
4
5
修复不安全服务路径与权限
关闭 AlwaysInstallElevated
清理提权工具与后门账户
补装补丁
对已提权主机取证

七、小结

Windows 提权核心是“谁在高权限下运行、低权限用户能不能碰它”。先看 whoami /allsc qc,再决定走服务替换、注册表、Potato 还是内核漏洞。和 Linux 提权一样,先信息收集再动手。