免root提取微信聊天记录数据库
最近想提取微信的聊天记录做一些奇奇怪怪的事情,然而遇到了一个严重的问题,由于众所周知的原因,华为竟然关闭了root权限申请通道!这是在逼我用苹果么?手机不root和咸鱼有什么区别?然而聊天记录已经存在我手机了只好另外想办法,自己动手,丰衣足食,经过一番尝试终于绕过了。
工具
- 支持root的模拟器,我这里用的是蓝叠,里面装好微信就行
数据导入
微信只允许一个手机客户端登陆,而直接备份需要两个手机确认,因此不能这么搞,需要通过PC端中转一下。
- 首先登陆原手机和PC端,PC端左下角点开Backup,然后选择Backup on PC,然后在手机上确认,把你要的消息选中,稍等片刻即可。
- 接着登陆模拟器端的微信,注意这时候PC端会被T下去,重新启动然后登陆,在模拟器上确认即可。
不清楚具体原因,有时候登陆确认可能弹不出来,可以通过拍照然后在电脑上扫码等等方式重新扫二维码登陆,然而我这没摄像头(拔线了),多试几次就行了。
- PC端选择Restore on phone还原消息到模拟器上即可。
数据库文件获取
这里以蓝叠为例,其他模拟器同理
- 首先开启root权限
- 数据库文件路径:
/data/data/com.tencent.mm/MicroMsg/一大串字母数字/EnMicroMsg.db
,蓝叠的共享文件夹为/sdcard/windows/BstSharedFolder
,将文件复制过去。 - 电脑上的路径为
安装文件夹/Engine/ProgramData/UserData/SharedFolder
,看到你复制的文件没,终于找出来了啊~真不容易。
提取数据
在这之前我们需要获取数据库密码,据先辈们的分析,密码为IMEI+UIN的md5前7位,我们需要找到这些。
IMEI
蓝叠我似乎在设置里没找到……不过可以利用这个小工具,非常简单点击复制即可。
UIN
在这个位置/data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml
找到default_uin
,后面的数字就是了(可能为负数)
解密数据
胜利就在眼前!我们把IMEI和UIN连起来(中间没有任何分隔符),计算一下md5,取小写前7位就是密码了!
然后用这个小工具即可读取数据库(可以导出为sql方便导入其他数据库查看)
不要使用DB Browser for SQLite官网的版本,我试了半天可能是设置问题无法打开!
数据库说明
这个应该不属于本文内容,常用的表就是message
消息和rcontact
联系人,怎么操作数据就各凭本事啦~
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Matrix!
评论