https://github.com/kindtime/nosferatu
0x01 如何运作的?
首先,DLL被注入到lsass进程中,并将开始挂钩身份验证WinAPI调用。目标函数是MsvpPasswordValidate(),位于NtlmShared.dll。为了不被检测到,被钩住的函数会调用原函数,并允许正常的身份验证流程。只有在看到身份验证失败后,挂钩才会将实际的NTLM哈希值与后门哈希值交换出来进行比较。
0x02 用法
Nosferatu必须被编译为64位DLL,而且必须在具备SeDebugPrivilege权限的命令行下才能使用DLL注入器来注入,也可以使用MavInject来注入。
MavInject 808 /INJECTRUNNING Inject.dll
使用Impacket的登录示例:
0x03 限制
在Active Directory环境中,通过RDP、runas或锁屏进行的身份验证不能与密码一起工作。但使用SMB、WinRM和WMI进行认证仍然是可以的。
在非ad环境中,身份验证适用于所有方式。
0x04 注意
本地简单复现了一下,发现只有当前编译的这台Win10可注入成功,其他Win10和Win08/12/16等均注入失败,就这样,自己去测试下吧。
https://mp.weixin.qq.com/s/D7hhagvgI7ybjuBXCi0hHQ
原文始发于微信公众号(Hack分享吧):Nosferatu - Lsass NTLM 身份验证后门
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论