微信数据库最新解密方式,用代码解密微信数据库信息!

一、知识回顾

最近有人找我弄微信数据库解密的东西,其实这个现在网上都公开了,我在很早之前就分析过微信数据库加密算法,不了解的同学可以查看这里:Android中破解微信数据库加密密码,所以有人找我的话我都会告诉他们这个内容,微信数据库加密算法:MD5(IMEI+UIN).Substring(0, 7).toLower;设备的imei和微信登录账号后的唯一表示uin值拼接然后计算MD5值,取前7位在变成小写字母即可。这个我在那篇文章最后也说到了,这个加密算法是不会变化的,因为维系为了兼容以前版本,如果数据库加密算法变动,那么老版本的用户升级到新版本,老版本的数据库解密就会失败的,也就是用户看不到以前的消息内容,这个用户会疯的,所以微信即使知道了这个算法被破解了,他也是没办法升级的,所以现在不会变,以后也不会变的。但是比较奇葩的是他按照我的文章操作计算出来的密码还是不可以。所以我就让他把我的数据库文件传给我我来解密,中间其实我遇到了问题最后才知道被微信转码坑了,因为他微信把IMEI和UIN传递给我了,结果我直接复制计算MD5是错的,最后才知道微信消息中有转码的。


二、获取解密密码

所以开始就计算错误,他一度怀疑微信的加密算法是不是变化了,但是这一点我还是坚信微信不可能换加密算法的,这个原因我之前也说了,对于微信来说几乎是不可能操作的。然后他就在网上搜找到一个收费的PC端工具,大致是这样的:

640?wx_fmt=png

只需要选择微信的数据库目录MicroMsg即可,就可以识别出来用户,然后点击指定用户就可以查看对应的数据了,所以他这么一说我倒是有点怀疑我的方法了?因为毕竟他用这个工具解密是没有问题的。所以我就用这个工具查看了一下的确没问题,那么为什么这个工具可以解密成功呢?所以我就想探究这个工具的原理,但是我不会PC端的软件逆向,但是我们可以借助强大的逻辑排除法定位,你看这个工具是需要选择微信数据库目录的,也就是这样的格式:

640?wx_fmt=png

我就好奇了,我们在之前的文章中了解到用忽的UIN是存储在xml中的,但是你看这个工具只要导入这个目录就可以解密,也就是说他能够拿到设备imei和uin值,所以我就怀疑他读取这个目录下的几个文件来获取的,那么就一个一个排除,首先通过肉眼判断哪些文件肯定不是的,最后发现就这几个cfg文件打开是二进制文件,所以怀疑对象就在这几个文件了,因为文件不多,我们可以这么排除,就是通过逐一修改文件名,然后在用那个工具解密,如果提示错误了,那么就表示这个文件是关键的,通过最后排查,有两个文件不能修改,也就是上图中文件名后面没有11的两个,一个是systemInfo.cfgCompatibleInfo.cfg了。那么这个文件是二进制文件,怎么

  • 8
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值