2023-08-25 11:30:17 +08:00
|
|
|
|
# <center>PyWxDump</center>
|
2023-07-23 13:05:26 +08:00
|
|
|
|
|
2023-10-16 10:46:21 +08:00
|
|
|
|
[](https://www.python.org/)
|
2023-10-17 14:21:42 +08:00
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/fork)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/issues)
|
|
|
|
|
|
|
|
|
|
[](https://pypi.org/project/pywxdump/)
|
2023-10-28 19:26:16 +08:00
|
|
|
|
[](https://pypi.org/project/pywxdump/)
|
2023-11-14 18:39:39 +08:00
|
|
|
|
[](https://pypistats.org/packages/pywxdump)
|
2023-10-17 14:21:42 +08:00
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/blob/master/LICENSE)
|
2023-10-31 19:29:02 +08:00
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/actions/workflows/publish.yml)
|
2023-10-17 14:25:52 +08:00
|
|
|
|
|
2023-10-17 10:40:28 +08:00
|
|
|
|
<details>
|
|
|
|
|
<summary><strong>更新日志(点击展开):</strong></summary>
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-12-03 09:43:33 +08:00
|
|
|
|
* 2023.12.03 增加分析聊天记录的功能,生成词云、绘制折线图等
|
|
|
|
|
* 2023.12.03 修复部分bug,更改获取wx文件夹方式 [#34](https://github.com/xaoyaoo/PyWxDump/issues/34)
|
2023-12-01 18:11:10 +08:00
|
|
|
|
* 2023.12.01 为exe添加图标
|
2023-11-30 17:51:25 +08:00
|
|
|
|
* 2023.11.30 优化命令行界面
|
2023-11-29 21:59:48 +08:00
|
|
|
|
* 2023.11.29 添加异形wxid获取方式,添加用户路径自动获取,重建说明文档,对新手更友好
|
2023-11-28 16:58:29 +08:00
|
|
|
|
* 2023.11.28 修改wxid获取方式,修复部分bug
|
2023-11-27 10:12:12 +08:00
|
|
|
|
* 2023.11.27 解决相对导入包的问题,完善错误提示
|
2023-11-25 18:15:42 +08:00
|
|
|
|
* 2023.11.25 聊天记录查看工具bootstrap更换国内cdn
|
2023-11-22 18:33:49 +08:00
|
|
|
|
* 2023.11.22 添加all命令中解密错误数据日志写入文件,修复部分bug
|
2023-11-16 18:55:45 +08:00
|
|
|
|
* 2023.11.16 增加聊天记录导出为html
|
2023-11-15 16:17:50 +08:00
|
|
|
|
* 2023.11.15 添加test文件,添加自动构建可执行文件的脚本,添加版本描述
|
2023-11-15 15:09:26 +08:00
|
|
|
|
* 2023.11.15 [v2.2.5变化较大]重构解密脚本的返回值,重构命令行参数
|
|
|
|
|
* 2023.11.15 修复无法获取wxid的bug
|
2023-11-14 18:39:39 +08:00
|
|
|
|
* 2023.11.14 修复部分bug
|
2023-11-11 18:43:10 +08:00
|
|
|
|
* 2023.11.11 添加聊天记录解析,查看工具,修复部分bug
|
2023-11-10 11:04:25 +08:00
|
|
|
|
* 2023.11.10 修复wxdump wx_db命令行参数错误 [#19](https://github.com/xaoyaoo/PyWxDump/issues/19)
|
2023-11-08 19:56:14 +08:00
|
|
|
|
* 2023.11.08 增加3.9.8.15版本支持
|
2023-10-31 19:28:10 +08:00
|
|
|
|
* 2023.10.31 修复3.9.2.*版本无法正常运行
|
2023-10-28 19:26:16 +08:00
|
|
|
|
* 2023.10.28 添加自动发布到pypi的github action
|
|
|
|
|
* 2023.10.28 修复3.9.5.91版本的偏移
|
2023-10-24 16:58:16 +08:00
|
|
|
|
* 2023.10.24 add auto get bias addr ,not need input key or wx folder path.
|
2023-10-17 12:26:36 +08:00
|
|
|
|
* 2023.10.17 add LICENSE
|
2023-10-17 10:40:28 +08:00
|
|
|
|
* 2023.10.16 添加"3.9.7.15"版本的偏移[#12](https://github.com/xaoyaoo/PyWxDump/issues/12)
|
|
|
|
|
,感谢@[GentlemanII](https://github.com/GentlemanII)
|
2023-10-15 10:37:19 +08:00
|
|
|
|
* 2023.10.15 将整个项目作为包安装,增加命令行统一操作
|
2023-10-14 21:58:18 +08:00
|
|
|
|
* 2023.10.14 整体重构项目,优化代码,增加命令行统一操作
|
2023-10-17 10:40:28 +08:00
|
|
|
|
* 2023.10.11 添加"3.9.5.81"版本的偏移[#10](https://github.com/xaoyaoo/PyWxDump/issues/10)
|
|
|
|
|
,感谢@[sv3nbeast](https://github.com/sv3nbeast)
|
2023-10-14 21:58:18 +08:00
|
|
|
|
* 2023.10.09 获取key基址偏移可以根据微信文件夹获取,不需要输入key
|
|
|
|
|
* 2023.10.09 优化代码,删减没必要代码,重新修改获取基址代码,加快运行速度(需要安装新的库 pymem)
|
|
|
|
|
* 2023.10.07 修改获取基址内存搜索方式,防止进入死循环
|
|
|
|
|
* 2023.10.07 增加了3.9.7.29版本的偏移地址
|
|
|
|
|
* 2023.10.06 增加命令行解密数据库
|
|
|
|
|
* 2023.09.28 增加了数据库部分解析
|
|
|
|
|
* 2023.09.15 增加了3.9.7.25版本的偏移地址
|
2023-09-15 13:05:05 +08:00
|
|
|
|
|
2023-10-17 10:40:28 +08:00
|
|
|
|
</details>
|
|
|
|
|
|
2023-11-25 18:15:42 +08:00
|
|
|
|
|
|
|
|
|
**更新计划**
|
|
|
|
|
|
|
|
|
|
* 1.每个人聊天记录分析,生成词云。
|
|
|
|
|
* 2.分析每个人每天的聊天数量,生成折线图(天-聊天数量)
|
|
|
|
|
* 3.分析不同的人的月聊天数量,年聊天数量,生成折线图
|
2023-11-25 18:25:42 +08:00
|
|
|
|
* 4.生成年度可视化报告
|
|
|
|
|
* 5.创建GUI图形界面,方便使用
|
2023-11-25 18:40:10 +08:00
|
|
|
|
* 6.查看群聊中具体发言成员的ID [#31](https://github.com/xaoyaoo/PyWxDump/issues/31)
|
2023-11-29 21:59:48 +08:00
|
|
|
|
* 7.增加数据库合并功能,方便查看
|
2023-12-01 18:11:10 +08:00
|
|
|
|
* 8.增加企业微信的支持
|
2023-12-03 22:51:22 +08:00
|
|
|
|
* 9.增加获取实时聊天记录的功能
|
2023-11-25 18:15:42 +08:00
|
|
|
|
|
2023-12-01 16:48:01 +08:00
|
|
|
|
注: 欢迎大家提供更多的想法,或者提供代码,一起完善这个项目。
|
2023-11-25 18:15:42 +08:00
|
|
|
|
|
2023-12-01 16:48:01 +08:00
|
|
|
|
<details>
|
2023-12-01 17:02:19 +08:00
|
|
|
|
<summary>贡献代码方法(点击展开):</summary>
|
2023-12-01 16:48:01 +08:00
|
|
|
|
|
2023-12-01 17:06:58 +08:00
|
|
|
|
|
|
|
|
|
提交拉取请求(Pull Request),请按照以下步骤进行操作:
|
2023-12-01 16:48:01 +08:00
|
|
|
|
|
|
|
|
|
1. Fork 仓库:首先,在项目的 GitHub 页面上点击 "Fork" 按钮,将项目的代码仓库 fork 到你自己的 GitHub 账号下。
|
|
|
|
|
2. 克隆仓库:在你自己的 GitHub 账号下找到 fork 后的项目,点击 `Clone or download`按钮,获取仓库的 URL。然后在本地使用 Git
|
|
|
|
|
命令克隆仓库到你的电脑上:`git clone 仓库的URL`
|
|
|
|
|
3. 创建分支:在本地仓库中创建一个新的分支,用于进行你的修改:`git checkout -b 你的分支名`
|
|
|
|
|
4. 进行修改:在新创建的分支中进行你需要的修改,包括修复错误、改进现有功能或添加新功能。
|
|
|
|
|
5. 提交修改:使用 `git add` 和 `git commit` 命令将修改提交到本地仓库中:
|
|
|
|
|
```
|
|
|
|
|
git add .
|
|
|
|
|
git commit -m "提交信息"
|
|
|
|
|
```
|
|
|
|
|
6. 推送分支:使用 `git push` 命令将你的本地分支推送到你的 GitHub 仓库中:`git push origin 你的分支名`
|
2023-12-01 17:06:58 +08:00
|
|
|
|
7. 提交拉取请求:在你的 GitHub 仓库页面上切换到你刚刚推送的分支,点击 "New pull request"
|
|
|
|
|
按钮,填写一些说明信息,然后点击 `Create pull request`
|
2023-12-01 16:48:01 +08:00
|
|
|
|
按钮,即可提交拉取请求。
|
2023-12-01 17:09:34 +08:00
|
|
|
|
8. 等待审核:等待项目维护者审核你的拉取请求,如果通过审核,你的修改将会被合并到项目的主分支中
|
|
|
|
|
9. 接着你就可以在右边的`contributors`中看到你的名字了。
|
2023-12-01 16:48:01 +08:00
|
|
|
|
|
|
|
|
|
</details>
|
|
|
|
|
|
|
|
|
|
欢迎加入交流qq群:577704006 or
|
2023-12-01 17:00:40 +08:00
|
|
|
|
点击链接加入群聊[pywxdump功能交流](https://s.xaoyo.top/gOLUDl)。
|
|
|
|
|
|
2023-12-01 17:01:15 +08:00
|
|
|
|
<a href="https://s.xaoyo.top/gOLUDl"><img src="./doc/qq.png" alt="QQ群" title="加入QQ群" height="280"></a>
|
2023-12-01 16:48:01 +08:00
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
# 一、项目介绍
|
2023-07-23 13:05:26 +08:00
|
|
|
|
|
2023-10-14 21:58:18 +08:00
|
|
|
|
## 1. 项目简介
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-11-25 18:15:42 +08:00
|
|
|
|
[PyWxDump](https://github.com/xaoyaoo/PyWxDump)是一款用于获取账号信息(昵称/账号/手机/邮箱/数据库密钥)
|
|
|
|
|
、解密数据库、查看聊天记录、备份导出聊天记录为html的工具。
|
2023-11-15 15:37:02 +08:00
|
|
|
|
|
2023-10-17 10:40:28 +08:00
|
|
|
|
* <strong><big>
|
|
|
|
|
超级想要star,走过路过,帮忙点个[](https://github.com/xaoyaoo/PyWxDump/)
|
|
|
|
|
呗,谢谢啦~</big></strong>
|
2023-09-15 13:05:05 +08:00
|
|
|
|
|
2023-10-16 10:46:21 +08:00
|
|
|
|
## 2. 功能介绍
|
|
|
|
|
|
|
|
|
|
* (1)获取微信昵称、微信账号、微信手机号、微信邮箱、微信KEY的基址偏移
|
2023-11-15 15:37:02 +08:00
|
|
|
|
* (2)获取微信的微信昵称、微信账号、微信手机号、微信邮箱、微信KEY、微信原始ID(wxid_******)
|
2023-10-16 10:46:21 +08:00
|
|
|
|
* (3)获取微信文件夹路径
|
2023-11-15 15:37:02 +08:00
|
|
|
|
* (4)支持查看聊天记录查看
|
|
|
|
|
* (5)根据key解密微信数据库
|
2023-10-16 10:46:21 +08:00
|
|
|
|
* (6)提供数据库部分字段说明
|
2023-11-15 15:37:02 +08:00
|
|
|
|
* (7)支持微信多开场景,获取多用户信息等
|
|
|
|
|
* (8)微信需要登录状态才能获取数据库密钥
|
2023-11-22 18:33:49 +08:00
|
|
|
|
* (9)支持导出聊天记录为html,备份微信聊天记录,方便查看
|
2023-11-15 15:37:02 +08:00
|
|
|
|
|
|
|
|
|
**版本差异**
|
|
|
|
|
|
|
|
|
|
1. 版本 < 3.7.0.30 只运行不登录能获取个人信息,登录后可以获取数据库密钥
|
|
|
|
|
2. 版本 > 3.7.0.30 只运行不登录不能获取个人信息,登录后都能获取
|
|
|
|
|
|
|
|
|
|
**利用场景**
|
|
|
|
|
|
|
|
|
|
1. 钓鱼攻击(通过钓鱼控到的机器通常都是登录状态)
|
|
|
|
|
2. 渗透到运维机器(有些运维机器会日常登录自己的微信)
|
|
|
|
|
3. 某些工作需要取证(数据库需要拷贝到本地)
|
|
|
|
|
4. 自行备份(日常备份自己留存)
|
|
|
|
|
5. 等等...............
|
|
|
|
|
|
2023-10-16 10:46:21 +08:00
|
|
|
|
## 3. 项目结构
|
2023-10-14 21:48:35 +08:00
|
|
|
|
|
2023-10-17 10:40:28 +08:00
|
|
|
|
<details>
|
|
|
|
|
<summary>点击展开</summary>
|
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
```
|
|
|
|
|
PyWxDump
|
2023-10-17 10:40:28 +08:00
|
|
|
|
├─ pywxdump # 项目代码,存放各个模块
|
2023-10-14 21:48:35 +08:00
|
|
|
|
│ ├─ analyse # 解析数据库
|
|
|
|
|
│ │ └─ parse.py # 解析数据库脚本,可以解析语音、图片、聊天记录等
|
|
|
|
|
│ ├─ bias_addr # 获取偏移地址
|
|
|
|
|
│ │ └─ get_bias_addr.py # 获取偏移地址脚本
|
|
|
|
|
│ ├─ decrypted # 解密数据库
|
|
|
|
|
│ │ ├─ decrypt.py # 解密数据库脚本
|
|
|
|
|
│ │ └─ get_wx_decrypted_db.py # 直接读取当前登录微信的数据库,解密后保存到当前目录下的decrypted文件夹中
|
|
|
|
|
│ ├─ wx_info # 获取微信基本信息
|
|
|
|
|
│ │ ├─ get_wx_info.py # 获取微信基本信息脚本
|
|
|
|
|
│ │ └─ get_wx_db.py # 获取本地所有的微信相关数据库
|
2023-11-11 17:02:22 +08:00
|
|
|
|
│ ├─ show_records # 显示聊天记录
|
|
|
|
|
│ │ ├─ main_window.py # 显示聊天记录的窗口
|
|
|
|
|
│ │ └─ templates # 显示聊天记录的html模板
|
2023-10-15 10:37:19 +08:00
|
|
|
|
│ ├─ command.py # 命令行入口
|
2023-10-24 16:58:16 +08:00
|
|
|
|
│ └─ version_list.json # 微信版本列表 (十进制)按顺序代表:微信昵称、微信账号、微信手机号、微信邮箱(默认0)、微信KEY、微信原始ID(wxid_******)
|
2023-10-14 21:48:35 +08:00
|
|
|
|
├─ doc # 项目文档
|
2023-10-17 10:40:28 +08:00
|
|
|
|
│ ├─ python1.0_README.md # python1.0版本的README
|
2023-10-14 21:48:35 +08:00
|
|
|
|
│ ├─ wx数据库简述.md # wx数据库简述
|
|
|
|
|
│ └─ CE获取基址.md # CE获取基址
|
|
|
|
|
├─ README.md
|
2023-10-15 10:37:19 +08:00
|
|
|
|
├─ setup.py # 安装脚本
|
2023-10-14 21:48:35 +08:00
|
|
|
|
└─ requirements.txt
|
|
|
|
|
```
|
|
|
|
|
|
2023-10-17 10:40:28 +08:00
|
|
|
|
</details>
|
|
|
|
|
|
|
|
|
|
## 4. 其他
|
|
|
|
|
|
2023-11-15 15:04:45 +08:00
|
|
|
|
[PyWxDump](https://github.com/xaoyaoo/PyWxDump)是[SharpWxDump](https://github.com/AdminTest0/SharpWxDump)
|
|
|
|
|
的经过重构python语言版本,同时添加了一些新的功能。
|
2023-10-17 10:40:28 +08:00
|
|
|
|
|
2023-11-22 18:33:49 +08:00
|
|
|
|
* 项目地址:https://github.com/xaoyaoo/PyWxDump
|
2023-12-01 17:06:58 +08:00
|
|
|
|
* 目前只在windows下测试过,mac、linux下可能会存在问题。
|
2023-10-17 11:59:10 +08:00
|
|
|
|
* 如发现[version_list.json](pywxdump/version_list.json)缺失或错误,
|
|
|
|
|
请提交[issues](https://github.com/xaoyaoo/PyWxDump/issues).
|
2023-10-17 10:58:57 +08:00
|
|
|
|
* 如发现bug或有改进意见, 请提交[issues](https://github.com/xaoyaoo/PyWxDump/issues).
|
|
|
|
|
* 如有其他想要的功能, 请提交[issues](https://github.com/xaoyaoo/PyWxDump/issues).
|
|
|
|
|
|
|
|
|
|
<details>
|
|
|
|
|
<summary>提交issues方法(点击展开)</summary>
|
|
|
|
|
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/issues)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/issues)
|
|
|
|
|
[](https://github.com/xaoyaoo/PyWxDump/issues)
|
|
|
|
|
|
|
|
|
|
</details>
|
2023-10-17 10:40:28 +08:00
|
|
|
|
|
2023-12-01 17:15:59 +08:00
|
|
|
|
<details>
|
|
|
|
|
<summary><strong>Star History(click to expand)</strong></summary>
|
|
|
|
|
|
2023-11-15 15:38:30 +08:00
|
|
|
|
[](https://star-history.com/#xaoyaoo/pywxdump&Date)
|
|
|
|
|
|
2023-12-01 17:15:59 +08:00
|
|
|
|
</details>
|
|
|
|
|
|
2023-11-15 15:25:02 +08:00
|
|
|
|
# 二、使用说明
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-10-15 10:37:19 +08:00
|
|
|
|
## 1. 安装
|
|
|
|
|
|
2023-11-27 10:12:12 +08:00
|
|
|
|
### 1.1 从pypi安装(安装稳定版)
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
|
|
|
|
```shell script
|
2023-11-29 22:07:11 +08:00
|
|
|
|
pip install -U pywxdump
|
2023-10-15 11:49:16 +08:00
|
|
|
|
```
|
|
|
|
|
|
2023-11-27 10:12:12 +08:00
|
|
|
|
### 1.2 从源码安装(安装最新版)
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-11-16 18:55:45 +08:00
|
|
|
|
<details>
|
|
|
|
|
<summary>点击展开</summary>
|
|
|
|
|
|
2023-10-15 10:37:19 +08:00
|
|
|
|
```shell script
|
2023-11-29 22:07:11 +08:00
|
|
|
|
pip install -U git+git://github.com/xaoyaoo/PyWxDump.git
|
2023-10-15 10:37:19 +08:00
|
|
|
|
```
|
|
|
|
|
|
2023-10-15 11:49:16 +08:00
|
|
|
|
或
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
|
|
|
|
```shell script
|
2023-10-17 10:43:25 +08:00
|
|
|
|
git clone https://github.com/xaoyaoo/PyWxDump.git
|
|
|
|
|
cd PyWxDump
|
|
|
|
|
python -m pip install -U .
|
2023-08-21 23:55:59 +08:00
|
|
|
|
```
|
2023-11-25 18:15:42 +08:00
|
|
|
|
|
2023-11-16 18:55:45 +08:00
|
|
|
|
</details>
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-12-01 17:19:22 +08:00
|
|
|
|
### 1.3 使用可执行文件exe
|
2023-12-01 17:06:58 +08:00
|
|
|
|
|
|
|
|
|
<details>
|
|
|
|
|
<summary>点击展开</summary>
|
|
|
|
|
|
|
|
|
|
* 1.下载[release](https://github.com/xaoyaoo/PyWxDump/releases)中的exe文件
|
2023-12-01 17:15:59 +08:00
|
|
|
|
* 2.或者自行打包,打包脚本见: [build_exe.py](./tests/build_exe.py)
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
cd tests
|
|
|
|
|
python build_exe.py
|
|
|
|
|
```
|
2023-12-01 17:06:58 +08:00
|
|
|
|
|
|
|
|
|
</details>
|
|
|
|
|
|
2023-11-11 18:42:13 +08:00
|
|
|
|
## 2. 使用
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
### 2.1 命令行
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-10-15 10:37:19 +08:00
|
|
|
|
激活虚拟环境后(如果有的话),在项目根目录下运行:
|
|
|
|
|
|
2023-08-25 11:07:57 +08:00
|
|
|
|
```shell script
|
2023-10-15 10:37:19 +08:00
|
|
|
|
wxdump 模式 [参数]
|
2023-10-14 21:48:35 +08:00
|
|
|
|
# 运行模式(mode):
|
2023-11-15 15:04:45 +08:00
|
|
|
|
# bias 获取微信基址偏移
|
|
|
|
|
# info 获取微信信息
|
|
|
|
|
# db_path 获取微信文件夹路径
|
|
|
|
|
# decrypt 解密微信数据库
|
2023-12-01 16:48:01 +08:00
|
|
|
|
# dbshow 聊天记录查看
|
|
|
|
|
# export 聊天记录导出为html
|
2023-11-15 15:04:45 +08:00
|
|
|
|
# all 获取微信信息,解密微信数据库,查看聊天记录
|
2023-08-25 11:07:57 +08:00
|
|
|
|
```
|
2023-07-23 13:05:26 +08:00
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
*示例*
|
|
|
|
|
|
2023-11-16 18:55:45 +08:00
|
|
|
|
<details>
|
|
|
|
|
<summary>点击展开示例</summary>
|
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
以下是示例命令:
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 获取微信基址偏移
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
pywxdump bias --mobile <手机号> --name <微信昵称> --account <微信账号> [--key <密钥>] [--db_path <已登录账号的微信文件夹路径>] [--version_list_path <微信版本偏移文件路径>]
|
2023-08-21 23:55:59 +08:00
|
|
|
|
```
|
2022-07-23 01:25:18 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 获取微信信息
|
2023-11-16 18:55:45 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump info [--version_list_path <微信版本偏移文件路径>]
|
|
|
|
|
```
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 获取微信文件夹路径
|
2023-11-15 15:25:02 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump db_path [-r <需要的数据库名称>] [-wf <WeChat Files 路径>] [-id <wxid_>]
|
|
|
|
|
```
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 解密微信数据库
|
2023-10-15 10:37:19 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump decrypt -k <密钥> -i <数据库路径(目录or文件)> [-o <输出路径>]
|
|
|
|
|
```
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 查看聊天记录
|
2023-10-15 10:37:19 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump dbshow -msg <解密后的 MSG.db 的路径> -micro <解密后的 MicroMsg.db 的路径> -media <解密后的 MediaMSG.db 的路径> [-fs <FileStorage 路径>]
|
|
|
|
|
```
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
##### 导出聊天记录为 HTML
|
2023-10-15 10:37:19 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump export -u <微信账号> -o <导出路径> -msg <解密后的 MSG.db 的路径> -micro <解密后的 MicroMsg.db 的路径> -media <解密后的 MediaMSG.db 的路径> [-fs <FileStorage 路径>]
|
|
|
|
|
```
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-12-01 16:48:01 +08:00
|
|
|
|
##### 获取微信信息、解密数据库、查看聊天记录,一条命令搞定,开放端口5000,浏览器访问查看聊天记录(支持局域网其他机器访问)
|
2023-10-15 10:37:19 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
```bash
|
|
|
|
|
pywxdump all
|
2023-11-15 15:04:45 +08:00
|
|
|
|
```
|
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
</details>
|
2023-10-15 11:49:16 +08:00
|
|
|
|
|
2023-11-29 21:59:48 +08:00
|
|
|
|
### 2.2 python API
|
|
|
|
|
|
|
|
|
|
*import调用示例*
|
|
|
|
|
|
|
|
|
|
<details>
|
|
|
|
|
<summary>点击展开示例</summary>
|
2023-11-15 15:04:45 +08:00
|
|
|
|
|
|
|
|
|
```python
|
2023-11-29 21:59:48 +08:00
|
|
|
|
# 单独使用各模块,返回值一般为字典,参数参考命令行
|
|
|
|
|
from pywxdump import *
|
|
|
|
|
|
|
|
|
|
# ************************************************************************************************ #
|
|
|
|
|
# 获取微信基址偏移
|
|
|
|
|
args = {
|
|
|
|
|
"mode": "bias",
|
|
|
|
|
"mobile": "13800138000", # 手机号
|
|
|
|
|
"name": "微信昵称", # 微信昵称
|
|
|
|
|
"account": "微信账号", # 微信账号
|
|
|
|
|
"key": "密钥", # 密钥(可选)
|
|
|
|
|
"db_path": "已登录账号的微信文件夹路径", # 微信文件夹路径(可选)
|
|
|
|
|
"version_list_path": "微信版本偏移文件路径" # 微信版本偏移文件路径(可选)
|
|
|
|
|
}
|
|
|
|
|
bias_addr = BiasAddr(args["account"], args["mobile"], args["name"], args["key"], args["db_path"])
|
|
|
|
|
result = bias_addr.run(True, args["version_list_path"])
|
|
|
|
|
# ************************************************************************************************ #
|
|
|
|
|
# 获取微信信息
|
|
|
|
|
wx_info = read_info(VERSION_LIST, True)
|
|
|
|
|
|
|
|
|
|
# 获取微信文件夹路径
|
|
|
|
|
args = {
|
|
|
|
|
"mode": "db_path",
|
|
|
|
|
"require_list": "all", # 需要的数据库名称(可选)
|
|
|
|
|
"wx_files": "WeChat Files", # 'WeChat Files'路径(可选)
|
|
|
|
|
"wxid": "wxid_", # wxid_,用于确认用户文件夹(可选)
|
|
|
|
|
}
|
|
|
|
|
user_dirs = get_wechat_db(args["require_list"], args["wx_files"], args["wxid"], True)
|
|
|
|
|
# ************************************************************************************************ #
|
|
|
|
|
# 解密微信数据库
|
|
|
|
|
args = {
|
|
|
|
|
"mode": "decrypt",
|
|
|
|
|
"key": "密钥", # 密钥
|
|
|
|
|
"db_path": "数据库路径(目录or文件)", # 数据库路径
|
|
|
|
|
"out_path": "/path/to/decrypted" # 输出路径(必须是目录)[默认为当前路径下decrypted文件夹]
|
|
|
|
|
}
|
|
|
|
|
result = batch_decrypt(args["key"], args["db_path"], args["out_path"], True)
|
|
|
|
|
# ************************************************************************************************ #
|
|
|
|
|
# 查看聊天记录
|
|
|
|
|
args = {
|
|
|
|
|
"mode": "dbshow",
|
|
|
|
|
"msg_path": "解密后的 MSG.db 的路径", # 解密后的 MSG.db 的路径
|
|
|
|
|
"micro_path": "解密后的 MicroMsg.db 的路径", # 解密后的 MicroMsg.db 的路径
|
|
|
|
|
"media_path": "解密后的 MediaMSG.db 的路径", # 解密后的 MediaMSG.db 的路径
|
|
|
|
|
"filestorage_path": "文件夹FileStorage的路径" # 文件夹 FileStorage 的路径(用于显示图片)
|
|
|
|
|
}
|
|
|
|
|
from flask import Flask, request, jsonify, render_template, g
|
|
|
|
|
import logging
|
|
|
|
|
|
|
|
|
|
app = Flask(__name__, template_folder='./show_chat/templates')
|
|
|
|
|
app.logger.setLevel(logging.ERROR)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.before_request
|
|
|
|
|
def before_request():
|
|
|
|
|
g.MSG_ALL_db_path = args["msg_path"]
|
|
|
|
|
g.MicroMsg_db_path = args["micro_path"]
|
|
|
|
|
g.MediaMSG_all_db_path = args["media_path"]
|
|
|
|
|
g.FileStorage_path = args["filestorage_path"]
|
|
|
|
|
g.USER_LIST = get_user_list(args["msg_path"], args["micro_path"])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app.register_blueprint(app_show_chat)
|
|
|
|
|
print("[+] 请使用浏览器访问 http://127.0.0.1:5000/ 查看聊天记录")
|
|
|
|
|
app.run(debug=False)
|
|
|
|
|
# ************************************************************************************************ #
|
|
|
|
|
# 导出聊天记录为 HTML
|
|
|
|
|
args = {
|
|
|
|
|
"mode": "export",
|
|
|
|
|
"username": "微信账号", # 微信账号(聊天对象账号)
|
|
|
|
|
"outpath": "/path/to/export", # 导出路径
|
|
|
|
|
"msg_path": "解密后的 MSG.db 的路径", # 解密后的 MSG.db 的路径
|
|
|
|
|
"micro_path": "解密后的 MicroMsg.db 的路径", # 解密后的 MicroMsg.db 的路径
|
|
|
|
|
"media_path": "解密后的 MediaMSG.db 的路径", # 解密后的 MediaMSG.db 的路径
|
|
|
|
|
"filestorage_path": "文件夹FileStorage的路径" # 文件夹 FileStorage 的路径(用于显示图片)
|
|
|
|
|
}
|
|
|
|
|
export(args["username"], args["outpath"], args["msg_path"], args["micro_path"], args["media_path"],
|
|
|
|
|
args["filestorage_path"])
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
</details>
|
|
|
|
|
|
|
|
|
|
更多使用方法参考[tests](./tests)文件夹下的[test_*.py](./tests/)文件
|
|
|
|
|
|
|
|
|
|
### 2.3 可执行文件exe
|
|
|
|
|
|
2023-12-01 17:15:59 +08:00
|
|
|
|
进入exe文件所在目录,运行: `wxdump.exe 模式 [参数]`,方法同[命令行](#21-命令行)
|
2023-08-25 11:07:57 +08:00
|
|
|
|
|
2023-12-01 17:18:12 +08:00
|
|
|
|
### 2.4 其他说明
|
|
|
|
|
|
2023-10-14 21:48:35 +08:00
|
|
|
|
【注】:
|
2023-10-06 11:28:45 +08:00
|
|
|
|
|
2023-12-01 16:48:01 +08:00
|
|
|
|
* 关于基址使用cheat engine获取,参考[CE获取基址.md](doc/CE获取基址.md)(该方法一般可用`wxdump bias`命令代替,仅用作学习原理)
|
2023-10-14 21:48:35 +08:00
|
|
|
|
* 关于数据库解析,参考[wx数据库简述.md](doc/wx数据库简述.md)
|
2023-10-06 11:26:39 +08:00
|
|
|
|
|
2023-11-15 15:37:02 +08:00
|
|
|
|
# 三、免责声明(非常重要!!!!!!!)
|
2023-08-21 23:55:59 +08:00
|
|
|
|
|
2023-11-16 18:55:45 +08:00
|
|
|
|
本项目仅供学习交流使用,请勿用于非法用途,否则后果自负。
|
|
|
|
|
|
2023-11-22 18:33:49 +08:00
|
|
|
|
您应该在下载保存,编译使用本项目的24小时内,删除本项目的源代码和(编译出的)程序。
|
|
|
|
|
|
|
|
|
|
本项目仅允许在授权情况下对数据库进行备份,严禁用于非法目的,否则自行承担所有相关责任。
|
|
|
|
|
|
|
|
|
|
下载、保存、进一步浏览源代码或者下载安装、编译使用本程序,表示你同意本警告,并承诺遵守它;
|
2022-07-18 00:13:43 +08:00
|
|
|
|
|
|
|
|
|
请勿利用本项目的相关技术从事非法测试,如因此产生的一切不良后果与项目作者无关。
|
2023-10-17 11:59:10 +08:00
|
|
|
|
|
2023-11-15 15:37:02 +08:00
|
|
|
|
# 四、许可证
|
2023-10-17 11:59:10 +08:00
|
|
|
|
|
2023-11-08 20:05:21 +08:00
|
|
|
|
```text
|
|
|
|
|
MIT License
|
|
|
|
|
|
|
|
|
|
Copyright (c) 2023 xaoyaoo
|
|
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
|
|
|
in the Software without restriction, including without limitation the rights
|
|
|
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
|
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in all
|
|
|
|
|
copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
|
|
PyWxDump is hosted at: https://github.com/xaoyaoo/PyWxDump
|
|
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
|
|
SOFTWARE.
|
2023-11-15 15:04:45 +08:00
|
|
|
|
```
|
|
|
|
|
|