今天了解到一个概念,压缩炸弹。
参考:
https://juejin.cn/post/7289667869557178404
https://www.zhihu.com/zvideo/1329374649210302464
什么是压缩炸弹
压缩炸弹(也称为压缩文件炸弹、炸弹文件)是一种特殊的文件,它在解压缩时会迅速膨胀成极其庞大的文件,可能导致系统资源耗尽、崩溃或磁盘空间耗尽。
压缩炸弹的原理是利用文件压缩算法中的重复模式和递归压缩的特性。它通常是一个非常小的压缩文件,但在解压缩时会生成大量的重复数据,导致文件大小迅速增长。这种文件的设计意图是迫使系统进行大量的解压缩操作,以消耗系统资源或填满磁盘空间。
压缩炸弹可能对系统造成严重的影响,包括系统崩溃、资源耗尽、拒绝服务攻击等。因此,它被视为一种恶意的计算机攻击工具,常常被用于恶意目的或作为安全测试中的一种工具。
测试
这里可以使用代码生成,为了省事,找了个测试文件,网站下载 https://unforgettable.dk/ 它的初始大小是 42KB , 解压密码是 42 。
下载下来,我的卡巴竟然没有报毒。先解压下:
解压处理,卡巴立马给删了,还是没有白掏钱的。
看到这个概念,还是有点后怕,以前写的程序都没有防护这点,PC有杀毒软件还好点,如果是没有杀毒软件的服务器呢?
参考文章也有解决方法,使用程序限制压缩文件大小,检测压缩炸弹。
写这篇文章,也是为了记录下,以后在写程序的时候得防着点呀。