加入收藏| 设为首页
黑客技术 >> 返回 您当前所在位置:首页 > 黑客技术 > 正文

教你内存读取破解QQ密码

更新时间:2018-10-17 10:50:49点击次数:447次字号:T|T

QQ账号的安全防护一直是一个热门话题,关于键盘记录等技能的完结方法在网上的评论十分多。因为攻防不断晋级,QQ自身的安全性也在不断提高,从QQ最近几年的技能完结来看,QQ的键盘输入安全一直是要点重视目标,要进行暗码获取将会涉及到一些比较底层的技能,难度相对较大。但是,从别的一个角度去思考问题,咱们会发现一些用的人不多,却是十分有用的办法,本文风险散步将为咱们介绍运用内存读取的办法来破解QQ暗码。


咱们经过输入正确的账号暗码完结QQ的登录,在这个进程中,QQ除了把账号暗码发送到服务器进行验证之外,还会在内存中保存至少一份暗码的哈希值,这个值能够进行之后的一些访问的验证,比方翻开QQ游戏等。咱们要经过内存读取的方法来取得QQ暗码,首要需求知道QQ暗码哈希值究竟放在内存的哪个方位。当然,咱们没有必要自己编程查找哈希值的方位,有一个开源的软件叫Cheat Engine,它原本是用来在打游戏的时分做弊用的,不过咱们能够利用它很好地完结查找哈希值的使命。


首要运转QQ,若版别不同,哈希值的内存寄存方位也可能会不一样),输入自己的账号暗码登陆之后就不必再管它了。然后咱们需求取得自己QQ暗码的哈希值,这个值将要被用来查找QQ进程空间里边暗码哈希值的方位。QQ暗码的哈希值是用MD5算法核算出来的,所以咱们也需求一个MD5核算东西来核算自己的暗码的哈希值,这类核算东西十分多,有在线的也有本地的,,笔者用的是一个叫HASH的东西。咱们新建一个文本文件,把暗码写在里边然后保存文件,用这个东西翻开这个保存了暗码的文本文件即可看到暗码的哈希值为21232F297A57A5A743894AOE4A801FC3。


翻开Cheat Engine 5.4,点击左上角的那个小电脑的图标挑选咱们要翻开的进程“QQ.exe”。界面上的“Value type”挑选为“Array fo Bytes”,表明咱们要查找接连的字节,勾选“Hex”标签前面的挑选框,然后把前面得到的哈希值粘贴到“Hex9后边的文本框。


点击“First Scan”,开端风险散步的第一次查找。软件界面左边立刻显现了3个寄存哈希值的方位:OOf07494、Ola9a364和Olaba97c。这三个值只是寄存了暗码哈希值的方位的地址,这些方位可能是会变动的,我还要持续寻找指向这些地址的指针。将“Value fo type”改为“4 Bytes”,别离将上面三个地址粘贴到查找框,能够得到指向OOf07494的地址为Ola2e448,指向Ola9a364的地址为019749ec,没有找到Olaba97c这个值。现在咱们开端感到疑问了,究竟上面哪一个地址才是基址呢?


已然身为基址,那么能够断定的是它在相同的环境中地点的方位是不会改变的。所以,咱们能够决断地再开一个QQ,在新开的QQ进程里边从头完结一次上面的进程。这次,仍是得到3组和之前相似的数据:指向OOf07494的地址为Ola2e448,指向Ola99c e4的地址为01974aac,没有找到Olaca34c。不难看出,地址为Ola2e448的这个指针在两个QQ里边都没有变,咱们能够用这个地址来编程完结内存哈希值读取。


原本现已用MFC写过一个GUI程序,但为了有便解说,从头写了一个控制台界面的程序,尽量避免MFC内容的搅扰。此程序运用VC6.0编写并运转经过。



程序代码的首要思想是例举一切进程名为“QQ.exe”的进程(首要代码在函数GetAllHashValue中),翻开进程后读取咱们在上文中取得的指针所指向方位的数据(首要代码在函数GetHashValueByProcessID和ReadMemoryData中),最终将数据转化并显现出来(首要代码在ShowHashValue函数中)。以上代码中函数的具体作用在函数前面的注释里边现已有阐明,别的里边有一些体系调用,假如不清楚详细用法能够到网上查,这儿不再累述。


现在咱们能够构建并履行程序,控制台界面将显现出一切正在运转的QQ的暗码哈希值。咱们在控制台界面点击右键,单击标记,然后选中MD5值的那串文本,再于标题栏点击右键,点击“修改一>仿制”,就能够把文本仿制下来了。拿到这串文本,直奔各大MD5破解站吧,假如暗码不行强壮能立刻逆向出来,比方前面示例中的那串MD5值能够逆向得到明文“admin”。