ablesphinx/Impact-of-Supercomputing-on-ZIP-Password-Cracking
GitHub: ablesphinx/Impact-of-Supercomputing-on-ZIP-Password-Cracking
一项通过对比个人电脑与超算环境,量化分析并行计算对 ZIP 文件暴力破解效率影响的研究项目,包含完整代码、实验数据集及 ZIP Crypto 密码碰撞漏洞的发现。
Stars: 0 | Forks: 0
# 超级计算对 ZIP 文件密码破解的影响分析

## 概述
本仓库包含了一项研究项目的完整工作,该研究调查了并行计算和超级计算资源如何影响针对加密 ZIP 文件 的暴力破解攻击效率。研究对比了以下内容:
- 顺序执行
- 个人电脑上的有限核心并行化
- Marenostrum 5 超级计算机上的大规模并行化
本仓库包含:
- 最终研究文档 (`docs/`)
- 用于暴力破解操作和组合计数的 Python 脚本 (`python_codes/`)
- 实验数据集以及包含执行时间和每秒组合数的表格 (`data_tables/`)
- 用于测试的 ZIP 文件示例 (`used_zip_files/`)
## 仓库结构
- `python_codes/` 用于实验的 Python 脚本
- `data_tables/` 密码破解测试的结果及其他表格
- `docs/` 最终研究文档
- `used_zip_files/` 用于测试的 ZIP 文件示例
## 目标
1. 量化并行化对密码破解时间的影响。
2. 确定密码长度和字符集复杂性对安全性的影响。
3. 提供不同计算环境间暴力破解性能的实际对比。
## 主要发现
### 并行化
并行化显著提高了暴力破解性能。尽管随着 worker 数量增加,单个 worker 的速度会有所下降,但总吞吐量却有明显提升。
这展示了其可扩展性,允许在使用 Marenostrum 5 等大规模并行计算资源时(访问仅限授权用户)对复杂密码发起更快的攻击。
### 密码长度与字符多样性
- 同时包含大写字母、小写字母、数字和符号的长密码能显著提高对暴力破解的抵抗力。
- 短密码或字符集有限的密码更加脆弱。
- 密码在搜索空间中的位置很关键;例如,在纯数字下,以“0”开头的密码会被优先测试,使其更容易在初期被破解。
- 每秒组合数在不同的密码复杂度和长度下保持稳定,表现出可预测的性能。
### 字符集复杂性
更大、更复杂的字符集(例如,扩展字符集或非拉丁字符)会呈指数级增加可能的组合数量,使得暴力破解攻击变得极为困难。
### ZIP Crypto 观察
ZIP Crypto 可能会产生密码碰撞:不同的密码可能会被作为正确密码接受,即使其中只有一个是原始密码。发生这种情况是因为验证过程使用的验证信息非常有限,仅将加密头的一个字节与文件的 CRC 值进行校验。因此,在暴力破解攻击期间,某些错误的密码可能会碰巧通过校验。从统计学上讲,由于这种单字节验证机制,大约每 256 个密码中就有 1 个可能被误认为有效。示例:密码为 `aF9m` 的文件在暴力破解测试中似乎也能被 `aaaH` 解密。
### 不同机器上的性能表现
- 个人笔记本电脑(顺序执行):约 8,000 次组合/秒。
- 笔记本电脑(6 个并行 worker):每个 worker 约 4,500 次组合/秒。
- Marenostrum 5(75 个 worker):每个 worker 约 1,760 次组合/秒,但由于大规模并行化,总吞吐量要高得多。
- 证实了大规模并行化可以弥补由系统开销导致的单个 worker 速度下降。
**总结:** 并行化加速了暴力破解攻击,但密码长度、复杂性和字符集仍然是决定安全性最关键的因素。ZIP Crypto 的内部密钥限制可能导致单个文件拥有多个有效密码,这强调了使用更强加密算法的必要性。所有初始目标均已实现,并且在密码碰撞和并行化效率方面获得了额外的发现。
**未来工作:** 深入研究 ZIP crypto 的漏洞,并探索优化的并行化策略以最大化暴力破解效率。
## 如何使用脚本
1. 下载或克隆本仓库。
2. 在 Python 脚本中配置参数(密码长度、字符集、尝试次数等)。
3. 使用 Python 3.6 或更高版本运行脚本。
## 前置条件
仅需标准库模块:
- `zipfile`
- `itertools`
- `string`
- `multiprocessing`
- `sys`
- `datetime`
- `os`
无需安装额外的软件包。
## 许可证
本项目基于 CC BY-NC-SA 4.0 许可证授权 - 详见 [LICENSE](LICENSE) 文件。
标签:DOS头擦除, HPC, Marenostrum 5, meg, PoC, ProjectDiscovery, Python, VEH, ZipCrypto, ZIP加密, 信息安全, 字典攻击, 安全测试, 实验研究, 密码复杂度, 密码学, 密码安全评估, 密码破解, 并行计算, 手动系统调用, 攻击性安全, 数据保护, 无后门, 暴力破解, 用户模式钩子绕过, 网络安全, 计算效率, 超级计算机, 逆向工具, 隐私保护, 高性能计算