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

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

参考:

https://juejin.cn/post/7289667869557178404

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

什么是压缩炸弹

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

测试

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

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

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

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

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

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

相关推荐
JAVA学习通30 分钟前
北京明光云振铎数据科技Java面经
java·开发语言·科技
贫民窟的勇敢爷们7 小时前
SpringBoot整合AOP切面编程实战,实现日志统一记录+接口权限校验
java·spring boot·spring
AC赳赳老秦7 小时前
供应链专员提效:OpenClaw自动跟踪物流信息、更新库存数据,异常自动提醒
java·大数据·服务器·数据库·人工智能·自动化·openclaw
迈巴赫车主7 小时前
Java基础:list、set、map一遍过
java·开发语言
灵犀学长8 小时前
基于 Spring ThreadPoolTaskScheduler + CronTrigger 实现的动态定时任务调度系统
java·数据库·spring
好家伙VCC9 小时前
【无标题】
java
小碗羊肉10 小时前
【JavaWeb | 第十一篇】文件上传(本地&阿里云OSS)
java·阿里云·servlet
吾疾唯君医10 小时前
Java SpringBoot集成积木报表实操记录
java·spring boot·spring·导出excel·积木报表·数据文件下载
Byron Loong10 小时前
【c++】为什么有了dll和.h,还需要包含lib
java·开发语言·c++
hexu_blog11 小时前
vue+java实现图片批量压缩
java·前端·vue.js