版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机安全技术计算机病毒分析8/28/202211 计算机病毒的状态计算机病毒在传播过程中存在两种状态,即静态和动态静态病毒,是指存在于辅助存储介质中的计算机病毒,一般不能执行病毒的破坏或表现功能,其传播只能通过文件下载(拷贝)实现因为静态病毒尚未被加载、尚未进入内存,不可能获取系统的执行权限病毒之所以处于静态,有两种可能没有用户启动该病毒或运行感染了该病毒的文件该病毒存在于不可执行它的系统中当病毒完成初始引导,进入内存后,便处于动态。动态病毒本身处于运行状态,通过截流盗用系统中断等方式监视系统运行状态或窃取系统控制权。病毒的主动传染和破坏作用,都是动态病毒的“杰作”8/28/202221 计
2、算机病毒的状态计算机病毒的基本流程与状态转换病毒由静态转变为动态的过程,称为病毒的启动。实际上,病毒的启动过程就是病毒的首次激活过程内存中的动态病毒又有两种状态:可激活态和激活态。当内存中的病毒代码能够被系统的正常运行机制所执行时,动态病毒就处于可激活态一般而言,动态病毒都是可激活的系统正在执行病毒代码时,动态病毒就处于激活态病毒处于激活态时,不一定进行传染和破坏;但进行传染和破坏时,必然处于激活态对于处于不同状态的病毒,应采用不同的分析、清除手段8/28/202231 计算机病毒的状态计算机病毒的基本流程与状态转换8/28/202242 计算机病毒的基本环节计算机病毒要完成一次完整的传播破坏
3、过程,必须经过以下几个环节:分发拷贝阶段潜伏繁殖阶段破坏表现阶段在任何一个环节(阶段)都可以抑制病毒的传播、蔓延,或者清除病毒我们应当尽可能地在病毒进行破坏性攻击之前切断病毒传染源、抑制病毒的传播蔓延8/28/20225病毒的目的快速传染隐藏自己变形8/28/20226病毒感染的一般过程 计算机病毒的感染过程与生物学病毒的感染过程非常相似,它寄生在宿主程序中,进入计算机,并借助操作系统和宿主程序的运行,复制自身,大量繁殖。计算机病毒感染的一般过程为: 当计算机运行染毒的宿主程序时,病毒夺取控制权。 寻找感染的突破口。 将病毒程序嵌入感染目标中。8/28/20227文件型病毒传染原理和特征8/2
4、8/20228核心态与用户态操作系统代码、设备驱动程序代码使用特权级0(Ring 0),工作于系统核心态普通的用户程序使用特权极3(Ring 3) ,工作在用户态Windows 2000/XP下普通应用程序对核心态功能的调用示意8/28/20229获取API函数地址Win32程序一般运行在Ring 3级,处于保护模式Win32下的系统功能调用,不是通过中断实现,而是通过调用动态连接库中的API函数实现Win32 PE病毒和普通Win32 PE程序一样需要调用API函数实现某些功能,但是对于Win32 PE病毒来说,它只有代码节,并不存在引入函数节病毒就无法象普通PE程序那样直接调用相关API函
5、数,而应该先找出这些API函数在相应DLL中的地址8/28/202210搜索感染目标文件搜索文件是病毒寻找目标文件的非常重要的功能在Win32汇编中,通常采用如下几个API函数进行文件搜索FindFirstFile根据文件名查找文件FindNextFile根据调用FindFirstFile函数时指定的一个文件名查找下一个文件FindClose用来关闭由FindFirstFile函数创建的一个搜索句柄8/28/202211病毒感染技术感染是一个病毒赖以长期存活的根本,所以要大规模的搜索,感染感染再感染!FindFirst,FindClose,除非你hook了某些系统API(参考Win32.Kri
6、z),否则这三个API是Win32病毒必备的、搜索再搜索,感染再感染。目前Win32病毒分为两个主流,一类最常见,覆盖host程序最后一个section的relocation,或者干脆直接缀在最后一个section后面,把它扩大一些。这种技术很简单,例子可参见Funlove,有着复杂的polymorphism引擎,体积比较大的病毒一般也都用这种技术。第二类就是像Elkern那样把自己尽可能地插进host体内,尽可能地插,对于VC编译出来的PE文件,它的是4K,所以section之间的空隙加起来很可能有4,5K,足可以容下一个Win32病毒。这种技术比较麻烦一些,调试也复杂,主要流行的有Elke
7、rn。8/28/202212蠕虫传染原理8/28/202213蠕虫与漏洞网络蠕虫最大特点是利用各种漏洞进行自动传播根据网络蠕虫所利用漏洞的不同,又可以将其细分邮件蠕虫主要是利用MIME(Multipurpose Internet Mail Extension Protocol,多用途的网际邮件扩充协议)漏洞MIME描述漏洞8/28/202214蠕虫与漏洞网页蠕虫(木马)主要是利用IFrame漏洞和MIME漏洞网页蠕虫可以分为两种用一个IFrame插入一个Mail框架,同样利用MIME漏洞执行蠕虫,这是直接沿用邮件蠕虫的方法用IFrame漏洞和浏览器下载文件的漏洞来运作的,首先由一个包含特殊代码
8、的页面去下载放在另一个网站的病毒文件,然后运行它,完成蠕虫传播系统漏洞蠕虫利用RPC溢出漏洞的冲击波、冲击波杀手利用LSASS溢出漏洞的震荡波、震荡波杀手系统漏洞蠕虫一般具备一个小型的溢出系统,它随机产生IP并尝试溢出,然后将自身复制过去它们往往造成被感染系统性能速度迅速降低,甚至系统崩溃,属于最不受欢迎的一类蠕虫8/28/202215蠕虫的工作方式与扫描策略蠕虫的工作方式一般是“扫描攻击复制”8/28/202216蠕虫的工作方式与扫描策略蠕虫的扫描策略现在流行的蠕虫采用的传播技术目标,一般是尽快地传播到尽量多的计算机中扫描模块采用的扫描策略是:随机选取某一段IP地址,然后对这一地址段上的主机
9、进行扫描没有优化的扫描程序可能会不断重复上面这一过程,大量蠕虫程序的扫描引起严重的网络拥塞对扫描策略的改进在IP地址段的选择上,可以主要针对当前主机所在的网段进行扫描,对外网段则随机选择几个小的IP地址段进行扫描对扫描次数进行限制,只进行几次扫描把扫描分散在不同的时间段进行8/28/202217蠕虫的工作方式与扫描策略蠕虫常用的扫描策略选择性随机扫描(包括本地优先扫描)可路由地址扫描(Routable Scan)地址分组扫描(Divide-Conquer Scan)组合扫描(Hybrid Scan)极端扫描(Extreme Scan)8/28/202218感染的主机数与感染强度示意图8/28/
10、202219木马的传染方式8/28/202220特洛伊木马的定义特洛伊木马(Trojan Horse),简称木马,是一种恶意程序,是一种基于远程控制的黑客工具,一旦侵入用户的计算机,就悄悄地在宿主计算机上运行,在用户毫无察觉的情况下,让攻击者获得远程访问和控制系统的权限,进而在用户的计算机中修改文件、修改注册表、控制鼠标、监视/控制键盘,或窃取用户信息古希腊特洛伊之战中利用木马攻陷特洛伊城;现代网络攻击者利用木马,采用伪装、欺骗(哄骗,Spoofing)等手段进入被攻击的计算机系统中,窃取信息,实施远程监控8/28/202221特洛伊木马的定义木马与病毒一般情况下,病毒是依据其能够进行自我复制
11、即传染性的特点而定义的特洛伊木马主要是根据它的有效载体,或者是其功能来定义的,更多情况下是根据其意图来定义的木马一般不进行自我复制,但具有寄生性,如捆绑在合法程序中得到安装、启动木马的权限,DLL木马甚至采用动态嵌入技术寄生在合法程序的进程中木马一般不具有普通病毒所具有的自我繁殖、主动感染传播等特性,但我们习惯上将其纳入广义病毒,也就是说,木马也是广义病毒的一个子类木马的最终意图是窃取信息、实施远程监控木马与合法远程控制软件(如pcAnyWhere)的主要区别在于是否具有隐蔽性、是否具有非授权性8/28/202222特洛伊木马的结构木马系统软件一般由木马配置程序、控制程序和木马程序(服务器程序
12、)三部分组成8/28/202223特洛伊木马的基本原理运用木马实施网络入侵的基本过程8/28/202224特洛伊木马的基本原理用netstat查看木马打开的端口8/28/202225特洛伊木马的基本原理木马控制端与服务端连接的建立控制端要与服务端建立连接必须知道服务端的木马端口和IP地址由于木马端口是事先设定的,为已知项,所以最重要的是如何获得服务端的IP地址获得服务端的IP地址的方法主要有两种:信息反馈和IP扫描8/28/202226特洛伊木马的基本原理木马控制端与服务端连接的建立8/28/202227特洛伊木马的基本原理木马通道与远程控制木马连接建立后,控制端端口和服务端木马端口之间将会出
13、现一条通道控制端上的控制端程序可藉这条通道与服务端上的木马程序取得联系,并通过木马程序对服务端进行远程控制,实现的远程控制就如同本地操作8/28/202228特洛伊木马的基本原理木马的基本原理特洛伊木马包括客户端和服务器端两个部分,也就是说,木马其实是一个服务器-客户端程序攻击者通常利用一种称为绑定程序(exe-binder)的工具将木马服务器绑定到某个合法软件上,诱使用户运行合法软件。只要用户运行该软件,特洛伊木马的服务器就在用户毫无察觉的情况下完成了安装过程攻击者要利用客户端远程监视、控制服务器,必需先建立木马连接;而建立木马连接,必需先知道网络中哪一台计算机中了木马获取到木马服务器的信息
14、之后,即可建立木马服务器和客户端程序之间的联系通道,攻击者就可以利用客户端程序向服务器程序发送命令,达到操控用户计算机的目的8/28/202229特洛伊木马的传播方式木马常用的传播方式,有以下几种:以邮件附件的形式传播控制端将木马伪装之后添加到附件中,发送给收件人通过OICQ、QQ等聊天工具软件传播在进行聊天时,利用文件传送功能发送伪装过的木马程序给对方通过提供软件下载的网站(Web/)传播木马程序一般非常小,只有是几K到几十K,如果把木马捆绑到其它正常文件上,用户是很难发现的,所以,有一些网站被人利用,提供的下载软件往往捆绑了木马文件,在用户执行这些下载的文件的同时,也运行了木马通过一般的病
15、毒和蠕虫传播通过带木马的磁盘和光盘进行传播8/28/202230特洛伊木马技术的发展木马的发展及成熟,大致也经历了两个阶段Unix阶段Windows阶段木马技术发展至今,已经经历了4代第一代木马只是进行简单的密码窃取、发送等,没有什么特别之处第二代木马在密码窃取、发送等技术上有了很大的进步,冰河可以说是国内木马的典型代表之一第三代木马在数据传输技术上,又做了不小的改进,出现了ICMP等类型的木马,利用畸形报文传递数据,增加了查杀的难度第四代木马在进程隐藏方面,做了很大的改动,采用了内核插入式的嵌入方式,利用远程插入线程技术,嵌入DLL线程;或者挂接PSAPI(Process Status AP
16、I),实现木马程序的隐藏8/28/202231驻留在内存为了生存,病毒要尽可能长时间地驻留在内存中,而不是host程序一结束就完蛋了。有三种种方法,一是象Funlove那样在系统目录里释放一个文件,并修改注册表或者建立一个系统服务。这种方式很普通,也很普遍,大多数病毒包括蠕虫都这么干。另一种方式则是感染所有的已运行进程。在Win2K下很容易实现,CreateRemoteThread,但要想在所有Win32平台下实现,则要比较高的技巧。工作在ring 0病毒,内核模式病毒。8/28/202232内核模式病毒WindowsNT/2K环境下第一个以内核模式驱动程序运行,并驻留内存的寄生型病毒是Inf
17、is.Infis作为内核模式驱动程序驻留内存,并且挂钩文件操作,它能够在文件打开时立即感染该文件。安装程序把病毒拷贝到系统内存中,并在系统注册表中添加该病毒的注册项。该病毒把自己的可执行代码连同自己的PE文件头一起追加到目标文件的末尾,然后从自己代码中提取出一个名为INF.SYS的独立驱动程序,把这个程序保存在%SystemRoot% system32 drivers目录下,修改注册表,保证下一次系统启动时病毒也能够进入运行状态。8/28/202233检测方法检查系统驱动程序列表中已经装入的驱动程序的名称,如果在驱动程序列表中发现了病毒驱动程序,说明基本上感染了病毒病毒可能使用隐藏技术避免在驱
18、动程序列表中出现,需要通过计算机管理器中的驱动程序列表。8/28/202234病毒的隐藏技术隐藏是病毒的天性,在业界对病毒的定义里,“隐蔽性”就是病毒的一个最基本特征,任何病毒都希望在被感染的计算机中隐藏起来不被发现,因为病毒都只有在不被发现的情况下,才能实施其破坏行为。为了达到这个目的,许多病毒使用了各种不同的技术来躲避反病毒软件的检验,这样就产生了各种各样令普通用户头痛的病毒隐藏形式。 隐藏窗口 & 隐藏进程 & 隐藏文件 桌面看不到任务管理器中不可见 文件中看不到8/28/202235进程隐藏Windows 9x中的任务管理器是不会显示服务类进程,结果就被病毒钻了空子,病毒将自身注册为“
19、服务进程”,可以躲避用户的监视。Windows2000/xp/2003等操作系统上已经无效了,直接使用系统自带的任务管理器便能发现和迅速终止进程运行 。8/28/202236通过DLL实现进程隐藏Windows系统的另一种“可执行文件”-DLL,DLL文件没有程序逻辑,是由多个功能函数构成,它并不能独立运行,一般都是由进程加载并调用的。 运行DLL文件最简单的方法是利用Rundll32.exe,Rundll/Rundll32是Windows自带的动态链接库工具,可以用来在命令行下执行动态链接库中的某个函数,Rundll32的使用方法如下:Rundll32 Dll FuncName例如我们编写了
20、一个MyDll.dll,这个动态链接库中定义了一个MyFunc的函数,那么,我们通过Rundll32.exe MyDll.dll MyFunc就可以执行MyFunc函数的功能。假设我们在MyFunc函数中实现了病毒的功能,那么我们不就可以通过Rundll32来运行这个病毒了么?在系统管理员看来,进程列表中增加的是Rundll32.exe而并不是病毒文件,这样也算是病毒的一种简易欺骗和自我保护方法 8/28/202237特洛伊DLL 特洛伊DLL的工作原理是使用木马DLL替换常用的DLL文件,通过函数转发器将正常的调用转发给原DLL,截获并处理特定的消息。例如,我们知道WINDOWS的Socke
21、t1.x的函数都是存放在wsock32.dll中的,那么我们自己写一个wsock32.dll文件,替换掉原先的wsock32.dll(将原先的DLL文件重命名为wsockold.dll)我们的wsock32.dll只做两件事,一是如果遇到不认识的调用,就直接转发给wsockold.dll(使用函数转发器forward);二是遇到特殊的请求(事先约定的)就解码并处理。这样理论上只要木马编写者通过SOCKET远程输入一定的暗号,就可以控制wsock32.dll(木马DLL)做任何操作 8/28/202238动态嵌入技术 DLL木马的最高境界是动态嵌入技术,动态嵌入技术指的是将自己的代码嵌入正在运行
22、的进程中的技术。理论上来说,在Windows中的每个进程都有自己的私有内存空间,别的进程是不允许对这个私有空间进行操作的,但是实际上,我们仍然可以利用种种方法进入并操作进程的私有内存存在多种动态嵌入技术中:窗口Hook、挂接API、远程线程 8/28/202239远程线程技术远程线程技术指的是通过在另一个进程中创建远程线程的方法进入那个进程的内存地址空间。在进程中,可以通过CreateThread函数创建线程,被创建的新线程与主线程(就是进程启动时被同时自动建立的那个线程)共享地址空间以及其他的资源通过CreateRemoteThread也同样可以在另一个进程内创建新线程,被创建的远程线程同样
23、可以共享远程进程的地址空间,所以,实际上,我们通过一个远程线程,进入了远程进程的内存地址空间,也就拥有了那个远程进程相当的权限。这种病毒难以处理。 8/28/202240文件隐藏早期,把病毒文件属性设为隐藏,修改文件不显示隐藏文件。高级阶段通过HOOK文件读取函数,自动隐藏病毒文件。公开的主流检测隐藏文件主要有两种方法:第一种是文件系统层的检测,属于这一类的有Ice sword,darkspy,gmer等。第二种便是磁盘级别的低级检测(Disk Low-Level Scanning),属于这一类的ark也很多,典型代表为rootkit unhooker,(is的插件),rootkit reve
24、aler,blacklight等。8/28/202241加壳木马再狡猾,可是一旦被杀毒软件定义了特征码,在运行前就被拦截了。要躲过杀毒软件的追杀,很多木马就被加了壳,相当于给木马穿了件衣服,这样杀毒软件就认不出来了,但有部分杀毒软件会尝试对常用壳进行脱壳,然后再查杀。除了被动的隐藏外,最近还发现了能够主动和杀毒软件对着干的壳,木马在加了这种壳之后,一旦运行,则外壳先得到程序控制权,由其通过各种手段对系统中安装的杀毒软件进行破坏,最后在确认安全(杀毒软件的保护已被瓦解)后由壳释放包裹在自己体内的木马体并执行之。8/28/202242AV 终结者Autorun.inf 一个暗藏杀机的文本格式,以至于有些杀软都加入病毒库,传播U盘病毒的罪魁祸首,很多情况下我们把它视为敌人,如果配合系统默认的自动播放功能,那激活病毒的机率将会是100%。线程插入全名叫“远程创建线程”。这样的病毒通常是Dll格式的文件,可能依附系统服务EXE载体Rundll32.exe注册表插入进程。那么除非用第三方工具,否则无法发现宿主内的dll病毒,因为进程管理器里毫无异常。这种技术在木马界应用非常广泛,具有一定的隐蔽性。我们可以下载第三方工具,可以查看进程模块的,推荐用冰刃。主要检测Explorer进程模
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 漳州建筑石膏施工方案
- 天安门开放时间管理
- 2024日照商业地产租赁合同(含品牌推广)2篇
- 平移和旋转资料
- 平行线的判定教学设计
- 租赁保理合同范本
- 平行四边形定义及性质教学设计
- 平行四边形;矩形-菱形-正方形的判定
- 团队培训活跃气氛
- 2024智能家居产品研发与技术服务合同
- 壮族文化的灵魂广西花山岩画
- 概算实施方案
- 单片机英文资料+英文文献
- CF5061GXJYNKR管线加油车使用说明书-
- (51)-春季助长小儿推拿探秘
- 中国古典文献学(全套)
- 内燃机车常见故障分析及处理1733
- 谈心谈话记录表 (空白表)
- GB/T 39879-2021疑似毒品中鸦片五种成分检验气相色谱和气相色谱-质谱法
- Unit10单元基础知识点和语法点归纳 人教版英语九年级
- 自控原理课件1(英文版)
评论
0/150
提交评论