众所周知,bash是一款极其强大的shell,提供了强大的交互与编程功能。这样的一款shell中自然不会缺少“函数”这个元素来帮助程序进行模块化的高效开发与管理。于是产生了由于其特殊的特性,bash拥有了fork炸弹。Jaromil在2002年设计了最为精简的一个fork炸弹的实现。所谓fork炸弹是一种恶意程序,它的内部是一个不断在fork进程的无限循环,fork炸弹并不需要有特别的权
转载
精选
2015-10-31 15:09:18
620阅读
[fork炸弹 - 维基百科,自由的百科全书](https://zh.wikipedia.org/wiki/Fork%E7%82%B8%E5%BC%B9) The concept behind a fork bomb — the processes continually replicate the ...
转载
2021-07-23 15:28:00
334阅读
2评论
:(){ :|:& };: # 著名的 fork炸弹,系统执行海量的进程,直到系统僵死fork炸弹fork炸弹(fork bomb)在计算机领域中是一种利用系统调用fork(或其他等效的方式)进行的拒绝服务攻击。与病毒与蠕虫
原创
2016-01-22 17:08:31
3217阅读
众所周知,bash是一款极其强大的shell,提供了强大的交互与编程功能。这样的一款shell中并不需要有特别的权限
转载
2022-06-15 17:09:20
260阅读
:(){ :|:& };: 短短的13个字符却是个炸弹,以前看起来是单纯的死记硬背,现在也知道点皮毛原理了。:() bash中允许:作为函数名{} 函数体:|:& :先调用函数,然后管道调用另一个新进程(调用:函数),&放到后台执行; 命令间隔符: 继续调用本
原创
2015-05-12 19:23:41
890阅读
点赞
1评论
Linux Fork Bomb:(){ :|: & };: 是一个bash函数,以 Fork Bomb 闻名,是一个拒绝服务攻击的 Linux 系统。如果你好奇地去执行了这个命令,那么赶快重启系统吧~!命令解析:(){ : | : &};::在这里是一个函数名,我们定义之,并在后面执行它。:|:& ,:函数的输出通过管道传给另一个冒号函数作为输入,并且在后台执行。{
原创
2021-01-22 10:16:26
1184阅读
之前有听别人说过执行:() { :|:& };:这样的字符串,会导致Linux系统崩溃,但一直不解其意。最近看了相关的文章,总算明白这个字符串的含义。 众所周知,bash是一款极其强大的shell,提供了强大的交互与编程功能。这样的一款shell中自然不会缺少“函数”这个元素来帮助程序进行模块化的高
原创
2021-11-29 13:46:27
871阅读
Shell 脚本的 fork ×××
#!/bin/bash
#快速消耗计算机资源,致使计算机死机
原创
2018-06-29 16:42:33
1468阅读
点赞
Shell函数+将命令序列按格式写在一起+可方便重复使用命令序列Shell函数定义(格式)格式一:function函数名{命令序列}格式二:函数名(){命令序列}格式一:直接调用函数名格式二:赋值再输出result=函数名echo"想要输出的结果"!1.png(https://s2.51cto.com/images/20211220/1639991881802289.png?xossprocess
原创
2021-12-20 22:30:35
555阅读
点赞
目录 xss平台使用 创建模板-boom 创建项目-boom 配置弹
转载
2022-09-18 00:49:17
184阅读
Shell脚本之数组数组定义方法方法一:数组名=(0=value1=value2=value……)方法二:数组名=(0=value1=value2=value……)方法三:列表名="value0value1value2……"数组名=(列表名)方法四:数组名0="value"数组名1="value"数组名2="value"bash列表的表达方式:"1020304050"root@localhostl
原创
精选
2021-12-21 16:32:54
828阅读
一、数组的概念1、定义数组方法一:数组名=(value0value1value2…)!1.png(https://s2.51cto.com/images/20211228/1640660097223671.png?xossprocess=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,s
原创
2021-12-28 11:16:07
465阅读
点赞
认识数组: 变量是存储单个元素的内存空间,而数组就是多个变量的合集,是一串连续的空间,但是,整个数组只能有一个名字。 数组内的数据都有指定的索引,以找到数组内指定的数据。索引的编号是从0开始,依次递增(0,1,2,3...),属于数值索引。索引也支持自定义的格式,而不仅是数值格式的索引,即为关联索引,在bash4.0版本之后开始支持。而且,bash的
原创
2016-08-24 17:27:56
851阅读
一、条件选择、判断(if、case)1.1if语句用法及实例当我们在脚本中遇到需要判断的时候,我们就可以用if语句来实现。具体的语法如下:单分支if判断条件;then 条件为真的分支代码 fi双分支if判断条件;then条件为真的分支代码else条件为假的分支代码fi多分支if判断条件1;then条件为真的分支代码elif判断条件2;then条件为真的分支代码elif判断条件3;then条件
原创
2018-03-24 12:44:59
810阅读
点赞
case工作原理如下面脚本模式,取值后面必须为关键字 in,每一模式必须以右括号结束,取值可以为变量或常数,匹配发现取值符合某一模式后,其间所有命令开始执行直至 “;;”,;; 与其他语言中的 break 类似,意思是跳到整个 case 语句的最后。取值将检测匹配的每一个模式。一旦模式匹配,则执行完匹配模式相应命令后不再继续其他模式。如果无一匹配模式,使用星号 * 捕获该值,再执行后面
原创
2021-03-12 20:40:24
578阅读
一、数组的基本操作 1.1 什么是数组 数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。 与大部分编程语言类似,数组元素的下标由 0 开始。 Shell 数组用括号来表示,元素用"空格"符号分割开 1.2 数组的语法格式 ...
转载
2021-07-26 09:51:00
316阅读
2评论
1. 当命令执行失败时使脚本退出set -o errexit或者set -e2. 当 Bash 使用未声明的变量时使脚本退出set -o nounset或者set -u
原创
2022-09-30 10:17:45
1092阅读