白袍的小行星

Hack The Box Active靶机的记录

字数统计: 1.2k阅读时长: 5 min
2020/07/03 Share

Sauna

端口:

Nmap scan report for 10.10.10.175
Host is up (0.22s latency).
Not shown: 9986 filtered ports
PORT STATE SERVICE VERSION
53/tcp open domain?
80/tcp open http Microsoft IIS httpd 10.0
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2020-07-03 16:31:59Z)
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: EGOTISTICAL-BANK.LOCAL0., 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 tcpwrapped
3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: EGOTISTICAL-BANK.LOCAL0., Site: Default-First-Site-Name)
3269/tcp open tcpwrapped
5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
9389/tcp open mc-nmf .NET Message Framing

smbmap探测一下,无果。

尝试访问ldap服务:

ldapsearch -x -H ldap://10.10.10.175:389 -D "CN=Anonymous,CN=Users,DC=EGOTISTICAL-BANK,DC=LOCAL" -w '' -b "DC=EGOTISTICAL-BANK,DC=LOCAL0." CN | grep cn

无果,尝试另一个端口,也不行。

来看看80端口,底部发现是W3layoutsCMS,但是找不到能利用的漏洞。

看来必须得到几个用户名才能打开僵局了,我在80端口的网站看到了他们团队的成员姓名,但是爆破一波不管用,上论坛看了下,有人提示需要把名字变一下,我尝试了几个后爆破出了一个:ksmith.

拿到用户名我去尝试访问smb,不行;爆破kerberos口令,还是不行。

尝试去ASREPRoast,即使用不需要预认证的用户,拿到此用户的哈希然后破解。

破解得到密码为:Thestrokes23.

连接winrm,失败,拿去访问ldap服务,得到一堆乱七八糟没啥用的。

想了下,可以用Kerberoasting

报错说时间相差太大,我手动改了好几次都不行,看论坛里说时间一点都不能差,所以先关闭虚拟机的时间同步功能,再利用此命令同步时间:

ntpdate -u 10.10.10.175

这下再运行就没问题了,破解得到密码,草还是之前那个。

我在这儿卡了半天,结果发现ksmith:Thestrokes23是可以登录的,草。。。

拿到用户,翻了下两个软件目录,没看到啥有用的,发现还有一个别的用户:

PrivescCheck来枚举,果然发现了好东西:

这里的用户名有点问题,要改成和用户文件夹一样的名字。

登上去后感觉和上个用户权限没什么不同,最后发现是个大坑点,这个用户居然有域管权限,net user查不到,吐了。

有了域管权限就很简单,impacket-secretsdump拿到管理员的哈希,再用psexec登录即可。

Traceback

只开了22和80,访问80,发现黑客说他放了个webshell,上github搜黑客名字,在其一个webshell项目里找到了所用的shell:smevk.php,账号密码可以在文件里找到。

他的马花里胡哨不好用,我自己传个一句话再蚁剑连接。

用户是webadmin,其home下有个note.txt:

- sysadmin -
I have left a tool to practice Lua.
I'm sure you know where to find it.
Contact me if you have any question.

找了一下没找到.lua文件,在此用户的bash_history里看到了这个:

他用/home/sysadmin/luvit执行了个lua脚本,看来是有权限,自己写个脚本来读取即可。

反弹shell这里有点麻烦,nc无-e,无python/bin/sh指向了dash,我就直接生成个ssh公钥替换了sysadmin用户的公钥,然后免密登录。

监控进程,发现有个问题:

查看这个文件,发现是输出ssh连接欢迎语句的,所以写一句查看root.txt的命令进去,重新连接ssh即可看到。

Remote

端口:

Nmap scan report for 10.10.10.180
Host is up (0.19s latency).
Not shown: 966 closed ports, 27 filtered ports
PORT STATE SERVICE VERSION
21/tcp open ftp Microsoft ftpd
80/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
111/tcp open rpcbind 2-4 (RPC #100000)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
445/tcp open microsoft-ds?
2049/tcp open mountd 1-3 (RPC #100005)

FTP可以匿名登录,但是里面是空的。

80端口是Umbraco CMS,有RCE但需要账号密码。

2049是与nfs服务有关的,我们可以尝试远程挂载。

showmount -e 10.10.10.180

探测得到文件夹名为/site_backups,挂载到本地查看:

mkdir /test
mount -t nfs 10.10.10.180:/site_backups /test -o nolock

在文件夹里翻到一个Umbraco.sdf,谷歌得知是数据库类文件,提取其中有关admin的字符串:

strings Umbraco.sdf | grep admin

破解得到密码为:baconandcheese.

用账号密码来使用RCE脚本,反弹shell到msf.

枚举服务,发现UsoSvc服务用户可控,上传nc,替换二进制文件为反弹shell的exe:

sc stop UsoSvc
sc config UsoSvc binpath="c:\windows\temp\shell.exe"
sc start UsoSvc

上线之后会很快断掉,所以提前进行进行迁移。

CATALOG
  1. 1. Sauna
  2. 2. Traceback
  3. 3. Remote