Zip 炸弹

zip 炸弹，也称为死亡 zip或解压缩炸弹，是一种恶意的-{zh-hant:電腦檔案;zh-hans:计算机文件}-，会使读取它的程序或系统崩溃或失效。它会使-{zh-hant:防毒軟體;zh-hans:杀毒软件}-失去能力，来为更多的传统计算机病毒创造机会。

zip 炸弹不会阻止程序的正常运行，而是让程序工作，但是文件里的档案是精心设计的，因此要解压缩文件时（比如用病毒扫描程序来给它扫描病毒），就需要花费大量时间、-{zh-hant:磁碟空間;zh-hans:磁盘空间}-和-{zh-hant:隨機存取記憶體;zh-hans:内存}-。

大多数现代杀毒软件都可以检测文件是否是 zip 炸弹，以免将其解压缩。

 细节和用途 
一个 zip 炸弹通常是一个小文件，便于传输也避免被怀疑。 但是，解压缩文件时，它的内容就会超出系统的处理能力。

zip炸弹的一个示例是文件42.zip，它是一个只有42 KB大的zip文件，其中包含5层嵌套的zip文件（每组16个），如果全部解压缩出来，每个底层压缩文件的大小是 4.3 GB（4 294 967 295字节，约为3.99GiB），总计4.5 PB（4 503 599 626 321 920字节，约为3.99 PiB），是解壓縮前約一百多兆倍大。
这个文件可从互联网上的各种网站上下载。 在许多防病毒扫描程序中，仅对归档执行几层递归，免受可能导致缓冲区溢出，内存不足或超出程序执行时间的攻击。zip 炸弹经常（如果不是总是）依靠重复相同的文件内容来实现它极高的压缩率。 可以采用动态编程方法以免遍历这些文件，在每个级别上只跟踪一个文件，从而有效地将它的指数增长转换为线性增长。

也有一些 zip 文件在未压缩时会产生相同的副本。 还有一种复杂的 zip 炸弹形式，它利用 zip 文件的规范和Deflate压缩算法来创建炸弹，而无需使用 42.zip 那样的嵌套。

 另见 

 ，对XML解析器的类似攻击
 电邮炸弹
 邏輯炸彈
 Fork炸弹
 忙碌的海狸，在终止之前尽可能多地输出数据的程序。

 参考资料 

Category:恶意软件种类
Category:演算法複雜性攻擊
Category:阻斷服務攻擊
Category:数据压缩