权限提升#
本分类包含各种权限提升技术和方法,用于获取目标系统的更高权限。
常用权限提升技术#
Windows权限提升#
- 本地提权:利用Windows系统漏洞获取本地管理员权限
- 域提权:在域环境中获取域管理员权限
- DLL劫持:通过劫持DLL文件获取更高权限
- 令牌窃取:窃取用户或系统令牌获取更高权限
- 计划任务提权:利用计划任务执行高权限命令
Linux权限提升#
- SUDO提权:利用sudo命令的配置错误获取root权限
- SUID提权:利用设置了SUID位的可执行文件获取root权限
- 内核漏洞提权:利用Linux内核漏洞获取root权限
- 文件权限提权:利用文件权限配置错误获取更高权限
- 容器逃逸:从容器环境逃逸到宿主机获取更高权限
Web应用权限提升#
- 数据库提权:从数据库用户权限提升到系统权限
- Web Shell提权:通过Web Shell获取系统权限
- 应用程序提权:利用Web应用程序的漏洞获取更高权限
常用权限提升工具#
Windows权限提升工具#
- PowerUp:PowerShell权限提升检测和利用工具
- WinPEAS:Windows权限提升枚举和审计脚本
- Mimikatz:Windows凭据提取和操作工具
- JuicyPotato:Windows本地提权工具
- PrintSpoofer:Windows本地提权工具
Linux权限提升工具#
- LinPEAS:Linux权限提升枚举和审计脚本
- LinEnum:Linux权限提升枚举脚本
- linux-exploit-suggester:Linux内核漏洞检测工具
- GTFOBins:Linux命令提权参考
- BeRoot:Linux和Windows权限提升工具
Web应用权限提升工具#
- sqlmap:SQL注入工具,可用于数据库提权
- Metasploit:包含多种Web应用权限提升模块
- Burp Suite:Web应用安全测试工具,可用于发现提权漏洞
权限提升的注意事项#
- 合法性:权限提升必须在授权的情况下进行,未经授权的权限提升属于违法行为
- 隐蔽性:权限提升过程中要注意隐蔽性,避免被安全监控系统发现
- 稳定性:选择稳定的权限提升方法,避免导致系统崩溃
- 记录:详细记录权限提升过程,包括使用的工具、技术和结果
权限提升的最佳实践#
- 信息收集:在进行权限提升前,充分收集目标系统的信息,了解系统的配置和安全措施
- 漏洞扫描:使用漏洞扫描工具发现系统中可能存在的权限提升漏洞
- 尝试多种方法:尝试多种权限提升方法,提高成功率
- 权限维持:获取高权限后,建立持久化访问,确保后续能够继续访问
权限提升示例#
Windows本地提权示例#
# 使用PowerUp检测权限提升漏洞
. .\PowerUp.ps1
Invoke-AllChecks
# 使用JuicyPotato进行提权
JuicyPotato.exe -t * -p c:\windows\system32\cmd.exe -a "/c net localgroup administrators user /add"
# 使用PrintSpoofer进行提权
PrintSpoofer.exe -c "cmd.exe"Linux权限提升示例#
# 使用LinPEAS检测权限提升漏洞
chmod +x linpeas.sh
./linpeas.sh
# 利用SUID提权
find / -perm -4000 -type f 2>/dev/null
# 利用sudo提权
sudo -l
# 利用内核漏洞提权
download exploit
compile exploit
./exploitWeb应用提权示例#
-- MySQL数据库提权
SELECT sys_exec('whoami');
-- PostgreSQL数据库提权
CREATE OR REPLACE FUNCTION exec(cmd text) RETURNS text AS $$
DECLARE
result text;
BEGIN
EXECUTE 'COPY (SELECT 1) TO PROGRAM ' || quote_literal(cmd);
RETURN 'OK';
END;
$$ LANGUAGE plpgsql;
SELECT exec('whoami');