Adminxe's Blog | 低调求发展 - 潜心习安全 ,技术永无止境 | 谢谢您对本站的支持,有什么问题或者建议请及时联系:点击这里给我发消息

20200220–靶场记录

渗透测试 Adminxe 3315℃ 0评论

0x00 前言

         疫情期间,在家无聊,闲的腚疼,就开始打靶。为了此次打靶,23g的文件,特地开了百度云会员来下载,17号晚上下载,18号一觉醒来发现下载完毕,老衲的10块钱会员钱还是没白花,于是就开始了打靶之旅,下面将记录此次打靶的所有细节和所遇到的问题。大佬笑笑经过就好,小白的话就认真学习,相信此次打靶还是有一定技术性的提升。

整个网络拓扑图如下:

0x01 安装

         前面的细节无非就是三个压缩包,分别为WEB、DC、PC。解压完毕,打开落满尘灰的虚拟机,兴致勃勃的将解压好的文件放入虚拟机,然后准备打开,结果开始报错(然后这也是此次打靶遇到的问题之一),看图:

于是傻乎乎的我就开始询问各位大佬,然后大佬告诉我是我电脑系统问题,说我的系统不支持虚拟机。我笑了,连忙问号三连表示友好(???)。

我连忙拿起旁边的红酒杯,那里面可是装了沉浸80多年的白开老白干,一口下去,灵光一现,脑壳中一位美丽的女子一丝不挂的出现在我的脑海,我口水直流三尺,甚至还硬了,突然……我。对不起,跑题了,然后我将虚拟机配置文件里面的版本号修改为我现在虚拟机的版本号,然后再次打开,问题就解决了。

         当三个靶机(web、dc、pc)全部安装完成后,于是开始配置ip,这里面似乎并没有遇到多大的问题,对不起,突然下面一硬,问题来了,我发现他们之间,内网地址互ping不通,我开始焦虑,我开始脱发,不,我是安全人员,我不能这样,我要解决它!当我重启了一下,结果就能ping通了,很神奇对不对,我也这么觉得。

顿时就很开心,然后问题又来了,我发现外网,也就是我本机,作为攻击机器,并不能与web端机器ping通,脑袋一热,直接把web端选择为NAT模式自动获取ip(因为WEB端其中一块网卡是可以访问外网的),继续ping,发现ping还是不同,就去查看(防火墙),发现是策略问题,就直接将防火墙关闭(并没有关闭域之间的防火墙),发现可以ping通,开始打靶。

0x02 WEB渗透

         兴致勃勃的拿到靶机ip(web),192.168.229.128,操起宝刀,移步进入kali(攻击机器),开始进行一波初始的信息收集,使用nmap扫描一下目标ip端口信息,详情如下:

看靶场的说明,我们首先要打开weblogic(使用管理员权限)。

然后看到几个比较感兴趣的端口80(http)、1433(mssql)、3389(rdp)、7001(weblogic)。

         于是一一去探测,第一想法就是在80入口,第二是7001端口,后面的通过1433弱口令传马和3389选择去rdp爆破。

         1.80访问失败。

         2.7001(weblogic)显示404。

         3.1433和3389弱口令均爆破失败。

回头继续看2、7001(weblogic),虽然是404,但是肯定存在站点,只是文件不存在,脑海中一热,就想做个工具人,去dirbrute爆破一波目录和文件,突然一硬,阻止了我这种工具人的想法,就去手工探测,发现没有什么效果,于是去问百度,发现默认地址不对,于是按照百度说的,目标站点出现了。站点路径:

http://192.168.229.128:7001/console/login/LoginForm.jsp
  1. 先开始尝试weblogic的弱口令,手动weblogic | 12345678,进不去,开始burp抓包进行爆破,白搭,爆破不进去,当然进去我也忘记怎么拿shell,毕竟好久没见了
  2. 开始网上搜索关于weblogic的各种漏洞,然后就找到了POC工具,检测weblogic漏洞工具,地址附上:https://github.com/rabbitmask/WeblogicScan
  1. 通过POC测试,存在CVE-2019-2725,直接根据漏洞上工具(合理的做好一名脚本小子)

成功getshell,密码:pass,使用冰蝎连接,shell地址:

http://192.168.229.128:7001//_async/adminxe.jsp
  1. Shell成功拿下,继续进行后渗透

0x03 内网信息收集

  1. 通过arp –a,进行初步的内网探测

存在内网环境:

10.10.10.10

10.10.10.80

10.10.10.201

  1. 进一步探测信息,查看是否存在域内环境,通过命令:net time /domain 查看域内解析服务器的时间,确定域控,结果返回系统错误(很明显权限不够)

Whoami,查看shell权限,发现为administrator权限,并非最高权限

  1. 通过systeminfo尽可能多的收集机器信息

经过查看存在域,de1ay.com,并且得到补丁程序编号,补丁只打了3个,可通过补丁信息对比继续提权

  1. 当我们得知这是域环境,那么我们的目标肯定是获得DC中域管的权限,最终拿下整个域。(这里呢,我跳过了一系列的提权工具,经过尝试也是可以的),为了后渗透的完整性,我选择CS(Cobalt Strike)进行图形化界面的渗透。

CS生成木马—>上传到shell—>执行木马—>上线,进行下一步的渗透。

  1. 开始进行提权,方便下一步的操作

利用ms14-058,成功获取权限

方便于维权和防止shell掉线,我们使用注入进程功能,会生成一个新的会话

  1. 我们是用portscan功能,继续探测域内主机存活情况
  1. 继续进行域内的信息收集,开始定位域控(这里假装我们看不到名字DC,嘻嘻),然后使用命令:net group “domain controllers” /domain

可以确定DC为:10.10.10.10

  1. 定位域管理员:net group “domain admins” /domain

确定域管为:de1ay/Administrator

9.通过前面的信息收集已经有了一个大概的范围,然后刚才我发现,通过ping的时候80可以和10(DC)通,80(WEB)不可以和201(PC)通,10可以和80和201都通,那么我们确定,想到获取到PC的权限,需要先get到DC的权限(通过10做代理,链接201)

0x04 横向移动

1.这里呢,我们已经拿到了域管的账号和明文密码:

账号:DE1AY\Administrator

密码:1qaz@WSX

直接利用流量代理,将80(WEB)代理到本地,然后去登陆10.10.10.10(DC)

通过dsa.msc

可以查看域内的机器和域内账户,相当于拿到了整个域的控制权

2.这里呢,方便保存域内账户信息,我们使用csvde进行保存域内账户信息,便于对其他机器的渗透

3.然后我们下一步,还是像刚才说的,拿到DC并不算完结,我们的目标在于进入PC,所以这里,我们并不能直接通过80(web)代理到201(PC)上面去(因为80和201不通),这里,我选择socks多层跳板来进行获取PC的权限,于是到这里还是说一下msf的socks代理。这里msf上线过程就不细说,基本和cs一样,生成木马,上传到shell端运行,得到shell

4.首先我们要添加路由:

run autoroute  -s 10.10.10.0/24  #添加到路由

run autoroute –p #查看路由

成功添加路由后,即可使用auxiliary/server/socks4a进行代理操作,然后我们要通过DC(10.10.10.10)做跳板进行代理,所以我们要先获取DC的shell

暂时写到这里,思路很清晰了。只是说这个网络环境不是很稳定,真的很难受。

转载请注明:Adminxe's Blog » 20200220–靶场记录

喜欢 (10)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址