fork bomb
2016-05-09 23:49
162 查看
Jaromil在2002年设计了最为精简的一个Linux Fork炸弹,整个代码只有13个字符,在shell中运行后几秒后系统就会宕机:
:{ :| : & }; :
等价
:{
:|:&
};
:
等价
function bomb{
bomb|bomb &
};
bomb
因为shell中函数可以省略function关键字,所以上面的十三个字符是功能是定义一个函数与调用这个函数,函数的名称为:,主要的核心代码是:|:&,可以看出这是一个函数本身的递归调用,通过&实现在后台开启新进程运行,通过管道实现进程呈几何形式增长,最后再通过:来调用函数引爆炸弹.因此,几秒钟系统就会因为处理不过来太多的进程而死机,解决的唯一办法就是重启。
转载:http://blog.saymagic.cn/2015/03/25/fork-bomb.html
:{ :| : & }; :
等价
:{
:|:&
};
:
等价
function bomb{
bomb|bomb &
};
bomb
因为shell中函数可以省略function关键字,所以上面的十三个字符是功能是定义一个函数与调用这个函数,函数的名称为:,主要的核心代码是:|:&,可以看出这是一个函数本身的递归调用,通过&实现在后台开启新进程运行,通过管道实现进程呈几何形式增长,最后再通过:来调用函数引爆炸弹.因此,几秒钟系统就会因为处理不过来太多的进程而死机,解决的唯一办法就是重启。
转载:http://blog.saymagic.cn/2015/03/25/fork-bomb.html
相关文章推荐
- TestNG Annotations示例
- Oracle的硬解析和软解析
- 手动抓取爱奇艺和优酷等视频网站的视频
- Linux Shell 使用技巧
- 【NPR】非真实感渲染实验室
- 基于Solr实现HBase的二级索引
- 无法关闭了HtmlUnit日志信息
- UVa 1328 Period
- C#集合2
- 《疯狂java讲义》第四章五子棋思考
- UVa 1328 Period
- 1-1 求N!
- The Definitive Antlr 4 第4章学习笔记
- App接口设计思路
- 当删除线遇到适配器时出现的问题
- 类加载的三个准备工作
- POJ 2752 (KMP)
- Crazy tea party
- 【Java】关于Java中参数传递方式与C++的比较
- HDU 2076 夹角有多大(题目已修改,注意读题)