Invoke-TheHash:PowerShell实现的哈希传递攻击套件
作者:媒体转发 时间:2018-09-23 21:22
Invoke-TheHash项目是一个基于.Net TCPClient,通过把NTLM hash传递给NTLMv2身份验证协议来进行身份验证的攻击套件,且执行时客户端不需要本地管理员权限。
安装环境PowerShell 2.0及以上。
导入 Import-Module ./Invoke-TheHash.psd1或
. ./Invoke-WMIExec.ps1. ./Invoke-SMBExec.ps1
. ./Invoke-SMBEnum.ps1
. ./Invoke-SMBClient.ps1
. ./Invoke-TheHash.ps1 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 截图:

作用:SMB(PsExec)命令执行,支持SMB1,SMB2.1,无论SMB有无签名。
参数:Target - 目标主机名或IP地址。
Username - 用于身份验证的用户名。
Domain - 用于身份验证的域。本地帐户或在用户名后使用@domain时不需要此参数。
Hash - 用于身份验证的NTLM密码哈希(格式: LM:NTLM 或 NTLM)。
Command - 在目标上执行的命令。如果命令未指定,则将检查用户名和哈希是否可以访问目标上的SCM。
CommandCOMSPEC - 默认=Enabled:将%COMSPEC% /C预先添加到命令。
Service - 默认 = 20字符(随机):要在目标上创建和删除的服务名称。
Sleep - 默认 = 150毫秒:设置开始 – 睡眠值(以毫秒为单位)。
Version - 默认 = Auto: (Auto,1,2.1) 强制SMB版本。默认执行SMB版本协商,如果目标支持,则使用SMB2.1。
示例1: Invoke-SMBExec -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Command "command or launcher to execute" -verbose 示例2:检查目标上的SMB签名要求。Invoke-SMBExec -Target 192.168.100.20
截图:

作用:通过签名或未签名的SMB2.1执行用户,组,NetSession和共享枚举任务。
参数: Target - 目标主机名或IP地址。 Username - 用于身份验证的用户名。 Domain - 用于身份验证的域。本地帐户或在用户名后使用@domain时不需要此参数。 Hash - 用于身份验证的NTLM密码哈希(格式: LM:NTLM 或 NTLM)。 Action - (全部,组,NetSession,共享,用户)默认 = share:枚举共享。 Group - 默认 = Administrators:枚举组。 Sleep - 默认 = 150毫秒:设置开始 – 睡眠值(以毫秒为单位)。 Version - 默认 = Auto: (Auto,1,2.1) 强制SMB版本。默认执行SMB版本协商,如果目标支持,则使用SMB2.1。 示例: Invoke-SMBEnum -Target 192.168.100.20 -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -verbose 截图:





