Skip to content

Latest commit

 

History

History
92 lines (80 loc) · 4.91 KB

README.md

File metadata and controls

92 lines (80 loc) · 4.91 KB

WechatBakTool

基于C#开发的微信聊天记录备份分析工具,努力做最好用的微信备份工具。

  • 理论支持64位版本所有微信,支持两种方式非直接地址获取Key[1]
  • 工作区概念,支持多微信切换操作。
  • 支持导出Html文件,TXT文件,支持批量导出
  • 支持聊天频率分析,全消息库内容搜索
  • 目前支持以下类型消息解析
  • 文本消息
  • 图片
  • 语音
  • 分享链接
  • 群聊
  • 系统消息
  • 文件
  • 引用/转发消息
  • 表情(需要预下载)

如果有什么好的建议或意见,或者遇到什么问题,欢迎提issue,看到会回。

Note

反馈群:815054692
如果觉得不错,欢迎右上角点个star!这是对作者的鼓励,谢谢!
进群请先Star项目,然后问答消息留id


免责声明

本项目仅供学习、研究使用,严禁商业使用
用于网络安全用途的,请确保在国家法律法规下使用
本项目完全免费,问你要钱的都是骗子
使用本项目初衷是作者研究微信数据库的运行使用,您使用本软件导致的后果,包含但不限于数据损坏,记录丢失等问题,作者不承担相关责任。
因软件特殊性质,请在使用时获得微信账号所有人授权,你当确保不侵犯他人个人隐私权,后果自行承担

隐私声明

本项目不会上传任何你的数据至任何第三方系统
如果发生任何回传行为,请检查是否为第三方修改版本

近期开发规划

本项目技术栈为: C# + .NET6.0 + WPF

  • 新版本UI界面开发
  • 完善各类消息支持(已经初步完成)
  • 词云
  • 性能优化
  • 打包资源文件夹
  • 手动模式(合适离线分析)
  • 年度报告类分析(等美术资源中,没有资源不做)

部分问题

Q:支持手机端吗
A:在手机端使用迁移功能即可,路径:我->设置->聊天->聊天记录迁移与备份->迁移

Q:怎么导出全部的记录
A:工作区->右键->管理,就见了。

Q:解密工作区提示no such teble:MSG怎么办
A:基本上都是因为刚迁移完,缓存没写入到数据库导致的,建议迁移完重启一次微信后再创建工作区

Q:解密工作区提示no such teble:XXXXXXX怎么办
A:这个原因基本上是因为解密失败导致的,回落使用固定地址查找方式解密,请确保你的微信版本在version.json内支持

Q:解密时提示,Unable to load DLL 'libcrypto-1_1' or one of its dependencies怎么办
A:这个是因为加解密库的运行环境不满足,安装vc++2015 x64运行库后再尝试

使用说明

0.安装.NET Desktop Runtime(注意是6.0版本的Desktop Runtime,如已经安装忽略)
1.打开微信,并登录。
2.在软件左侧下方点击新建工作区
3.在新建工作区界面,选择要创建工作区的微信进程,并确认下方微信号是否正确
4.解密方式推荐选择用户名推断查找!该方式理论支持所有64位版本微信。但该模式需要确保微信账号正确
5.新手请忽略其他选项,直接点击创建工作区,程序会自动进行工作区创建、解密。

工作区创建完毕,点击左侧工作区,尽情使用吧!

参考/引用

项目在开发过程中参考了以下项目或资料,有引用相关代码,如有需要,推荐您可以去参考下相关资料:

  1. C#使用OpenSSL解密微信数据库,这里注意一下64位适配问题,注意dll引用,另外解密的资源优化不是很好,可以参考一下我改写的,C#还需要注意一下超大文件的问题: Mr0x01/WXDBDecrypt.NET
  2. C#使用地址获取微信Key: AdminTest0/SharpWxDump
  3. 解密微信语音,我是直接调用解密,反正都要ffmpeg,多一个也是多,多两个也是多,懒得头铁实现: kn007/silk-v3-decoder
  4. 解密微信图片 吾爱破解chenhahacjl/微信 DAT 图片解密 (C#)
  5. 参考了句柄名称实现,注意获取句柄别看这里,#10 这个issue就是血泪 huiyadanli/RevokeMsgPatcher
  6. 参考了句柄获取 FuzzySecurity/Sharp-Suite
  7. 这个获取秘钥更通用一些 SnowMeteors/GetWeChatKey ,用户名不是很稳定

其他声明

[1] 理论支持所有64位版本指用户名推断和公钥头推断,地址直接获取方式需要version.json支持,更新不是很及时。