前言:
最新聊天的时候谈起微信聊天解密的问题,解密方式已经公开好多年了,还没变。经多年前的记忆,手机端的微信,图片、视频信息撤回后,可以在本地找到相应的记录。由此猜测,撤回的信息可能还保存在数据库中。本篇文章就介绍如何解密获取微信聊天记录,恢复或撤回的信息咱们下个文章介绍。
** 微信解密密码正确但是解密失败的情况,最近花了很多时间研究,解决方式在文章末尾!
准备工具:
1、SQLite Database Browser(或 Navicat Premium 等等)
2、7-zip 或其他解压缩工具
过程:
1、获取EnMicroMsg.db文件;
已root过的手机直接找“/data/data/com.tencent.mm/MicroMsg/<user-md5>”路径下的“EnMicroMsg.db”数据库;没root的手机还是使用手机自带的备份功能,或手机厂商官方的备份工具最方便。
备份完成之后,会生成多个数据文件,我们可先用解压缩软件预览文件。找到带有“com.tencent.mm”(微信包名)的压缩包进行解压。
解压完成后,在文件夹内直接搜索“EnMicroMsg.db”,这一步就完成了,有多个db文件说明有分身数据。
2、微信打开“EnMicroMsg.db”数据库是需要密码的,密码的获取规则为:IMEI+UIN的值做MD5加密,取MD5值的前7位(且计算过程中,所有字母均为小写);
UIN识别码:存储在/data/data/com.tencent.mm/shared_prefs/auth_info_key_prefs.xml文件中。
我们打开“auth_info_key_prefs.xml”文件,根据下图红框所示,找到UIN码。这里需要注意的是,有的UIN识别码是带“ – ”减号的,在计算MD5值需要加上!
IMEI识别码:拨号界面输入*#06#,或者在关于手机里都可以查询的到,如果有双卡两个IMEI都要记录。我这边有两个:“861639049707055”和“861639049707048”。
那么我们就开始拼接IMEI+UIN计算MD5值取前7位字符(红色为IMEI,蓝色为UIN,粉色为前七位,注意:MD5加密的时候一定复制32位小写的):
(1) 861639049707055445004976 = 4d09017(前七位)d90dab7a9de6533d372365f3a
(2) 861639049707048445004976 = b0c9d7c(前七位)04707f8cd3a59476ae80795c4
3、拿到密码了之后,我们就把“EnMicroMsg.db”拖进数据库输入密码,查看聊天记录。我这里有两个密码,第一个不对就试第二个。
两个密码都错误?这是为什么?原先以为备份的问题,但是备份了很多次,依旧出现这个问题。期间也换了很多SQLite的查看工具,也在多个技术论坛寻求帮助,依旧无功而返。
4、经过请教某取证公司研发大神以后,让我在某软件中先做备份,在解析完成的某个文件中记录着我的IMEI和UIN码,现在我们就要去“在线破案”。
记录的我的“IMEI”是“1234567890ABCDEF”,为了求证是不是手机的问题,我这边专门找了不同型号的手机,VIVO、OPPO、华为进行测试,最终测试加密前的IMEI确实是“1234567890ABCDEF”。
难道微信解密的方式改变了?测试结果是“1234567890ABCDEF + UIN码”。经过请教,“1234567890ABCDEF”这串是微信默认的(就是微信获取不到本机IMEI会采用默认),有时候就需要这个来计算密码。
那么最后的总结是,微信数据库解密的密码分为两种情况:
1、IMEI + UIN计算MD5值取前7位字符
2、1234567890ABCDEF + UIN计算MD5值取前7位字符
大佬,能不能找回误删微信好友的聊天记录
这个是有概率恢复的,只要微信没卸载
找不到IMEI,在xml里面的只能解开一个,博主能帮我看下吗?
大佬帮我看看呗,我手机里面有双开微信,但是数据库只解开了一个,这边想请教你
好的,我来看看
您好大佬,我试了两种情况都不行,可以帮忙看看吗?万分感谢
是解密失败吗?加了你QQ了,可以远程帮你看看。
你好大佬,能加我qq看看么
谢谢作者,我弄好了
您说的几种密码,我试了都不行,请问有最新的密码吗
有时候微信没法获取到手机的IMEI,他就用默认的“1234567890ABCDEF”作为IMEI来计算密码
新版微信数据库解密规则是否改边了,我用md5(imei+uid)取前7的方式打不开数据库了,我的微信版本是8.0.6,手机系统是miui12
看下这个方法,MIUI12应该第三方程序获取不到IMEI的,所以用的是默认IMEI计算!
>> 1234567890ABCDEF + UIN计算MD5值取前7位字符
刚才试了下,好像不能用了,还是我的操作不对?
大佬能否帮我破解下,完全不会,求帮忙,万分感谢。
经过好多天的测试,没办法解密不知道哪里出错了
uid和串号都算出来了现在卡在输入口令这一步一直错误
如果上面两个方式都试过了,换一个数据库工具试一下!有些工具在之前测试过程中确实打不开数据库。
换了工具还是打不开,看来要放弃了..
我把工具发你邮箱了,你自己看下
之前在聊天列表关闭了的,能看到么?有没有人已经测试过了的。能不能出个苹果版的?
看有很多人问了,我会抽时间发苹果查看聊天记录的文章的
这个可以有··查查情人跟谁聊天了
模拟器不可以用吗
模拟器不是默认root吗?直接可以获取/data目录的,直接拷贝EnMicroMsg.db,和那个XML文件解密
那能不能实现微信特定内容的消息并自动复制呢……
微信的哪个版本都适应吗?
目前手机微信的解密方式没有变更,就是这个解密方式
好奇聊天记录清空的可以看吗
我用的谷歌版微信,照上面的方法得到的数据库密码怎么都不对。唉……
谷歌版微信没研究过,不过应该大差不差吧
以前好像就有人说过是imei + uin然后做MD5,没想到微信到现在一直是这个,哈哈,有意思。
删除聊天对话框的聊天记录能搜索出来吗?
有几率恢复,最简单的是直接Navicat打开EnMicroMsg.db用自带的搜索功能全库搜索
Navicat报错,打不开数据库怎么回事
我加了你QQ邮箱的号码了,同意下,我给你看看
问一个比较高深的问题,就是有什么方法能用微信wx_…………查找好友
解密后直接找到“rcontact”表,里面有微信ID的,但是如果他改过了ID,那数据库就显示改后的ID
能不能做到识别群消息里的特定内容并复制到剪切板?
来学习的,有没有苹果的
CDMA手机使用MEID,双卡双待手机使用IMEI1
PC的微信怎么弄
PC的目前没研究,在看其他人的帖子学习,如果测试成功了后面我会专门再发一篇文章来介绍PC微信解密
imei统一了的话是不是说数据文件可以直接转移到不同设备上用了
SnsMicroMsg.db 这个库里面content 字段存储的朋友圈的图片信息,但是加密的,博主有办法解密访问吗
能发我一份数据库字段含义的说明图吗