Shell炸弹

Shell炸弹

:(){ :|:& };:

 

写成脚本形式

:()
{
:|: &
}
;
:

第 1 行说明下面要定义一个函数,函数名为冒号,没有可选参数。
第 2 行表示函数体开始。
第 3 行是函数体真正要做的事情,首先它递归调用本函数,然后利用管道调用一个新进程(它要做的事情也是递归调用本函数),并将其放到后台执行。
第 4 行表示函数体结束。
第 5 行并不会执行什么操作,在命令行中用来分隔两个命令用。从总体来看,它表明这段程序包含两个部分,首先定义了一个函数,然后调用这个函数。
第 6 行表示调用本函数。

冒号”:”其实是函数名,这个bash脚本就是在不断的执行该函数,然后不断fork出新的进程。

解决方法: ulimit -u 128将用户可以创建的最大进程数限制为很小,一两百即可,执行fork炸弹时会迅速fork出大量进程,此后会由于资源不足而无法继续执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值