Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/eldavoo/wa-crypt-tools
Android安全加密/解密工具移动取证数据恢复数字取证密码学
GitHubeldavoo/wa-crypt-tools

wa-crypt-tools

管理 WhatsApp 的 .crypt12、.crypt14 和 .crypt15 文件。

查看仓库
1.1k157147天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Coverage Status

WhatsApp Crypt Tools

轻松解密和加密 WhatsApp 及 WA Business 的 .crypt12、.crypt14 和 .crypt15 文件!
解密需要 密钥文件 或 64 字符长的密钥。
密钥文件在 crypt14 备份中名为 "key",在 crypt15(加密的端到端备份)中名为 "encrypted_backup.key"。
如果你在寻找更完整的 WhatsApp 取证工具套件,请查看 whapa。

快速安装

云端 - Google Colab

如果你不想在电脑上安装程序,可以在 Google Colab 中运行此程序。

本地 - Jupyter

如果你熟悉 Jupyter(如果不熟悉,请阅读 此处),你可以使用该程序的 笔记本版本。

本地 - pip

你可以通过 pip 将此脚本作为包安装。只需运行:

root@kitploit:~
python -m pip install wa-crypt-tools

即可安装稳定版,或者运行

root@kitploit:~
python -m pip install git+https://github.com/ElDavoo/wa-crypt-tools

安装开发版。

你可能需要创建一个虚拟环境以避免与其他包冲突。

快速上手

使用 wadecrypt 解密文件

root@kitploit:~
用法: wadecrypt [-h] [-nm] [-bs BUFFER_SIZE] [-nd] [-v] [-f] [keyfile] [encrypted] [decrypted]

因此,要解密 crypt12/14/15,我们需要提供密钥文件、加密文件以及输出文件名。

示例

root@kitploit:~
$ wadecrypt encrypted_backup.key msgstore.db.crypt15 msgstore.db
key15.py:51     : [I] 已加载 Crypt15 / 原始密钥
wadecrypt.py:271        : [I] 完成

使用 waencrypt 加密文件(测试版)

root@kitploit:~
用法: waencrypt [-h] [-f] [-v] [--enable-features [ENABLE_FEATURES ...]] [--max-feature MAX_FEATURE]
                 [--multi-file] [--type {12,14,15}] [--iv IV] [--reference REFERENCE] [--noparse]
                 [--wa-version WA_VERSION] [--jid JID] [--backup-version BACKUP_VERSION] [--no-compress]
                 [keyfile] [decrypted] [encrypted]

加密过程更为复杂且未经充分测试:建议使用同一账户中的另一个已加密文件作为“参考”。

使用参考文件(仅测试了 crypt15 数据库)

root@kitploit:~
waencrypt --reference msgstore.db.crypt15 encrypted_backup.key msgstore.db msgstore-new.db.crypt15
waencrypt.py:57         : [W] 此脚本处于测试阶段
waencrypt.py:89         : [I] 完成!

无参考文件

你需要提供以下参数:

  1. 特征列表:仅适用于 2019 年之后的数据库。一系列编号的布尔属性,与你的数据库相关。目前无法从数据库文件中推断它们。在示例中,我们将使用我备份的特征列表,但不要指望它对你有效。
  2. 最大特征编号,编写本文时为 39
  3. 加密文件的应用程序版本:使用合理的数值,如 2.24.8.6 或其他。
  4. Jid:你手机号码的最后两位数字
  5. 备份版本:使用 1。

如果省略参数,将使用默认值。

总结如下:

root@kitploit:~
$ waencrypt --enable-features 5 6 7 8 9 10 11 12 13 14 15 16
 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 39 --type 15 --wa-version 2.26.1.2 --jid 00 --backup
-version 1 encrypted_backup.key msgstore.db msgstore-new.db.crypt15 
waencrypt.py:57         : [W] 此脚本处于测试阶段
waencrypt.py:89         : [I] 完成!

你可以使用 wainfo 工具获取备份文件的信息。

工具列表

使用 -h 选项运行工具以查看用法。

  1. wacreatekey - 创建密钥文件
  2. wadecrypt - 解密备份
  3. waencrypt - 加密备份
  4. waguess - 尝试解密备份的黑客方式
  5. wainfo - 获取备份信息

常见问题

没有密钥文件能否解密备份?

不能!否则加密文件还有什么意义?

我忘记了密码/64 字符的密钥,你能帮我吗?

见上文。

程序无法解密我的备份,并提示备份已损坏

你的备份已损坏。你可以尝试使用 -f 标志禁用所有检查,但预计会出现崩溃和/或不可读的输出。

程序无法解密,并提示密钥错误

密钥不正确。你可以尝试使用 -f 标志禁用所有检查,但预计会出现崩溃和/或不可读的输出。

解密自己的数据库的最佳设置是什么?

  1. 启用端到端备份,并且不要使用密码,而是使用 64 字符的密钥选项。
  2. 使用 wacreatekey 创建 encrypted_backup.key 文件
  3. 安全地存储你的密钥文件,并使用 wadecrypt 解密你的备份。

这样,你将自行管理根密钥——否则 WhatsApp 可能会在适当时更改你的密钥。

我能否使用密码解密数据库?

不能!密码仅用于与 WhatsApp 服务器通信并检索 64 字符的密钥。
换句话说,密码用于保护密钥,而不是用于加密备份。

我能否解密从 Google Drive 下载的 .mcrypt1 文件?

可以,但代码没有文档说明,所以目前请阅读代码。

我真的认为程序有 bug,我的备份完好无损,密钥也正确

请在 Telegram 上发送给我所需的文件,我会查看。

如果你(可以理解地)有隐私顾虑,请提交 issue 并附加:

  1. 程序的输出(有 --force 和无 --force)
  2. 密钥文件的十六进制转储
  3. 加密数据库前 512 字节的十六进制转储

但这会让我更难帮助你。

我在哪里获取密钥(文件)?

在已 root 的 Android 设备上,你可以直接复制 /data/data/com.whatsapp/files/key (如果备份是 crypt15,则为 /data/data/com.whatsapp/files/encrypted_backup.key)。
如果你启用了端到端备份,并且没有使用密码(你有一份 64 位密钥的副本,例如截图),你可以直接抄写并用作密钥文件参数。
还有其他方法,但告知你这些方法不在本项目的范围内。
提出此类问题的 issue 将被关闭并标记为无效。

如何引用本软件?

没有关于本软件的论文或论文,但你可以引用此在线仓库。 请不要使用“et al.”,因为(目前)只有一位作者。

CITATION.cff

有关引用信息,请参见 CITATION.cff 文件。

BibTeX

root@kitploit:~
@misc{wa-crypt-tools,
  author = {ElDavoo},
  title = {WhatsApp Crypt Tools},
  year = {2022},
  month = {06},
  howpublished = {\url{https://github.com/ElDavoo/wa-crypt-tools}
}

BibLaTeX

root@kitploit:~
@online{wa-crypt-tools,
  author = {ElDavoo},
  title = {WhatsApp Crypt Tools},
  year = {2022},
  month = {06},
  url = {https://github.com/ElDavoo/wa-crypt-tools}
}

我乐于接受针对当前 open issues 的拉取请求。:)

最后测试的版本(不保证会更新)

稳定版: 2.24.16.76
测试版: 2.24.26.11

Business

稳定版:
2.24.23.78

Protobuf 自动修复

你可以安装 proto 可选依赖项,以使用 protoletariat 自动修复 proto 导入。

首先,克隆仓库后,在虚拟环境(建议)中进行可编辑安装,命令如下:

pip install -e .[proto]

这将同时安装包的可选依赖项。

接下来,从其仓库 此处 下载 protobuf 编译器。你可以将 protoc 程序移动到包含 .proto 文件的 wa-crypt-tools/proto 文件夹。

根据需要替换 protobuf 类,并运行 protoc 生成 python 类。在项目的 wa-crypt-tools/proto 目录下运行:

./protoc --python_out=../src/wa_crypt_tools/proto --proto_path=. *.proto

通过 protoc 生成 protobuf python 类后,在同一目录下运行:

protol --in-place --python-out ..\src\wa_crypt_tools\proto protoc --proto-path=. *.proto

Linux:

PATH="$(pwd):$PATH" protol --in-place --python-out ../src/wa_crypt_tools/proto protoc --proto-path=. *.proto

现在所有生成的 python 类都应已修复导入。


捐赠

非常感谢各位!

  • 🎉🎉🎉 githubsterer 🎉🎉🎉
  • 🎉🎉🎉 courious875 🎉🎉🎉
  • 🎉 pscriptos 🎉

以及其他我忘记提及的人!

鸣谢:

  • crypt12 的原始实现:TripCode
  • 初期的一些帮助:DjEdu28
  • 使用 protobuf 的 crypt14/15 实际实现:ElDavoo
  • crypt14/15 脚部帮助:george-lam
  • Pip 包实现:Mikel12455
  • kingbtcvl

以及其他所有提供帮助的人!

使用了本软件的研究论文

  • Injection Attacks Against End-to-End Encrypted Applications
  • Forensic Analysis of WhatsApp Disappearing Message on Unrooted Android Using Mobile Device Forensics Methodology NIST SP 800-101r1
  • ANALISIS FORENSIK APLIKASI PENIPUAN BERBASIS ANDROID MENGGUNAKAN METODE NIST(坏小子们,你们没有引用我 :P )

Stargazers 趋势图

Star History Chart

下载工具