anonymous-201/zipbomb
GitHub: anonymous-201/zipbomb
一款纯客户端运行的 ZIP 解压炸弹生成器,用于安全研究中的杀毒软件测试和解压漏洞审计。
Stars: 2 | Forks: 0
```
______ __ ______ ______ ______ __ __ ______
/\___ \ /\ \ /\ == \ /\ == \ /\ __ \ /\ "-./ \ /\ == \
\/_/ /__ \ \ \ \ \ _-/ \ \ __< \ \ \/\ \ \ \ \-./\ \ \ \ __<
/\_____\ \ \_\ \ \_\ \ \_____\ \ \_____\ \ \_\ \ \_\ \ \_____\
\/_____/ \/_/ \/_/ \/_____/ \/_____/ \/_/ \/_/ \/_____/
```
# 💣 ZipBomb 生成器
**一款基于浏览器的 ZIP bomb 生成器 —— 输入你想要的解压大小和文件名,一键下载。**
[](https://anonymous-201.github.io/zipbomb/)
[](https://github.com/anonymous-201/zipbomb)
[](LICENSE)
[](https://github.com/anonymous-201/zipbomb)
[](https://github.com/anonymous-201/zipbomb/pulls)
## 🌐 在线演示
无需安装 —— 完全在你的浏览器中运行:
👉 **[https://anonymous-201.github.io/zipbomb/](https://anonymous-201.github.io/zipbomb/)**
## 📸 预览
## 📖 什么是 ZIP Bomb?
**ZIP bomb**(解压炸弹 / zip of death)是一种小型压缩文件,在解压时会膨胀到极其庞大的体积。它们常用于安全研究,目的是:
- 测试杀毒软件如何处理格式异常或极端的压缩文件
- 对文件上传处理程序和解压 pipeline 进行压力测试
- 探索 DEFLATE 等压缩算法的极限
其核心机制在于:空字节(`\x00`)的压缩率可高达约 1000:1 —— 一个 1 MB 的 ZIP 文件可以解压出超过 1 GB 的内容。
## ✨ 功能
| 功能 | 详情 |
|---|---|
| 🎯 自定义解压大小 | 可以选择 Bytes、KB、MB、GB、TB 或 PB |
| 📁 自定义文件名 | 将你输出的 ZIP 文件命名为任何你想要的名称 |
| ⚡ 一键生成 | 完全在浏览器中运行,无需服务器 |
| 🗜️ DEFLATE level 9 | 最大限度压缩以生成最小的输出文件 |
| 🔒 绝不发送任何数据 | 100% 客户端运行,不会有任何数据离开你的设备 |
| 🌍 无需安装 | 直接打开 HTML 文件或访问 GitHub Pages 链接 |
## 🚀 使用说明
### 方式 1 —— GitHub Pages(推荐)
直接访问在线网站:
```
https://anonymous-201.github.io/zipbomb/
```
### 方式 2 —— 本地运行
```
# Clone repository
git clone https://github.com/anonymous-201/zipbomb.git
# 在 browser 中打开
cd zipbomb
open index.html # macOS
start index.html # Windows
xdg-open index.html # Linux
```
### 操作步骤
1. **输入 ZIP 文件名** —— 输入你想要的输出文件名(例如 `bomb`)
2. **输入解压大小** —— 输入一个数字(例如 `10`)
3. **选择单位** —— 从 `B`、`KB`、`MB`、`GB`、`TB` 或 `PB` 中选择
4. 点击 **Generate & Download**
5. `.zip` 文件将自动下载到你的设备中
## 📂 项目结构
```
zipbomb/
├── index.html # Main tool — fully self-contained, no build step
├── README.md # Project documentation
├── LICENSE # MIT License
└── preview.png # Screenshot for social previews (optional)
```
## ⚙️ 工作原理
```
User Input (size + filename)
│
▼
Uint8Array of null bytes (\x00) created in browser memory
│
▼
JSZip compresses with DEFLATE level 9
│
▼
Blob URL generated → tag triggered → ZIP downloaded
```
- **较小体积 (B/KB/MB/GB ≤ 2GB):** 在内存中分配确切的字节数,并将其压缩为单个文件。
- **较大体积 (TB/PB 或 GB > 2GB):** 使用一个 50 MB 的基础块在多个压缩包条目中重复,以便在报告完整虚拟大小的同时,保持在浏览器内存限制之内。
## 🛡️ 合理的使用场景
- ✅ 测试杀毒软件和端点保护软件
- ✅ 审计文件上传处理程序,排查解压炸弹漏洞
- ✅ 安全研究和 CTF 竞赛
- ✅ 学习 DEFLATE 及压缩机制的内部原理
- ✅ 授权下的渗透测试
- ❌ 未经许可攻击系统 —— **严禁此类行为**
## 📜 License
本项目基于 **MIT License** 授权 —— 详情请参阅 [LICENSE](LICENSE)。
```
MIT License — Copyright (c) 2025 anonymous-201
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software to use, copy, modify, merge, and distribute it, subject to
the conditions in the LICENSE file.
```
## 👤 作者
**anonymous-201**
- 🌐 GitHub: [@anonymous-201](https://github.com/anonymous-201)
- 📦 Repo: [anonymous-201/zipbomb](https://github.com/anonymous-201/zipbomb)
- 🔗 在线工具: [anonymous-201.github.io/zipbomb](https://anonymous-201.github.io/zipbomb/)
用 💗 为开源安全研究社区打造。
**⭐ 如果这个项目对你有帮助,请给本仓库点个 Star!**
[](https://github.com/anonymous-201/zipbomb/stargazers)
标签:后端开发, 多模态安全, 安全测试, 攻击性安全, 数据可视化, 浏览器端, 解压炸弹