Mac版 + iPhone 微信聊天记录的获取

您所在的位置:网站首页 获取微信聊天记录的方法 Mac版 + iPhone 微信聊天记录的获取

Mac版 + iPhone 微信聊天记录的获取

2024-07-08 04:31| 来源: 网络整理| 查看: 265

前言

最近尝试着做 IM 聊天的开发,因为没有多少实际经验,只能摸索着来,找一些作为参考: 微信肯定是最具权威得了,但现在获取微信的一些信息也要费一点功夫的,例如聊天记录的数据存储。

Mac版微信获取方法

今天在网上先看下Mac版微信聊天记录的获取方法: 首先 Mac版微信聊天记录数据库并不难找,很容易就找到了,但是都是经过加密的,目录如下:

‎⁨Macintosh HD⁩ ▸ ⁨用户⁩ ▸ ⁨用户名称 ▸ ⁨资源库⁩ ▸ ⁨Containers⁩ ▸ ⁨com.tencent.xinWeChat⁩ ▸ ⁨Data⁩ ▸ ⁨Library⁩ ▸ ⁨Application Support⁩ ▸ ⁨com.tencent.xinWeChat⁩ ▸ ⁨2.0b4.0.9⁩ ▸ ⁨86bef63f52ddf83be5e6c43765279994⁩> Message

也可以通过命令查看:

ls -alh ~/Library/Containers/com.tencent.xinWeChat/Data/Library/Application\ Support/com.tencent.xinWeChat///Message/*.db

macOS 微信的“备份与恢复”功能只能从手机微信导出到 Mac, 但是微信其实又在本地存了加密的 sqlite3 数据库; 本地数据库的是一系列 *.db 文件,如图:

image.png

经过大神观察,微信存数据使用的是开源的 sqlcipher, 所以还是有办法导出微信在 Mac 本机的数据库的, 今天试了一下在 目前最新的系统 macOS Mojave 10.14.5 MAC 版微信 2.3.16 测试是 OK的;

操作步骤:(此方法依赖于 LLDB 调试)

打开 Mac 端微信,先不要登录。 打开终端,输入命令:

lldb -p $(pgrep WeChat)

后回车,查看 微信进程的相关信息,会进入 lldb 的子shell界面。

在 lldb 子shell中输入命令

br set -n sqlite3_key

回车。

然后输入 c 回车。 然后登陆Mac版微信,手机允许登录,这时微信会卡着,没关系,影响后面的操作。 接着,入命令

memory read --size 1 --format x --count 32 $rsi

回车,读取内存中 寄存器 rsi 存储的值。会输出类似如下最下面的数据:

操作步骤

接下来就是要处理这里获取到的内容,去掉 : 之前的内存地址,把所有后面的两位字符拼接起来,再在前面加上Ox,我的方法是把这内容拷贝一下,地址手动删除,搜索 空格+0x 全部替换为空,然后拼接上就OK了。

如下的转换过程:

获取微信数据库加密 Key 0x6000024795c0: 0xf5 0x36 0x38 0xf3 0xf3 0xb4 0x40 0x43 0x6000024795c8: 0x8e 0xb7 0x84 0xef 0xd3 0x58 0xee 0xb8 0x6000024795d0: 0xb2 0xe3 0x65 0x2a 0xe6 0x88 0x4d 0xf2 0x6000024795d8: 0x9f 0x05 0xf9 0xa9 0x4f 0xf8 0xa2 0x88

结果:

0xf53638f3f3b440438eb784efd358eeb8b2e3652ae6884df29f05f9a94ff8a288

到这里基本上准备工作已经 OK了,接着就是安装软件了。

从 https://sqlitebrowser.org/ 下载Mac版本的 DB Browser for SQLite 并安装。 打开 DB Browser for SQLite ,在菜单栏选择 打开数据库 ,在弹出的对话框中选择一个保存Mac版微信聊天记录的数据库文件 *.db,然后在 SQLCipher加密 的界面中,将密码方式设为 Raw key,将 Encryption settings 选为 SQLCipher 3 defaults,在密码输入框中输入上上一步中得到的66位字符串,点击 OK 按钮。

如图:

image.png

如果没有问题的话,你会看到这样的界面 :

image.png

恭喜你成功的打开了微信本地的数据库,接下来你就可以随意查看或者导出数据库中的数据了。

附:

开始第一次并没有成功,原因是 Raw Key 合成错了,还以为是DB Browser for SQLite 软件的问题呢,又安装了 Homebrew,重新安装一遍软件发现还是不行,回过头才发现 key 错了,走了一点弯路,所以要细心。

参考文章:

https://blog.csdn.net/swinfans/article/details/88712593

iPhone微信导出数据库

参考文章:

导出微信iOS数据库

亲测 OK,文章还有数据库的分析,可以参考学习一下。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3