系统:WinXP 大小:2.0M
类型:密码相关 更新:2012-06-06 14:39
通过用 mimikatz 对 lsass.exe 进行进程注入
再调用 sekurlsa.dll 去获取 wdigest
也写了下自己对加密解密这个问题的想法
现在在把这个给大家点明确一些~
在用这个神器获取密码的时候 命令分别如下
privilege::debug
inject::process lsass.exe sekurlsa.dll
@getLogonPasswords
可以推理出整个流程
先将进程提升到 debug 权限
然后将 sekurlsa.dll 注入到 lsass.exe 进程里
调用 sekurlsa.dll 里的 getLogonPasswords 这个函数获取出密码
结合上文我提到的废话
以前我们一般用 wce.exe 或 lslsass.exe
通常是只能从内存里顶多抓active账号的 lm hash 和 ntlm hash
但用了这个神器抓出明文密码后
由此我们可以反推断 在 lsass.exe 里并不是只存有 lm hash 和 ntlm hash 而已
lsass.exe 里很可能是存在两个敏感信息
1. 明文密码经过加密算法的密文 (这个加密算法是可逆的 能被解密出明文)
2. 明文密码经过hash算法做数字摘要认证的hash
(注意: 是加密算法 而不是hash算法 加密算法是可逆的 hash算法是不可逆的)
所以进程注入 lsass.exe 时 所调用的 sekurlsa.dll 应该包含了对应的解密算法
逆向功底比较好的童鞋可以尝试去逆向分析一下
直接去逆向分析下 sekurlsa.dll 的 getLogonPasswords 函数做了些什么
是直接从某处就取出了 wdigest
还是从某处先取出了 某些信息
然后有解密操作的过程
说不定能发现微软的一些小秘密哟 =..=~
比如 它的这个加密算法
在作者blog里发现作者其实已经回答过这个问题了
没有明文存储 而是放在内存里 并且是可逆的 这样也就验证了我推测的第一种情况
1. 明文密码经过加密算法的密文 (这个加密算法是可逆的 能被解密出明文)
应用信息
支持( 0 ) 盖楼(回复)