访问进程堆栈查找密码

本文描述一下如何在 Windows 系统里通过访问其它进程的堆栈来查找到密码。这种方法的局限就是在访问其它进程的地址空间时堆栈不能释放了(检查密码的那个函数不能返回了,这类情况多出现于有提示密码错误的窗口)。

下面我们以万象网管客户端这个程序为例说明查找密码的具体方法。需要的工具有 WinHex ,通过这个程序去访问其它进程的地址问题。

1. 先打开检验程序的密码输入窗口,并随便输入一个密码,如“456456”,如下图:
01

2. 这时不需点击“确定”去关闭提示窗口,而是使用 WinHex 去打开这个进程的地址空间。如下图:
02

3. 选择检验进程,并打开所有地址空间。如下图:
03

4. 打开后,按 “Ctrl + F”查找刚才的密码串,如刚才的“456456”,会得到这样的结果,如下图:
04

5. 寻找真实密码串,在图中“456456”串下面有一串“B51E8DBEBD4BA8A8F342190A4B9F08D7”,这个就是“456456”的MD5加密串,一般为了安全起见都把实际密码解密后检验的,在图中我们也看到了其它一些MD5的加密串,通过描述,“UnlockCipher=7CE449720EB175CE0E8E2D48E7938C67”应该就是万象的解锁密码的密文吧;“RunSetCipher=7CE449720EB175CE0E8E2D48E7938C67”应该就是万象的系统设置的密码的密文。

6. 我们通过一些MD5解密的数据库去碰撞解密这些加密串就可以了,现在一些网站上免费提供的记录已经很多了。有些记录是收费的。

Over!

2 thoughts on “访问进程堆栈查找密码”

  1. 这里使用万象只是说明一下如何这样取得栈中的数据,如果真是要取得万象加密的密码,只需要打开 C:\Windows\system32\SetInfo.txt 就可以了。里面的三个MD5加密串就是加密后的密文。

Leave a Reply

Your email address will not be published. Required fields are marked *