文件压缩炸弹,想到有点后怕

今天了解到一个概念,压缩炸弹。

参考:

https://juejin.cn/post/7289667869557178404

https://www.zhihu.com/zvideo/1329374649210302464

什么是压缩炸弹

压缩炸弹(也称为压缩文件炸弹、炸弹文件)是一种特殊的文件,它在解压缩时会迅速膨胀成极其庞大的文件,可能导致系统资源耗尽、崩溃或磁盘空间耗尽。
压缩炸弹的原理是利用文件压缩算法中的重复模式和递归压缩的特性。它通常是一个非常小的压缩文件,但在解压缩时会生成大量的重复数据,导致文件大小迅速增长。这种文件的设计意图是迫使系统进行大量的解压缩操作,以消耗系统资源或填满磁盘空间。
压缩炸弹可能对系统造成严重的影响,包括系统崩溃、资源耗尽、拒绝服务攻击等。因此,它被视为一种恶意的计算机攻击工具,常常被用于恶意目的或作为安全测试中的一种工具。

测试

这里可以使用代码生成,为了省事,找了个测试文件,网站下载 https://unforgettable.dk/ 它的初始大小是 42KB , 解压密码是 42 。

下载下来,我的卡巴竟然没有报毒。先解压下:

解压处理,卡巴立马给删了,还是没有白掏钱的。

看到这个概念,还是有点后怕,以前写的程序都没有防护这点,PC有杀毒软件还好点,如果是没有杀毒软件的服务器呢?

参考文章也有解决方法,使用程序限制压缩文件大小,检测压缩炸弹。

写这篇文章,也是为了记录下,以后在写程序的时候得防着点呀。

相关推荐
程序员是干活的2 分钟前
私家车开车回家过节会发生什么事情
java·开发语言·软件构建·1024程序员节
煸橙干儿~~12 分钟前
分析JS Crash(进程崩溃)
java·前端·javascript
2401_8543910813 分钟前
Spring Boot大学生就业招聘系统的开发与部署
java·spring boot·后端
Amor风信子14 分钟前
华为OD机试真题---跳房子II
java·数据结构·算法
杨荧40 分钟前
【JAVA开源】基于Vue和SpringBoot的洗衣店订单管理系统
java·开发语言·vue.js·spring boot·spring cloud·开源
陈逸轩*^_^*1 小时前
Java 网络编程基础
java·网络·计算机网络
这孩子叫逆1 小时前
Spring Boot项目的创建与使用
java·spring boot·后端
星星法术嗲人1 小时前
【Java】—— 集合框架:Collections工具类的使用
java·开发语言
一丝晨光2 小时前
C++、Ruby和JavaScript
java·开发语言·javascript·c++·python·c·ruby
天上掉下来个程小白2 小时前
Stream流的中间方法
java·开发语言·windows