微信聊天记录导出(2020新版)
微信聊天记录导出(2020新版)
首先说明,坑的部分主要是数据库破解。
项目地址:https://github.com/fly-dragon211/Wechat-message-analysis
1. 本地备份提取聊天记录
这里主要讲小米手机,苹果手机参考https://www.zhihu.com/question/66251440,其他安卓手机可以用模拟器然后root提取。
要导出微信安卓客户端的聊天记录,首先得找到聊天记录的数据库。
安卓客户端的聊天记录储存在私有目录 /data/data/com.tencent.mm/MicroMsg
下,这个目录需要root权限才能进去,但是,那样太太太麻烦了,好在我们MI6有本地备份的功能,利用这个功能。我们轻而易举就可以获得数据库。
需要的工具
此处下载
首先到手机:设置->更多设置->备份和重置->本地备份 里面点击新建备份,选择软件程序中的微信进行备份,注意只选择微信。
然后到文件管理
/内部储存设备/MIUI/backup/ALLBackup/
下将备份的文件夹复制到电脑然后用任意一种压缩包软件(我用的是7zip)打开这个
com.tencent.mm.bak
文件,并且将apps\com.tencent.mm\r\MicroMsg\systemInfo.cfg
、apps\com.tencent.mm\r\MicroMsg\CompatibleInfo.cfg
和apps\com.tencent.mm\r\MicroMsg\xxxx\EnMicroMsg.db
三个文件解压到电脑上。这里xxxx是一串随机的字母,代表你的微信用户,每个人不一样,一般是最大的那个文件夹,我这里是下图所示文件夹:
2. 破解数据库密码
找到聊天数据库了,但是目前还不能得到聊天记录,因为这个数据库是sqlcipher
加密数据库,需要密码才能打开。
数据库密码有很多种生成方式:
手机
IMEI
+uin
(微信用户iduserinformation
) 将拼接的字符串MD5加密取前7位如
IMEI
为123456
,uin
为abc
,则拼接后的字符串为123456abc
将此字符串用MD5加密(32位)后为
df10ef8509dc176d733d59549e7dbfaf
那么前7位df10ef8
就是数据库的密码,由于有的手机是双卡,有多个IMEI
,或者当手机获取不到IMEI
时会用默认字符串1234567890ABCDEF
来代替,由于种种原因,并不是所有人都能得出正确的密码,此时我们可以换一种方法。反序列化
CompatibleInfo.cfg
和systemInfo.cfg
不管是否有多个
IMEI
,或者是微信客户端没有获取到IMEI
,而使用默认字符串代替,微信客户端都会将使用的信息保存在MicroMsg
文件夹下面的CompatibleInfo.cfg
和systemInfo.cfg
文件中,可以通过这两个文件来得到正确的密码,但是这两个文件需要处理才能看到信息。使用hook方式得到数据库的密码,这个方法最有效参考
暴力破解
我开始用反序列化:
javac IMEI.java
java IMEI systemInfo.cfg CompatibleInfo.cfg
运行完成后就会得到密码
参考链接
但是出现了如下错误:
错误: 找不到或无法加载主类 IMEI 原因: java.lang.ClassNotFoundException: IMEI
于是我换了第一种方法,可是找不到uid
寻找uid
uid不是微信号,原来是保存在下面路径:
/data/data/com.tencent.mm/shared_prefs/auth_info_key_prefs.xml,
在该文件中,键值“auth_uin”即为该用户的uin。
但是我发现根本没有这个路径,可能是我的手机没有root,于是我把备份的文件解压,在里面搜索这个,终于找到了。
最终确定uid,然后MD5(IMEI少一位+uin)的输出字符串作为密码,取前7位小写,就可以破解数据库了。
得到数据库之后可以分析一下你的聊天记录,顺便制作一个词云来给你的心上人看一下你们都聊了啥
微信聊天记录导出(2020新版)相关推荐
- 微信聊天记录导出(华为手机版)
1 背景 关于微信记录导出的有比较多的方法, 在这里进行汇总下, 以下都是经过我亲测可行的, 不要去买一些付费的软件, 自己手动操作下就好啦 2 步骤 主要参考这两篇文章: 微信聊天记录导出为电脑tx ...
- 微信聊天记录导出(iOS) [2019.7.24]
博客地址:https://www.busby.com.cn/2019/07/24/微信聊天记录导出(iOS)[2019.7.24]/ 最前 前不久很久,我的小傻瓜女票误删了我们俩的微信聊天记录,也没有 ...
- 微信聊天记录导出工具WeChatExporter开源啦!
[2019年08月21日更新] 距离第一次发布软件已经有了许多新功能和稳定性上的提升,本文的一些内容已经过时,欢迎直接到GitHub上看ReadMe:https://github.com/tsycnh ...
- 分享一个非常不错的微信聊天记录导出软件
微信里积累了数年的聊天记录,连iPhone都吃不消了,可惜你依旧不能删掉它们.把重要的聊天记录导出来吧,然后你就可以在电脑上好好收藏和品味了.献给所有对微信严重依赖的朋友 第一步 Tunes备份 用i ...
- chatgpt赋能python:Python微信聊天记录导出:一篇详细的教程
Python 微信聊天记录导出:一篇详细的教程 聊天记录保留了我们与朋友和家人之间的宝贵记忆,而微信是我们日常生活中最流行的聊天工具之一.但是,微信聊天记录存储在手机中,并且随着时间的推移可能会造成手 ...
- android微信聊天记录导出到电脑【微信安卓版技巧】
android微信聊天记录导出到电脑[微信安卓版技巧] 微信,对它又爱又恨!爱的是微信能替代很多手机通话短信,恨的是有些较早前的手机不能友好支持,比如ytkah之前用的i8000,挺上手的,就是没办法 ...
- 微信转账2020假图片_2020新版微信头像下载-2020新版微信头像图片大全 v7.0.20
2020新版微信头像,是一款全新的手机微信个性化的头像素材软件,里面有很多丰富的素材头像图片在里面,全都是免费为大家分享的,每天还会不定时的为大家了更新,这里的头像素材超级多,有个性的,男生女生的,二 ...
- 微信聊天记录导出+自动聊天机器人
最近想做一个可以无聊的时候和微信好友对话的功能,用到些许nlp的小知识,在此记录. 首先是导出微信聊天记录到txt: https://blog.csdn.net/swinfans/article/de ...
- 最详细最快微信聊天记录导出&备份方案
12-1 在有些情况下,比如需要换电脑的时候,或者需要对某些重要的聊天对话做一些备份,就凭微信本身的功能,是不行的,微信根本不提供聊天记录导出功能. 使用本文章的方法,可以自动地导出所有人的聊天记录, ...
- 微信聊天记录导出及年度报告软件使用方法
(软件下载地址在文末!) 要想使用pdX_Wechat_Stats软件,首先要获取自己微信聊天记录的数据库.类比计算流体力学,我把导出微信聊天数据这个过程称为前处理,实现这个功能的商用软件有不少,但价 ...
最新文章
- mysql表文件被删_mysql表物理文件被误删的解决方法
- C# List Sort
- win10禁止dpi缩放在哪_Win10最新DPI缩放技术怎么设置?
- 海量数据处理专题(六)——双层桶划分
- Ubuntu16.04 卸载Gazebo7 安装 Gazebo9
- windows 7系统搭建本地SVN服务器的过程
- mysql 事物 锁行 测试_MySQL Transaction--RR事务隔离级别下加锁测试
- xutils找id报空指针异常
- 更改Fedora 11的plymouth开机动画
- (2006, ‘MySQL server has gone away‘) 原因和解决方案
- linux java缓存失效_转载:Linux服务器Cache占用过多内存导致系统内存不足最终java应用程序崩溃解决方案...
- 那些Python意想不到的对象
- MySQL-快速入门(10)触发器
- 一个完整的软件项目开发流程
- mysql脱库_mysql 脱裤(脱库)通用脚本
- 跨时代作品:超级IE缓存提取器
- 如何使用百度地图实现当前定位
- 分治策略-股票获取最大收益-最大子数组问题
- html 页面自动弹出,javaScript实现自动弹出页面
- 华为微认证华为云计算服务实践稳过 笔记资料