猫头鹰
信安舆情早知道

Invoke-TheHash:执行WMI和SMB命令的PowerShell脚本

项目主页

https://github.com/Kevin-Robertson/Invoke-TheHash

简介

Invoke-TheHash是一个可以执行WMI和SMB命令的PowerShell脚本。

要求

PowerShell 2.0

Import

导入模块 ./Invoke-TheHash.psd1

或者

  • . ./Invoke-WMIExec.ps1
  • . ./Invoke-SMBExec.ps1
  • . ./Invoke-TheHash.ps1

功能

  • Invoke-WMIExec
  • Invoke-SMBExec
  • Invoke-TheHash
  • ConvertTo-TargetList

Invoke-WMIExec

  • WMI命令执行功能。

参数:

  • Target -主机名或目标的IP地址。
  • Username -用于身份验证的用户名。
  • Domain -域名用于身份验证。本地帐户或在用户名后使用@domain时不需要此参数。
  • Hash -验证NTLM密码哈希。此模块支持LM:NTLM或NTLM格式。
  • Command -命令执行目标。如果没有指定命令,该函数将检查用户名和散列是否可以访问目标上的WMI。
  • Sleep -默认值= 10毫秒:设置以毫秒为单位的功能的启动休眠。

示例

Invoke-WMIExec -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash 
F6F38B793DB6A94BA04A52F1D3EE92F0 -Command "command or launcher to execute" -verbose

7379df8a-d12b-11e6-8e8e-6dc6da4be235

Invoke-SMBExec

  • 支持SMB1,SMB2和SMB签名的SMB(PsExec)命令执行功能。

参数:

  • Target – 主机名或目标的IP地址。
  • Username -用于身份验证的用户名。
  • Domain – 域名用于身份验证。本地帐户或在用户名后使用@domain时不需要此参数。
  • Hash – -验证NTLM密码哈希。此模块支持LM:NTLM或NTLM格式。
  • Command – 命令执行目标。如果未指定命令,该函数将仅检查用户名和散列是否可以访问目标上的SCM。
  • CommandCOMSPEC -默认值 = Enabled: 预置 %COMSPEC% /C
  • Service – 默认值= 20个字符的随机:该服务的名称,创建和删除目标。
  • SMB1 – (开关)强制SMB1。默认行为是执行SMB1版本,如果目标支持,则使用SMB2。
  • Sleep – 默认值= 150毫秒:设置以毫秒为单位的功能的启动休眠。

示例

Invoke-SMBExec -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash 
F6F38B793DB6A94BA04A52F1D3EE92F0 -Command "command or launcher to execute" -verbose

b899ecf2-d0f6-11e6-9bd7-750b218e86a0

Invoke-TheHash

  • 用于对多个目标运行Invoke-WMIExec和Invoke-SMBExec函数。

参数:

  • Type – 设置所需的调用,TheHash功能。设置为WMIExec或SMBExec。
  • Targets – 主机名列表,IP地址,或目标CIDR标记。
  • TargetsExclude – 主机名的列表或IP地址,以排除表单列表或目标。
  • PortCheckDisable – (开关)禁用WMI或SMB端口检查。由于此函数尚未进行线程化,端口检查通过在尝试完全同步TCPClient连接之前检查打开的WMI或SMB端口来加速其功能。
  • PortCheckTimeout – 默认值= 100:设置无应答超时以毫秒为单位WMI或SMB端口检查。
  • Username – 用于身份验证的用户名。
  • Domain – 域名用于身份验证。本地帐户或在用户名后使用@domain时不需要此参数。
  • Hash – 验证NTLM密码哈希。此模块支持LM:NTLM或NTLM格式。
  • Command – 命令执行目标。如果未指定命令,该函数将仅检查用户名和散列是否可以访问目标上的WMI或SCM。
  • CommandCOMSPEC – 默认值 = Enabled: 预置 %COMSPEC% /C 。
  • Service – 默认值= 20个字符的随机:只有SMBExec类型。要在目标上创建和删除的服务的名称。
  • SMB1 – (开关)强制SMB1。默认行为是执行SMB1版本,如果目标支持,则使用SMB2。
  • Sleep – 默认值= WMI 10毫秒,SMB 150毫秒:设置以毫秒为单位的功能的启动休眠。

示例

Invoke-TheHash -Type WMIExec -Targets 192.168.100.0/24 -TargetsExclude 192.168.100.50 -Username 
Administrator -Hash F6F38B793DB6A94BA04A52F1D3EE92F0

c0f69a62-d0f6-11e6-91f2-af9103571bde

ConvertTo-TargetList

  • 将Invoke-TheHash输出转换为仅包含发现具有Invoke-WMIExec或Invoke-SMBExec访问的目标的数组。此函数的输出可以反馈到Invoke-TheHash的Targets参数。

 

*转载请注明来自MottoIN

转载请注明来自MottoIN,未经允许不得转载!MottoIN » Invoke-TheHash:执行WMI和SMB命令的PowerShell脚本

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

MottoIN 换一个角度看安全

寻求报道联系我们