如何保护您的计算机免受邮编炸弹的侵害

新一代的zip炸弹在经过精心设计和伪装后,再次引起了安全研究人员的高度关注。

设想一下,一个看似无害、体积微小的压缩文件,仅有几KB大小,当你点击解压后,却瞬间膨胀成足以瘫痪整个系统的PB级甚至EB级的数据洪流。

这就是所谓的zip炸弹,也被称为减压炸弹或死亡拉链。

什么是zip炸弹?

它是一种特殊的压缩文件,内部包含多层嵌套结构或单层高压缩数据,解压时所需空间远远超出大多数计算机的处理能力。

zip炸弹的设计初衷是,当恶意软件进入系统后,通过解压缩或扫描文件内容来耗尽CPU资源并使防病毒软件不堪重负。

然而,大多数现代防病毒软件无需解压缩即可检测zip文件。当它们识别出多层压缩结构时,会将其标记为压缩炸弹并避免进行扫描。

一个典型的案例是名为“.42”的zip文件,压缩后只有42KB大小。它包含六层压缩数据,前五层每层有16个文件,最后一层是一个4.3GB的文件。

但是,完全解压后,其总容量将达到惊人的4.5PB。

简单解释下,1 PB = 1,000,000 GB = 1,000 TB。

作为参考,我的笔记本电脑存储空间只有512GB,也就是大约0.5TB。我最大的外置硬盘也只有1TB。所以从技术层面来说,大多数个人电脑在尝试递归打开“.42”zip文件时,都可能直接崩溃。有趣的是,你可以轻易地从网上下载这个文件(但请自行承担风险)。

但是,这类炸弹本身大多不具备破坏力。尽管如此,此类zip文件可能会携带递归解包程序脚本,这些脚本会解压这些“死亡zip”,从而达到恶意目的。

zip炸弹的类型

与所有恶意软件一样,zip炸弹也具有多种变体和攻击手段。

#1. 递归型

这类zip炸弹在单个文件中包含多层嵌套。我们刚才讨论的42.zip就是一个递归zip炸弹。

递归zip炸弹的一个特殊分支是zip quines(自复制压缩文件)。它们通过每次解压操作提升一个层级,复制自身内容,使其成为具有无限嵌套层的压缩文件。理论上来说,无论可用资源有多少,你都无法完全解压zip quines。

尽管如此,递归zip炸弹已经过时,现代防病毒软件已经具备识别其文件结构并避免处理的能力。

#2. 非递归型

这种非递归压缩文件的开发者David Fifield将其称为“更优秀的zip炸弹”。

与递归型zip炸弹不同,非递归型无需多轮解压,一次即可展开所有内容。 这是通过采用比普通zip文件高得多的压缩率来实现的。

通常情况下,任何zip文件最多只能将文件压缩到其标准大小的1032倍。这是通过DEFLATE压缩算法实现的。然而,David Fifield发明了一种非递归压缩炸弹技术,可以在单轮展开中爆炸超过2800万倍(1KB➡26.7GB)。

因此,它更难检测,也更具危险性。

zip炸弹的工作原理是什么?

如前所述,如果不进行解压,zip炸弹是安全的。因此,只有当一些程序试图自动解压你下载的每个zip文件时,才会存在危险。

此外,过时的防病毒软件可能无法识别文件结构,并且会花费大量时间扫描最近下载的zip炸弹。在这种情况下,系统可能会崩溃。

而且,递归zip炸弹可以将恶意软件深度隐藏在防病毒软件无法扫描到的层级中。

但这仅限于递归型zip炸弹。

非递归型则会在单轮解压中直接耗尽系统资源,而不会被大多数现有的防病毒软件检测到。

如何远离zip炸弹

保持安全的最佳方式是养成良好的互联网使用习惯。首先,永远不要从不受信任的网站下载任何东西,尤其是在浏览器提示风险时。

垃圾邮件也是如此。如果你不确定附件的来源,请不要打开它们。如果你的邮件服务提供商(如Gmail)发出警告,请在与之交互之前尝试验证来源。

比如,在Google等搜索引擎中输入附件的文件名,查看搜索结果。大多数zip炸弹都有记录,你可能会找到搜索结果中出现完全相同的文件名。

尽管如此,这里还是提供一个非详尽的步骤列表,帮助你打造更安全的互联网环境。

杀毒软件

在当今恶意软件无处不在的时代,安装一款可靠的防病毒软件就相当于完成了安全工作的一半。市场上有一些免费的防病毒软件,但通常这些免费产品会试图通过用户来推广其他产品。

此外,你每次打开电脑时都会使用防病毒软件,有时甚至在你不知情的情况下。所以,最好花一些钱购买高级防病毒软件。这些付费产品会提供更高级的防火墙、系统优化工具,以及一些额外的功能,如VPN和密码管理器等,以实现更全面的网络安全保护。

但是,如果你仍然不为所动,这里有一份免费防病毒软件列表供你选择。

安全意识教育

防病毒软件可以让你远离危险的计算机程序,但它对于社会工程学手段几乎无能为力。

通常情况下,受害者会被诱导下载并解压缩zip炸弹,他们认为zip文件本身并不是病毒。还有一些人掉入陷阱,最终在系统中安装了恶意软件。

随后,受害者可能会遭受间谍软件、勒索软件、网络钓鱼等攻击,网络犯罪分子试图窃取个人信息或造成经济损失。

在这种情况下,唯一的救星就是安全意识教育。每个人都必须了解并从各种诈骗手段中吸取教训,并与身边的人分享。

总结

Zip炸弹是可以占用整个硬盘甚至更多空间的文件,它们会消耗大量的系统资源,最终导致系统崩溃。

而且,由于它们本身并不完全是恶意软件,因此并不总是能够被识别(尤其是非递归型zip炸弹)。在此之前,唯一的保护方法就是预防。

你可以通过了解互联网安全知识、使用高级防病毒软件,并避免陷入任何社会工程学陷阱来实现预防。

PS:我们有一个内容丰富的techblik.com安全专栏,我们会定期发布有关个人和企业安全的文章。我建议你将其添加为书签,并尝试偶尔阅读与你相关的内容。