5 个版本
0.2.2 | 2024 年 3 月 5 日 |
---|---|
0.2.1 | 2024 年 3 月 3 日 |
0.2.0 | 2024 年 3 月 1 日 |
0.1.1 | 2024 年 2 月 16 日 |
0.1.0 | 2024 年 2 月 15 日 |
1608 在 命令行工具 中排名
272 每月下载次数
8.5MB
2.5K SLoC
包含 (压缩文件,17KB) tests/data/xlsb/Locked_with_macro.xlsb,(压缩文件,17KB) Locked_with_macro_and_complex_password.xlsb,(压缩文件,17KB) tests/data/xlsb/Unlocked_with_macro.xlsb,(压缩文件,8KB) tests/data/xlsb/Unlocked_no_macro.xlsb
Unlock Excel
一个小型的命令行工具,用于读取或删除 Excel 文件中的 VBA 保护。
它适用于以下所有文件:
- xls: Excel 97-2003 工作簿
- xlsm: Excel 宏启用工作簿
- xlsb: Excel 二进制工作簿
由于 xlsx 文件默认不包含任何 VBA,因此它不会与 xlsx 文件一起工作。
这是一个相当粗糙的工具,因此请随意报告任何问题。
使用方法
读取文件的保护状态
$./unlock_excel read FILENAME
通常,如果有密码,密码将是密码的 SHA1 哈希加上随机盐。将打印出哈希结果和盐。这些可以输入到密码恢复工具(如 hashcat 或 John the Ripper)以解密密码。
可选地,您可以传递 -d
标志,让应用程序尝试使用 1.7百万个常见密码列表进行解密: $ ./unlock_excel read -d FILENAME
删除文件的保护状态
$./unlock_excel remove FILENAME
默认情况下,这将保存到原始文件的副本,文件名后追加 '_unlocked'。如果您希望就地更新文件,请传递 -
标志: $ ./unlock_excel remove - FILENAME
致谢
本文的灵感来源于 Didier Stevens。他在那篇帖子中没有链接到代码,但可以在 这里 找到。
路线图
以下是一些可能在未来添加的功能列表
- 改进输出格式。当前输出略显原始,我并未过多考虑
- 同时移除工作表保护。这并不太难做
- 改进内部密码解密。一方面,我们可以使用Rayon来并行化非散列尝试并尝试更多选项。感觉我们正在重新发明密码破解软件,这可能是这个小型工具不恰当的做法
警告
本工具仅设计用于让用户访问他们有权读取和编辑的文件。例如,获取访问已丢失密码的工作旧文件的权限。
不允许使用本工具违反任何法律
依赖项
~9MB
~159K SLoC