解锁并提取Linux客户端微信数据库 (vibe coded)
用户指南#
1. 安装#
Nix Flake(推荐)#
# 进入开发环境(自动安装所有依赖)
nix develop
# 或直接运行
nix run .
2. 前置条件#
- Linux 系统
- 微信 4.x Linux 版(AppImage)正在运行
- 需要有权限读取微信进程的内存(通常需要同用户或 root)
3. CLI 命令#
wxdump -h # 查看所有命令帮助
wxdump -V # 查看版本
3.1 info — 获取微信信息#
从运行中的微信进程内存提取基本信息(pid、wx_dir、密钥等)。
wxdump info
wxdump info -s /tmp/wxinfo.json # 保存到文件
3.2 linux_key — 提取数据库密钥#
扫描微信进程内存,提取所有数据库的 SQLCipher 4 raw key。
wxdump linux_key
wxdump linux_key --wx-dir /path/to/wechat/data # 指定数据目录
3.3 decrypt — 解密数据库#
自动从进程内存提取密钥,解密所有 SQLCipher 4 数据库。
wxdump decrypt # 自动检测路径,输出到 ./decrypted
wxdump decrypt -i /path/to/wx/data # 指定微信数据目录
wxdump decrypt -o /path/to/output # 指定输出目录
3.4 merge — 合并数据库#
将已解密的多个数据库合并为单一文件。
wxdump merge -i ./decrypted -o ./merged/merge.db
wxdump merge -i file1.db,file2.db -o merge.db
3.5 ui — 启动 Web 界面#
启动图形界面,在浏览器中查看聊天记录。
wxdump ui # 默认端口 5000
wxdump ui -p 8080 # 指定端口
wxdump ui --online # 允许局域网访问
wxdump ui --noOpenBrowser # 不自动打开浏览器
3.6 api — 启动 API 服务#
启动 API 服务,不打开浏览器。
wxdump api
wxdump api -p 8080 --online
3.7 dbshow — 查看已合并的数据库#
直接查看已解密合并的数据库。
wxdump dbshow -merge ./merge_all.db -wid /path/to/wx/data
4. Python API#
from wxdump_linux import get_wx_info, batch_decrypt, merge_db, decrypt_merge
from wxdump_linux.linux import find_wechat_files_path, extract_all_keys
# 获取微信信息
info = get_wx_info(is_print=True)
# 提取密钥
wx_dir = find_wechat_files_path()
db_keys = extract_all_keys(wx_dir)
# db_keys = {db_path: (enc_key_hex, salt_hex), ...}
# 解密
code, results = batch_decrypt(db_keys, "./decrypted", is_print=True)
# 一键解密+合并
code, merge_path = decrypt_merge(wx_path=wx_dir, outpath="./output")
5. FAQ#
详见 FAQ
6. 更新日志#
详见 CHANGELOG