原理
fork炸弹通过快速创建大量进程,导致系统不能创建新进程而导致系统不能正常运行。
bash 代码
:(){ :|:& };:
这个代码可以直接在 Linux 的命令行中执行。
代码的意思
:() 定义一个函数名称为 ":"
{ :|:& }; 函数的内容为调用自己,管道给自己放入后台
: 执行这个函数
预防方法
- 写规范的代码。
- 限制进程能创建的子进程数量(例如 ulimit -u 20,但是只能限制普通用户,root用户不受限制)。
fork炸弹通过快速创建大量进程,导致系统不能创建新进程而导致系统不能正常运行。
:(){ :|:& };:
这个代码可以直接在 Linux 的命令行中执行。
:() 定义一个函数名称为 ":"
{ :|:& }; 函数的内容为调用自己,管道给自己放入后台
: 执行这个函数