linux脚本】fork炸弹

【linux脚本】fork炸弹

分类: 操作系统之linux linux shell   100人阅读  评论(0)  收藏  举报

fork炸弹

fork炸弹是一种利用系统调用fork进行拒绝服务攻击。

与病毒或蠕虫不同,fork炸弹没有传染性。

在类UNIX系统的shell编程下触发fork炸弹的shell脚本代码,总共13个字符(包括空格)

:(){ :|:& };:

其中::()是函数声明;|并用管道将其输出引至

:|:表示每次调用函数“:”的时候会生成两份备份;

调用间脱钩,以使最初的“:”被杀死后为其调用的两个”:”还能继续执行;

要想杀死每个进程不是那么容易,我们要杀死所有的进程才行。因此我们尝试用程序来杀死fork炸弹所产生的所有进程,但是我们如果想创建进程,我们必须要有进程槽和内存空间,但是fork炸弹会一直探测并占有进程与内存空间,因而这一功能基本不可能实现;

因此,我们理论上是不可以将fork炸弹熄火的。只有强制关机。

但是,我们可以采取措施来预防fork炸弹的产生。

linux下我们可以通过ulimit这个指令来达到效果。例如:ulimit -u 100这个指令可以限制每一个用户只能创建100个进程。


 

Linux Shell脚本入门--cut命令

分类: Linux/Shell   85人阅读  评论(0)  收藏  举报

cut

cut命令可以从一个文本文件或者文本流中提取文本列。

cut语法

[root@www ~]# cut -d'分隔字符' -f fields <==用于有特定分隔字符
[root@www ~]# cut -c 字符区间            <==用于排列整齐的信息
选项与参数:
-d  :后面接分隔字符。与 -f 一起使用;
-f  :依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思;
-c  :以字符 (characters) 的单位取出固定字符区间;

 

PATH 变量如下

[root@www ~]# echo $PATH
/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:/usr/games
# 1 | 2       | 3   | 4       | 5            | 6            | 7

 

将 PATH 变量取出,我要找出第五个路径。

#echo $PATH | cut -d ':' -f 5
/usr/local/bin

 

将 PATH 变量取出,我要找出第三和第五个路径。

#echo $PATH | cut -d ':' -f 3,5
/sbin:/usr/local/bin

 

将 PATH 变量取出,我要找出第三到最后一个路径。

echo $PATH | cut -d ':' -f 3-
/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:/usr/games

 

将 PATH 变量取出,我要找出第一到第三个路径。

#echo $PATH | cut -d ':' -f 1-3
/bin:/usr/bin:/sbin:
 

 

将 PATH 变量取出,我要找出第一到第三,还有第五个路径。

echo $PATH | cut -d ':' -f 1-3,5
/bin:/usr/bin:/sbin:/usr/local/bin

 

实用例子:只显示/etc/passwd的用户和shell

#cat /etc/passwd | cut -d ':' -f 1,7 
root:/bin/bash
daemon:/bin/sh
bin:/bin/sh

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值