域权限维持-Hook PasswordChangeNotify
1、生成Hook dll
poc下载地址:
https://github.com/clymb3r/Misc-Windows-Hacking
使用VS2015开发环境,MFC设置为在静态库中使用MFC
编译工程,生成HookPasswordChange.dll
生成的dll文件在Misc-Windows-Hacking-master\HookPasswordChange\x64\Release路径中
2、下载powershell的dll注入脚本
下载地址:https://github.com/clymb3r/PowerShell
其中我们要用到的是\PowerShell-master\Invoke-ReflectivePEInjection\Invoke-ReflectivePEInjection.ps1 这个脚本
3、Hook PasswordChangeNotify
将HookPasswordChange.dll文件以及Invoke-ReflectivePEInjection.ps1 脚本文件传到域控机器上,并在域控机器的powershell中运行如下命令:
Import-Module .\Invoke-ReflectivePEInjection.ps1
Invoke-ReflectivePEInjection -PEPath HookPasswordChange.dll -procname lsass
当没有报错的时候就证明成功啦,之前一直报脚本错误,都快放弃了,今天再测一次居然就成了,呜呜呜
4、验证Hook PasswordChangeNotify接下来就是手动修改域管理员密码,
接下来就是手动修改域控密码,在C:\Windows\Temp下可以找到passwords.txt,其中记录了新修改的密码。
5、关于修改域管理员密码
首先可以修改密码管理策略,免得在修改密码测试的时候提示说无法修改密码
服务器管理器>工具>组策略管理>林>域>组策略对象>Default Domain Policy(右击编辑,编辑界面>
计算机配置>策略>Windows设置>安全设置>账户策略>密码策略>密码最长使用期限(修改为0天)或者禁用密码复杂度要求。
改成这样,然后按ctrl+alt+delete就可以修改密码啦