【安全】【渗透测试】在Linux系统上制作高压缩比的“zip炸弹“

测试背景

  在某些安全性较高的软件中,上传文件时会限制文件的大小、格式等,通常的实现方法是在前台对文件大小进行校验,或者在发起文件上传请求时,后台也做一校验,以防止被绕过前台校验的风险。
  本次所测试的场景,就是通过制作一个高压缩比的文件(俗称zip炸弹),来满足软件前后台校验的大小要求。由于原始文件很大,未做zip炸弹防范的软件,会在后台持续性地解压文件,从而造成cpu、内存,磁盘等资源持续性高占用,进而产生拒绝服务攻击的风险。

文件制作

  1. 进入Linux系统终端,输入如下命令。

    dd if=/dev/zero count=$((1024*1024)) bs=4096 of=/home/bombfile.txt
    

    命令解释:

    • if=源文件名,如果没有文件内容要求,可以指定为系统自带的0源文件,制作好的文件内容也会是0。
    • count=blocks,拷贝blocks个数据块,块大小取决于bs或ibs指定的字节数。
    • bs=bytes,同时设置输入/输出的数据块大小是bytes个字节。
    • of=输出文件名,自己任取。

    制作大文件

  2. 再输入如下命令,稍等一会儿,一个高压缩比的zip文件就制作好了。

    zip -9 bombfile.zip bombfile.txt
    

    命令解释:

    • -9:设置压缩级别,9最大,1最小。
    • bombfile.zip:输出压缩文件名
    • bombfile.txt:压缩源文件

    文件压缩

  3. 可以查看下生成的zip文件属性信息。
    zip炸弹文件属性

参考资料

Linux系统dd命令
Linux系统zip命令

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值