您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 病毒木马的工作原理及其防范
计算机病毒、木马及防范技术目录病毒的起源和发展病毒的定义及分类VBS病毒的起源与发展及其危害蠕虫病毒缓冲区溢出与病毒攻击的原理木马程序计算机日常使用的安全建议一、病毒的起源和发展病毒的起源和发展1949年,计算机的先驱者冯.诺依曼在论文《复杂自动机组织论》中,提出了计算机程序能够在内存中自我复制;20世纪60年代初,美国贝尔实验室,三个年轻的程序员编写了一个名为“磁芯大战”的游戏,游戏中通过复制自身来摆脱对方的控制,这就是病毒的第一个雏形。20世纪70年代,美国作家雷恩在《P1的青春》一书中阐述了一种能够自我复制的计算机程序,并第一次称之为“计算机病毒”。1983年11月,在国际计算机安全学术研讨会上,美国计算机专家首次将病毒程序在VAX/750计算机上进行实验,世界上第一个计算机病毒就这样诞生在实验室中。20世纪80年代后期,巴基斯坦有两个以编软件为生的兄弟,为了打击盗版软件,设计出了一个名为“巴基斯坦智囊”的病毒,该病毒只传染软盘引导区,成为世界上流行的第一个真正的病毒。一、病毒的起源和发展计算机病毒是一组人为设计的程序,这种特殊的程序隐藏在计算机系统中,能够把自身或自身的一部分复制到其它程序上,给计算机系统造成一定损害甚至严重破坏。这种程序的活动方式与生物学上的病毒非常相似,所以被称为计算机病毒。计算机病毒的危害主要体现在以下方面:破坏文件分配表或目录区删除文件、修改或破坏文件中的数据大量复制自身,减少磁盘可用的存储空间修改或破坏系统信息非法格式化磁盘,非法加密或解密用户文件在磁盘上产生坏扇区降低系统运行速度病毒的起源和发展二、病毒的定义和分类计算机病毒是一个程序,一段可执行码,具有独特的复制能力。计算机病毒可以快速地传染,并很难解除。它们把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,病毒就随着文件一起被传播了。计算机病毒确切定义是能够通过某种途径潜伏在计算机存储介质(或程序)里,当达到某种条件时即被激活具有对计算机资源进行破坏的一组程序或指令的集合。病毒的定义和分类一、病毒的定义计算机病毒的特点1)可执行性当用户运行正常程序时,病毒伺机窃取到系统的控制权,得以抢先运行。2)破坏性无论何种病毒程序,一旦侵入系统都会对操作系统的运行造成不同程度的影响。3)传染性把自身复制到其他程序中的特性。是计算机病毒最重要的特征,是判断一段程序代码是否为计算机病毒的依据。病毒可以附着在其它程序上,通过磁盘、光盘、计算机网络等载体进行传染,被传染的计算机又成为病毒的生存的环境及新传染源。病毒的定义和分类4)潜伏性病毒发作是由触发条件来确定。为了防止用户察觉,计算机病毒会想方设法隐藏自身。通常粘附在正常程序之中或磁盘引导扇区中,或者磁盘上标为坏簇的扇区中,以及一些空闲概率较大的扇区中,即非法可存储性。5)针对性针对不同的操作系统、不同的应用软件。6)衍生性具有依附其他媒体而寄生的能力。在传播的过程中自动改变自己的形态,从而衍生出另一种不同于原版病毒的新病毒,这种新病毒称为病毒变种。7)抗反病毒软件性有变形能力的病毒能更好地在传播过程中隐蔽自己,使之不易被反病毒程序发现及清除,并具有反杀的能力。病毒的定义和分类病毒的传播方式:通过文件系统传播;通过电子邮件传播;通过局域网传播;通过即时通讯软件和点对点软件等常用工具传播;利用系统、应用软件的漏洞进行传播;利用系统配置缺陷传播,如弱口令、完全共享等;利用欺骗等社会工程的方法传播。病毒的定义和分类三、VBS病毒的起源与发展及其危害VBS病毒的起源与发展及其危害VBS病毒的运行基础是微软公司提供的脚本程序:WSH(WindowsScriptingHost)。WSH通用的中文译名为“Windows脚本宿主”。应该说,WSH的优点在于它使用户可以充分利用脚本来实现计算机工作的自动化。计算机病毒制造者也正是利用脚本语言来编制病毒,并利用WSH的支持功能,让这些隐藏着病毒的脚本在网络中传播。“ILoveYou”病毒便是一个典型的代表。一、VBS的运行基础当微软在推出WHS后不久,在Windows95操作系统中就发现了利用WHS的病毒,随后又出现了更为厉害的“HapplyTime(欢乐时光)”病毒,这种病毒不断的利用自身的复制功能,把自身复制到计算机内的每一个文件夹内。2000年5月4日在欧美地区爆发的“宏病毒”网络蠕虫病毒。由于通过电子邮件系统传播,宏病毒在短短几天内狂袭全球数以百万计的电脑。包括微软、Intel等公司在内的众多大型企业网络系统瘫痪,全球经济损失达数十亿美元。2004年爆发的“新欢乐时光”病毒也给全球经济造成了巨大损失。二、VBS病毒的发展和危害VBS病毒的起源与发展及其危害1、VBS脚本病毒如何感染、搜索文件VBS脚本病毒一般是直接通过自我复制来感染文件的,病毒中的绝大部分代码都可以直接附加在其他同类程序的中间,譬如新欢乐时光病毒可以将自己的代码附加在.htm文件的尾部,并在顶部加入一条调用病毒代码的语句,而爱虫病毒则是直接生成一个文件的副本,将病毒代码拷入其中,并以原文件名作为病毒文件名的前缀,vbs作为后缀。2、VBS脚本病毒通过网络传播的几种方式及代码分析通过E-mail附件传播通过局域网共享传播三、VBS病毒的发展和危害VBS病毒的起源与发展及其危害四、蠕虫病毒蠕虫病毒蠕虫病毒是一种常见的计算机病毒。它是利用网络进行复制和传播,传染途径是通过网络和电子邮件。蠕虫病毒是自包含的程序(或是一套程序),它能传播自身功能的拷贝或自身(蠕虫病毒)的某些部分到其他的计算机系统中(通常是经过网络连接)。蠕虫病毒的传染目标是互联网内的所有计算机.局域网条件下的共享文件夹,电子邮件email,网络中的恶意网页,大量存在着漏洞的服务器等都成为蠕虫传播的良好途径。网络的发展也使得蠕虫病毒可以在几个小时内蔓延全球!而且蠕虫的主动攻击性和突然爆发性会使得人们手足无策蠕虫与漏洞网络蠕虫最大特点是利用各种漏洞进行自动传播根据网络蠕虫所利用漏洞的不同,又可以将其细分邮件蠕虫主要是利用MIME(MultipurposeInternetMailExtensionProtocol,多用途的网际邮件扩充协议)漏洞包含蠕虫的邮件非法的MIME头部解出的蠕虫程序感染机器Content-Type:audio/x-wav;name=worm.exeContent-Transfer-Encoding:base64TVrozAAAAAYAAQACAHhNVHJrAAAIBQD/AwiT8ZBsgsyOng/AgdLT05BTUkgAP8BD5XSi8iBXorikeORvphZCgD/fwMAAEEA8ApBEEISQAB/AEH3AP9YBAQCGAgA/1kCAAAA/1EDB0Deg2r/UQMHUwCDJP9RAwdiH4Mu/1EDB3F9gy7/UQMHgRuDJP9RAweQ/IMu/1EDB6Eggy7/UQMHsYqDJP9RAwMIME描述漏洞蠕虫与漏洞◦网页蠕虫(木马)主要是利用IFrame漏洞和MIME漏洞网页蠕虫可以分为两种用一个IFrame插入一个Mail框架,同样利用MIME漏洞执行蠕虫,这是直接沿用邮件蠕虫的方法用IFrame漏洞和浏览器下载文件的漏洞来运作的,首先由一个包含特殊代码的页面去下载放在另一个网站的病毒文件,然后运行它,完成蠕虫传播◦系统漏洞蠕虫利用RPC溢出漏洞的冲击波、冲击波杀手利用LSASS溢出漏洞的震荡波、震荡波杀手系统漏洞蠕虫一般具备一个小型的溢出系统,它随机产生IP并尝试溢出,然后将自身复制过去它们往往造成被感染系统性能速度迅速降低,甚至系统崩溃,属于最不受欢迎的一类蠕虫蠕虫的工作方式与扫描策略蠕虫的工作方式一般是“扫描→攻击→复制”随机生成IP地址有些蠕虫给出确定的地址范围,还有一些给出倾向性策略,用于产生某个范围内的IP地址地址探测主机是否存在?漏洞是否存在?攻击、传染现场处理虚线框内的所有工作可以在一个数据包内完成是是否否蠕虫的工作方式与扫描策略蠕虫的扫描策略现在流行的蠕虫采用的传播技术目标,一般是尽快地传播到尽量多的计算机中扫描模块采用的扫描策略是:随机选取某一段IP地址,然后对这一地址段上的主机进行扫描没有优化的扫描程序可能会不断重复上面这一过程,大量蠕虫程序的扫描引起严重的网络拥塞对扫描策略的改进在IP地址段的选择上,可以主要针对当前主机所在的网段进行扫描,对外网段则随机选择几个小的IP地址段进行扫描对扫描次数进行限制,只进行几次扫描把扫描分散在不同的时间段进行蠕虫的工作方式与扫描策略蠕虫常用的扫描策略选择性随机扫描(包括本地优先扫描)可路由地址扫描(RoutableScan)地址分组扫描(Divide-ConquerScan)组合扫描(HybridScan)极端扫描(ExtremeScan)从传播模式进行安全防御对蠕虫在网络中产生的异常,有多种的的方法可以对未知的蠕虫进行检测,比较通用的方法是对流量异常的统计分析,主要包括对TCP连接异常的分析和ICMP数据异常分析的方法。从传播模式进行安全防御在蠕虫的扫描阶段,蠕虫会随机的或者伪随机的生成大量的IP地址进行扫描,探测漏洞主机。这些被扫描主机中会存在许多空的或者不可达的IP地址,从而在一段时间里,蠕虫主机会接收到大量的来自不同路由器的ICMP不可达数据包。流量分析系统通过对这些数据包进行检测和统计,在蠕虫的扫描阶段将其发现,然后对蠕虫主机进行隔离,对蠕虫其进行分析,进而采取防御措施。将ICMP不可达数据包进行收集、解析,并根据源和目的地址进行分类,如果一个IP在一定时间(T)内对超过一定数量(N)的其它主机的同一端口(P)进行了扫描,则产生一个发现蠕虫的报警(同时还会产生其它的一些报警)。用Sniffer进行蠕虫检测一般进行流量分析时,首先关注的是产生网络流量最大的那些计算机。利用Sniffer的HostTable功能,将所有计算机按照发出数据包的包数多少进行排序发包数量前列的IP地址为22.163.0.9的主机,其从网络收到的数据包数是0,但其向网络发出的数据包是445个;这对HTTP协议来说显然是不正常的,HTTP协议是基于TCP的协议,是有连接的,不可能是光发不收的,一般来说光发包不收包是种类似于广播的同样,我们可以发现,如下IP地址存在同样的问题首先我们对IP地址为22.163.0.9的主机产生的网络流量进行过滤蠕虫病毒流量分析发出的数据包的内容五、缓冲区溢出与病毒攻击的原理缓冲区溢出与病毒攻击的原理缓冲区溢出是指当计算机程序向缓冲区内填充的数据位数超过缓冲区本身的容量。溢出的数据覆盖在合法数据上。理想情况是,程序检查数据长度并且不允许输入超过缓冲区长度的字符串。大多数程序都会假设数据长度总是与所分配的存储空间相匹配,这就为缓冲区溢出埋下隐患。操作系统所使用的缓冲区又被称为堆栈,在各个操作进程之间,指令被临时存储在堆栈当中,堆栈也会出现缓冲区溢出。当一个超长的数据进入到缓冲区时,超出部分就会被写入其他缓冲区,其他缓冲区存放的可能是数据、下一条指令的指针、或者是其他程序的输出内容,这些内容都被覆盖或者破坏掉了。可见一小部分数据或者一套指令的溢出就可能导致一个程序或者操作系统崩溃。一、缓冲区溢出缓冲区溢出是由编程错误引起的。如果缓冲区被写满,而程序没有去检查缓冲区边界,也没有停止接收数据,这时缓冲区溢出就会发生。缓冲区溢出之所以泛滥,是由于开放源代码程序的本质决定的。某些编程语言对于缓冲区溢出是具有免疫力的,例如Perl能够自动调节字节排列的大小,Ada95能够检查和阻止缓冲区溢出。但是被广泛使用的C语言却没有建立检测机制。标准C语言具有许多复制和添加字符串的函数,这使得标准C语言很难进行边界检查。C++语言略微好一些,但是仍然存在缓冲区溢出情况。一般情况下,覆盖其他数据区的数据是没有意义的,最多造成应用程序错误,但是,如果输入的数据是经过“黑客”或者病毒精
本文标题:病毒木马的工作原理及其防范
链接地址:https://www.777doc.com/doc-6018269 .html