本文目录
- 计算机病毒的解析与防范
- 通常分析计算机病毒有哪些方法
- 如何分析病毒
- 关于病毒分析
- 如何手动分析恶意软件或病毒(主要是木马)
- 计算机病毒分析与防范大全的目录
- 电脑病毒怎么分析
- 计算机病毒检测技术主要分为哪几个方面
计算机病毒的解析与防范
防范计算机病毒的方法:
a、建立病毒防治的规章制度,严格管理。
b、建立病毒防治和应急体系。
c、进行计算机安全教育,提高安全防范意识。
d、对系统进行风险评估。
e、选择公安部认证的病毒防治产品。
f、正确配置,使用病毒防治产品。
g、正确配置系统,减少病毒侵害事件。
h、定期检查敏感文件。
i、适时进行安全评估,调整各种病毒防治策略。
j、建立病毒事故分析制度。
k、确保恢复,减少损失。
扩展资料:
计算机病毒发作后的表现:
(1)系统无法启动,数据丢失。计算机病毒破坏了硬盘的引导扇区后,就无法从硬盘启动计算机系统了。有些计算机病毒篡改了硬盘的关键内容(如硬盘分配表、根目录区等),使得原先保存在硬盘上的数据几乎完全丢失。
(2)部分文档丢失或者破坏。类似系统文件的丢失或者被破坏,有些计算机病毒在发作时会删除或破坏硬盘上的文档,造成数据的丢失。
(3)部分文档自动加密码。还有些计算机病毒利用加密算法,将加密密钥保存在计算机病毒程序体内或其他隐蔽的地方,而被感染的文件将被加密。
通常分析计算机病毒有哪些方法
通常分析计算机病毒有两种方法:一种就是对病毒的行为监控,通过行为监控的方法分析病毒,能够很容易得知病毒的文件、注册表、进程等方面的行为以用其对系统的影响,对于系统恢复很有帮助,但是这种方法无法得知病毒的真正目的和功能。相对而言方法比较简单直观,也是分析病毒的首选方法。另一种是计算机病毒代码分析。因为病毒的所有功能都是通过代码完成的,只要我们能够拿到病毒本本文件,就可以对其进行分析。如脚本病毒可以直接分析其代码,WIN32病毒可以反汇编出病毒的汇编代码,代码经过加密的可以解密出它的所有代码,然后通过代码分析掌握病毒的行为和功能。
如何分析病毒
特征码定位 还有内存定位 脱壳 还有启发式杀毒(一些软件会加壳来压缩数据,隐藏程序源代码,防止破解)。神马的。 最多的还是特征码,所以你在杀毒时,硬盘灯在狂闪。不过特征码很容易修改,用mycll神马的。另外杀毒还有系统监控(防止系统文件破坏和病毒运行) 杀毒库更新(查杀新病毒) 系统文件修复 自我保护(没这功能的话,病毒一结束进程,神马杀毒都是浮云。。。。) 还有云杀毒(云引擎) 像中国的老牌杀毒瑞星就是内存定位挺好的。
关于病毒分析
分析病毒的话那应该要用过很多杀软和其它安全工具吧,语言的话c++咯。这里有篇讲杀软引擎的,希望对你有帮助!(文章太长了,转不完)|转贴|杀毒软件的引擎- - 郑重声明:本贴原作者为走走看看为防止误解,特作如下声明:1.鉴于个人能力有限,文中大量借用了业已在病毒界获得公认的两篇文章:先进杀毒引擎的设计原理 ,流行杀毒软件的引擎设计 。2.为便于理解,文中很多词语未使用严格的工业研发用语。比如杀毒引擎的前端正式名称为‘基于初步预扫描的(文件)对象汇入工程部分“。很多工业用语听起来很拗口,自己变通了一下,感兴趣者可查阅L.Felly:系统的安全与防护 中的有关章节。3.我认为现今在全球流行的几款杀毒软件在技术上并不存在谁的技术远远领先的问题,没有必要过与赞扬那一款杀毒软件,自己用着高兴就好。文中对某些杀软的介绍比较详细,主要是因为它的资料较多,有东西可写,没有其余的意思。4.到现在为止,我已经用过几乎所有的杀毒软件(论坛上提到的)5. 我个人非常不喜欢设计病毒,私下写过的几个纯粹是写着玩,大部分时候是MM生气的时候写个玩笑程序让她高兴用的6.很长时间不在专业病毒论坛上走动了。我认为如果因为喜欢程序设计看一下病毒的代码是可以的,当出于其他目的的时候,还是收手吧。7.鉴于个人能力原因,有一部分是MM写的,MM很漂亮,也很娇气,但对我基本上言听计从,必经一起走过了十几年了。原帖子中有一部分是错误的,已经由她修改过。8.文中有一部分内容来自一个朋友提供的杀毒软件公司的开发文档,我已经大幅改动过。9.本人是学生,且正在忙于考G,上网的时间并不怎么多,因此很多问题可能并不能及时作出解答,还望原谅。 10.我一直在使用的杀毒软件(其余的半路都卸了):SAV9.0,KV2004(两套系统)。在我看来杀毒软件就只是一款软件罢了,没必要大家为用什么争来争去,自己感觉好就行了,争论的时间还不如用来多陪陪女友呢。正文部分文章比较长,加之本人写作水平有限和某些技术文档需要核实,只能写一段发一段,还望大家原谅。有误之处,敬请指出,谢谢!(各段数值标出,每次均对该文件进行编辑.1.什么是杀毒软件引擎,与病毒库的关系?首先必须指出杀毒软件的引擎与其病毒库并没有什么直接的关系。杀毒引擎的任务和功能非常简单,就是对于给定的文件或者程序进程判断其是否是合法程序(对应于杀毒软件厂商自己定义的正常和非异常程序规范而言。正常的程序规范是指在程序所在系统平台上操所系统本身洗净有定义的或者业界已经公认的程序行为过程,比如操作系统正常运行就必须要求应用程序与系统核心进行进程响应并与交换相关数据。非异常程序活动是指可能存在非法程序操作结果但能够以较高的置信度确定其非非法程序活动规范的。一般情况下,相关文件的复制,移动,删除等都奔包括在该界定范围内)。我们知道病毒的最终目的有些是与合法活动很类似的,在这种情况下,要求软件厂商必须自己有一个行为规范界定规则,在一个给定的范围和置信度下,判断相关操作是否为合法。在这方面,各个厂商的界定是有区别的,一般而言非美国厂商界定是非常严格的,只有有很高的置信水平的程序行为,他们才判别为非病毒操作。记得前一阵论坛上有人给了四段简单的代码,很多杀毒软件将其判为病毒或有病毒性质的文件行为,实际上看那几段代码可以知道,其结果并不足以视之为病毒。美国厂商一般判断比较复杂,这主要由于美国市场上的杀毒软件引擎来源比较复杂,比如诺顿,有足够的技术资料确信它的杀毒软件引擎是自成体系的,而mcafee则存在一定的外界技术引进(收购所罗门)。用简单的话说,杀毒引擎就是一套判断特定程序行为是否为病毒程序(包括可疑的)的技术机制。一个完整的技术引擎遵守如下的行为过程: 1.非自身程序行为的程序行为捕获。包括来自于内存的程序运行,来自于给定文件的行为虚拟判断,来自于网络的动态的信息等等。一般情况下,我们称之为引擎前端。捕捉的方法非常多,除诺顿以外的杀毒软件采用的都是行为规范代码化的方法。诺顿由于与微软有这远远高于其它厂商合作关系,其实现过程比较独特,另有叙述。 2.基于引擎机制的规则判断。这个环节代表了杀毒引擎的质量水平,一个好的杀毒引擎应该能在这个环节发现很多或者称之为相当规模的病毒行为,存而避免进入下一个判断环节。传统的反病毒软件引擎使用的是基于特征码的静态扫描技术,即在文件中寻找特定十六进制串,如果找到,就可判定文件感染了某种病毒。但这种方法在当今病毒技术迅猛发展的形势下已经起不到很好的作用了。为了更好的发现病毒,相继开发了所谓的虚拟机,实时监控等相关技术。这个环节被叫做杀毒软件引擎工作的核心层。 3.引擎与病毒库的交互作用。这个过程往往被认为是收尾阶段,相对于前两个环节,这个阶段速度是非常慢的,杀毒引擎与要将非自身程序行为过程转化为杀毒软件自身可识别的行为标识符(包括静态代码等),然后与病毒库中所存贮的行为信息进行对应,并作出相应处理。当然必须承认,当前的杀毒软件对大量病毒的识别都是在这个阶段完成的。因此一个足够庞大的病毒库往往能够弥补杀毒软件引擎的不足之处。但是必须意识到,如果在核心层阶段就可以结束并清除病毒程序,那么杀毒软件的工作速度将会大幅提升。“很可惜的是,当前我们没有足够聪明的杀毒引擎来完成这个过程“,这就是为什么有病毒库的原因。 诺顿是微软最高级的安全方面核心合作厂商,因此它的杀毒软件在某些方面工作比较特殊。比如在杀毒软件的安装,使用和功能实现方面,大部分厂商采用的是中间件技术,在系统底层与非自身应用程序之间作为中间件存在并实现其功能;另有一些厂商使用的是应用程序或者嵌入技术,相对而言这种方法安全性较低;诺顿和 mcafee实现方式比较相似,诺顿采用了基于系统最底层的系统核心驱动,这种实现方式是最安全的或者说最高级的实现方式,当然这需要微软的系统源代码级的支持(要花许多money),业界公认,这是最稳定的实现方法,但从目前而言,只诺顿一家。Mcafee实现方式与诺顿很接近,一般称之为软件驱动。相当于在系统中存在一个虚拟“硬件“,来实现杀毒软件功能。这些实现方式关系着杀毒引擎对程序行为进行捕捉的方式。 我们使用的intel系的处理器有两个 ring层,对应两个层,微软的操作系统将系统中的所有行为分为如下几个层: 1.最底层:系统核心层,这个层的所有行为都由操作系统已经内置的指令来实现,所有外界因素(即使你是系统管理员)均不能影响该层的行为。诺顿的核心层既工作在这个层上。 2.硬件虚拟层,一般称之为HAL。为了实现硬件无关性,微软设计了该层。所有的外部工作硬件(相对于系统核心而言)都进入HAL,并被HAL处理为核心层可以相应的指令。我们所使用的硬件的驱动程序既工作在该层上。当外界硬件存在指令请求时,驱动程序作出相关处理后传给核心层。如果无与之对应的驱动相应,那么将按照默认硬件进行处理。好像安全模式下硬件的工作就被置于默认硬件模式。Mcafee被认为工作与该层上。 3.用户层(分为两个子层,不详细叙述,感兴趣的可以查阅《windows xp入门到精通》(有中文版),第二部分四节有叙述)。我们所知的大部分杀毒软件既工作与该层上。一个完整的程序行为请求是如下流程:位于3户层上的应用程序产生指令行为请求,被传递至2HAL进行处理,最后进入1最底层后进入CPU的指令处理循环,然后反向将软件可识别的处理结果经1-2-3再响应给应用程序。对于诺顿而言,其整个工作过程如下:3-2-1,完成;mcafee:3-2-1-1-2,完成:其余:3-2-1-1-2-3,完成;这个环节代表了杀毒软件引擎的前端行为规范的获得。只从这个过程而言,诺顿和mcafee是比较先进的。(具体的系统与CPU的ring()的对应,记不清楚了。 WinNT时代,微软的NT系统被设计有与四个ring()层相对应,RISC系列的处理器有四个ring。因此现在的大部分杀毒软件是不能工作与NT上的。具体的CISC和RISC的ring()数我记得可能有误,反正是一个2ring(),一个4ring().)。尽管比较先进的工作方式给诺顿和mcafee带来了较高的系统稳定性(HAL层很少出现问题,最底层出问题的几率接近于零),较快的响应速度(减少了环节),但同时也带来了一些问题:1.资源占用比较厉害。在mcafee上体现的不是很明显,在诺顿上表现非常明显。因为对于越底层的行为,硬件资源分配越多。最好资源的是什么?当然是操作系统。应为它最最底层。2.卸载问题。卸载底层的组件出问题的概率是相对比较高的,因此诺顿的卸载比较慢,偶尔还出问题。 有人质疑由于微软操作系统的不稳定性是否会拖累诺顿,想开发人士询问后得知,微软操作系统的内核层设计是非常优秀的,很多时候操作系统的不稳定性来源于以下几个方面: 1.应用程序设计不合理,许多程序设计者根本就未读过微软的32位程序设计指南,所设 计的程序并不严格符合微软规范。我们看到很多软件多年前设计还能运行于最新的xp平台,原因很简单:这个软件在设计时完全遵循了微软的程序设计规范。 2. 驱动程序的编写有问题,与HAL层有冲突。 因此认为微软的操作系统将会影响诺顿的稳定性是不合理的。注:刚才问了一下偶MM,她告诉我应该是CISC有四个ring(),RISC有两个ring().对应于系统的最低层而言,工作在ring0()上。应用程序工作在ring3()上 。偶的记忆力比较差,文中可能有部分技术错误,请原谅。 业界有人认为,先进杀毒软件的引擎设计已经日趋复杂,类如诺顿这一类的厂商其产品的引擎应该已经覆盖了操作系统的各个层级,以提高防护能力。在一篇文档中有程序员提出有足够的信息认为诺顿,mcafee,趋势的产品自己修改了标准的系统相关协议,比如TCP/IP等,以达到所谓的完整防护的目的。NOD32的一篇官方文档(说实话,我没有看到过)指出有必要全面更新(说白了就是修改)系统的诸多协议,以达到最快的速度和杀毒效果。要讨论怎样反病毒,就必须从病毒技术本身的讨论开始。正是所谓“知己知彼,百战不殆“。很难想象一个毫无病毒写作经验的人会成为杀毒高手。目前国内一些著名反病毒软件公司的研发队伍中不乏病毒写作高手。只不过他们将同样的技术用到了正道上,以‘毒’攻‘毒’。当今的病毒与DOS和WIN3.x时代下的从技术角度上看有很多不同。最大的转变是:引导区病毒减少了,而脚本型病毒开始泛滥。原因是在当今的操作系统下直接改写磁盘的引导区会有一定的难度(DOS则没有保护,允许调用INT13直接写盘),而且引导区的改动很容易被发现,并且微软在设计操作系统时加强了对引导区的程序行为管理,写一个完美的引导区病毒难度很大,所以很少有人再写了;而脚本病毒以其传播效率高且容易编写而深得病毒作者的青睐。但是最最落后的杀毒引擎也就是只基于静态代码的杀毒引擎都能干掉该种病毒(病毒库搞好就行)。 要讨论的技术主要来自于二进制外壳型病毒(感染文件的病毒),并且这些技术大都和操作系统底层机制或386以上CPU 的保护模式相关,值得研究。DOS下的外壳型病毒主要感染 16位的COM或EXE文件,由于DOS没有(文件和引导区)保护,它们能够轻松地进行驻留,减少可用内存(通过修改MCB链),修改系统代码,拦截系统服务或中断。而到了WIN9X和WINNT/2000时代,搞个运行其上的32位WINDOWS病毒变得难了点。由于存在页面保护,你不可能修改系统的代码页(如果你强到连操作系统代码都能改,偶无话可说)。由于I/O许可位图中的规定,你也不能进行直接端口访问(29A的一个美女[听说叫 Mercy.Chan]可以通过汇编方法直接访问端口的目的,但是没有见过给出事例代码。知道得给介绍一下她的程序代码)WINDOWS中你不可能象在 DOS中那样通过截获INT21H来拦截所有文件操作。总之,你以一个用户态权限运行,你的行为将受到操作系统严格的控制,不可能再象DOS下那样为所欲为了(在xp中,这种权限管理极为严格,大致分成了4-8个等级)。 WINDOWS下采用的可执行文件格式和DOS下的 EXE截然不同(普通程序采用PE格式,驱动程序采用LE),所以病毒的感染文件的难度增大了(PE和LE比较复杂,中间分了若干个节,如果感染错了,将导致文件不能继续执行)。当今病毒的新技术太多,随便介绍几个。1.系统核心态病毒 386及以上的CPU实现了4个特权级模式(WINDOWS只用到了其中两个),其中特权级0(Ring0)是留给操作系统代码,设备驱动程序代码使用的,它们工作于系统核心态;而特权极3(Ring3)则给普通的用户程序使用(我想知道一个问题,ring1,2是干什么的?),它们工作在用户态。运行于处理器核心态的代码不受任何的限制,可以自由地访问任何有效地址,进行直接端口访问。而运行于用户态的代码则要受到处理器的诸多检查,它们只能访问映射其地址空间的页表项中规定的在用户态下可访问页面的虚拟地址,且只能对任务状态段(TSS)中I/O许可位图(I/O Permission Bitmap)中规定的可访问端口进行直接访问(此时处理器状态和控制标志寄存器EFLAGS中的IOPL通常为0,指明当前可以进行直接I/O的最低特权级别是Ring0)。以上的讨论只限于保护模式操作系统,象DOS这种实模式操作系统则没有这些概念,其中的所有代码都可被看作运行在核心态。既然运行在核心态有如此之多的优势,那么病毒当然没有理由不想得到Ring0。处理器模式从Ring3向Ring0的切换发生在控制权转移时,有以下两种情况:访问调用门的长转移指令CALL,访问中断门或陷阱门的INT指令。具体的转移细节由于涉及复杂的保护检查和堆栈切换,不再赘述,请参阅相关资料。现代的操作系统通常使用中断门来提供系统服务,通过执行一条陷入指令来完成模式切换,在INTEL X86上这条指令是INT,如在WIN9X下是INT30(保护模式回调),在LINUX下是INT80,在WINNT/2000下是INT2E。用户模式的服务程序(如系统DLL)通过执行一个INTXX来请求系统服务,然后处理器模式将切换到核心态,工作于核心态的相应的系统代码将服务于此次请求并将结果传给用户程序。 在即将发布的xp-sp2中采用所谓增强的内存页面保护将会更为严格的控制用户权限,据说在访问内存地址时得到的将是经过系统映射处理的对应内存范围,在内存实地址与用户层之间,搞了一个类似于转换协议的东西,害的很多软件都不能运行,应为他们总是试图按照原有的HAL层访问规则进行工作。 2.驻留病毒 驻留病毒是指那些在内存中寻找合适的页面并将病毒自身拷贝到其中且在系统运行期间能够始终保持病毒代码的存在。驻留病毒比那些直接感染(Direct- action)型病毒更具隐蔽性,它通常要截获某些系统操作来达到感染传播的目的。进入了核心态的病毒可以利用系统服务来达到此目的,如CIH病毒通过调用一个由VMM导出的服务VMMCALL _PageAllocate在大于0xC0000000的地址上分配一块页面空间。而处于用户态的程序要想在程序退出后仍驻留代码的部分于内存中似乎是不可能的,因为无论用户程序分配何种内存都将作为进程占用资源的一部分,一旦进程结束,所占资源将立即被释放。所以我们要做的是分配一块进程退出后仍可保持的内存。病毒写作小组29A的成员GriYo 运用的一个技术很有创意:他通过CreateFileMappingA 和MapViewOfFile创建了一个区域对象并映射它的一个视口到自己的地址空间中去,并把病毒体搬到那里,由于文件映射所在的虚拟地址处于共享区域(能够被所有进程看到,即所有进程用于映射共享区内虚拟地址的页表项全都指向相同的物理页面),所以下一步他通过向Explorer.exe中注入一段代码(利用WriteProcessMemory来向其它进程的地址空间写入数据),而这段代码会从Explorer.exe的地址空间中再次申请打开这个文件映射。如此一来,即便病毒退出,但由于Explorer.exe还对映射页面保持引用,所以一份病毒体代码就一直保持在可以影响所有进程的内存页面中直至Explorer.exe退出(我直接试过该种方法,在xp下注意要写一个空循环语句,以免被踢出处理队列)。另外还可以通过修改系统动态连接模块(DLL)来进行驻留。WIN9X下系统DLL(如Kernel32.dll 映射至BFF70000)处于系统共享区域(2G-3G),如果在其代码段空隙中写入一小段病毒代码则可以影响其它所有进程。但Kernel32.dll 的代码段在用户态是只能读不能写的。所以必须先通过特殊手段修改其页保护属性;而在WINNT/2000/xp系统DLL所在页面被映射到进程的私有空间(如 Kernel32.dll 映射至77ED0000)中,并具有写时拷贝属性,即没有进程试图写入该页面时,所有进程共享这个页面;而当一个进程试图写入该页面时,系统的页面错误处理代码将收到处理器的异常,并检查到该异常并非访问违例,同时分配给引发异常的进程一个新页面,并拷贝原页面内容于其上且更新进程的页表以指向新分配的页。这种共享内存的优化给病毒的写作带来了一定的麻烦,病毒不能象在WIN9X下那样仅修改Kernel32.dll一处代码便可一劳永逸。它需要利用 WriteProcessMemory来向每个进程映射Kernel32.dll的地址写入病毒代码,这样每个进程都会得到病毒体的一个副本,这在病毒界被称为多进程驻留或每进程驻留(Muti-Process Residence or Per-Process Residence )。文中列举方法在xp-sp1下略作修改即可使用 ,大部分为在代码段内加入空循环 。在sp2下,很多时候报如下类型的错误不可访问的内存地址段.........。在原来的帖子中我援引了另一篇文档中的例子,但经MM告知那些挂钩-捆绑等方法在如今的设计中并不是很受欢迎,原因在于新的操作系统许多函数规则是不可预知的,也就是所谓的“黑箱“设计使得设计人员更加偏爱系统级别的线程捆绑或者更加直接的接管权限控制的方法,采用最复杂的线程捆绑技术甚至可以使杀毒软件和防火墙得不到足够的信息来区分一个程序是否合法。更高级别的抢夺权限控制甚至可以结束所有杀毒软件的进程,包括卡巴斯基所采用的受保护的内存线程技术。尽管微软隐藏了很多系统函数,但是经过很多高手的努力,许多隐藏的系统函数已经被找出,并且微软也有意识的减少隐藏函数的数量。在前段时间网上泄漏的2000的部分代码中,其中关于磁盘文件读写的部分(大小为700M的那个压缩包里标号为115BH的那个文件其中的第三节子代码)其中有很多进程是微软的开发文档中是没有给出介绍的,不知道以后会不会有人利用这些东西写病毒。对病毒稍微有些常识的人都知道,普通病毒是通过将自身附加到宿主尾部(如此一来,宿主的大小就会增加),并修改程序入口点来使病毒得到击活。但现在不少病毒通过使用特殊的感染技巧能够使宿主大小及宿主文件头上的入口点保持不变。附加了病毒代码却使被感染文件大小不变听起来让人不可思议,其实它是利用了PE文件格式的特点:PE文件的每个节之间留有按簇大小对齐后的空洞,病毒体如果足够小则可以将自身分成几份并分别插入到每个节最后的空隙中,这样就不必额外增加一个节,因而文件大小保持不变。著名的CIH病毒正是运用这一技术的典型范例(它的大小只有1K左右)。病毒在不修改文件头入口点的前提下要想获得控制权并非易事:入口点不变意味着程序是从原程序的入口代码处开始执行的,病毒必须要将原程序代码中的一处修改为导向病毒入口的跳转指令。原理就是这样,但其中还存在很多可讨论的地方,如在原程序代码的何处插入这条跳转指令。一些查毒工具扫描可执行文件头部的入口点域,如果发现它指向的地方不正常,即不在代码节而在资源节或重定位节中,则有理由怀疑文件感染了某种病毒。所以刚才讨论那种病毒界称之为EPO(入口点模糊)的技术可以很好的对付这样的扫描,同时它还是反虚拟执行的重要手段。 另外值得一提的是现在不少病毒已经支持对压缩文件的感染。如Win32.crypto病毒就可以感染ZIP,ARJ,RAR,ACE,CAB 等诸多类型的压缩文件。这些病毒的代码中含有对特定压缩文件类型解压并压缩的代码段,可以先把压缩文件中的内容解压出来,然后对合适的文件进行感染,最后再将感染后文件压缩回去并同时修改压缩文件头部的校验和。目前不少反病毒软件都支持查多种格式的压缩文件,但对有些染毒的压缩文件无法杀除。原因我想可能是怕由于某种缘故,如解压或压缩有误,校验和计算不对等,使得清除后压缩文件格式被破坏。病毒却不用对用户的文件损坏负责,所以不存在这种担心。个人看来,目前的杀毒软件在对待加壳病毒的时候表现比较差的为瑞星,怀疑瑞星的杀毒引擎对加壳的东西放映不灵敏,因此瑞星自己加壳了很多病毒放到病毒库里,我曾使用一些很少用的加壳方式对某些普通病毒加壳,结果瑞星没查出来,有待改进。以上关于病毒的相关文字均来源于 某病毒论坛的文章 ,我个人作了少量修改 。再往下为引擎部分的实现 。杀毒引擎目前主流有两种实现方式:1.虚拟机技术 2.实时监控技术 3.智能码标识技术4.行为拦截技术 3.4.为最近两年搞出来的技术。3的目的是提高杀毒速度并且预防未知病毒,但就现实而言,除了东方卫士试验了一下(并且不成功),其余厂商未开发完全基于该技术的引擎,诺顿的开发人员认为:“没有足够的技术手段来实现文中所提出的杀毒理念(翻译的可能有不准确之处。‘文中’是指智能码标示技术的理论基础:IBM :Another way to the end (实现目的的另一种方式),在该文中提出了基于预定规则的智能杀毒技术)“。行为拦截技术(或者别的什么智能杀毒技术)也是一种预防未知病毒的方法,与虚拟机技术相似,通过对程序行为的分析来判断其是否为病毒。 对于未知病毒的判断实际上代表着杀毒软件厂商在引擎研究方面的最高能力。业界公认,防止未知病毒是“代表研究水平的“。平心而论,非美国厂商在这方面能力较差。业界对于防止未知病毒能力是按照如下方法衡量的:以评测当日的杀毒软件最新版本为该厂商的供测试版本,未知病毒由如下而来: 1.病毒作者提供。有些病毒作者在将自己的病毒发布以前总爱送给一些业界的安全杂志供其评测(最佩服这种人)2.大部分真正的业界安全杂志都有自己的研究实验室,他们自己的研究人员会根据最新的趋势和技术手段及工具写一些病毒。一般情况下,这些病毒是不会流到网上去的。3.假病毒。一些很类似于病毒行为的文件,程序等。测试的时候病毒库被置空(就是杀毒软件试图调用病毒库时采用程序方法向其返回一个空结果),在这种情况下进行测试。如果有人有兴趣,可以到病毒论坛上搞点新手写的小病毒(一般也就100-200行),弄上几十个拿自己的杀毒软件试一试,就会发现在平均状态下诺顿病毒库被置空时起对未知病毒判断能力还是挺强的,怎么着也到了x%,(x为两位数),很多杀毒软件结果挺惨的,尤其在对付比较复杂的蠕虫病毒时,某厂商的产品近乎全军覆没。下面对虚拟机和实时监控进行介绍。由于大家认为在文中加入程序代码看着很累,因此不再给出技术实现代码,其实根据原理你自己也可以写出来。 虚拟机,在反病毒界也被称为通用解密器,已经成为反病毒软件中最重要的部分之一虚拟机的概念和它与诸如Vmware和WIN9X下的VDM(DOS虚拟机,它用来在32位保护模式环境中运行16实模式代码)是有区别的。其实这些虚拟机的设计思想是有渊源可寻的,都来自于IBM的一批研究人员搞的一套东西。 Vmware作为原操作系统下的一个应用程序可以为运行于其上的目标操作系统创建出一部虚拟的机器,目标操作系统就象运行在单独一台真正机器上,丝毫察觉不到自己处于Vmware的控制之下。当在Vmware中按下电源键(Power On)时,窗口里出现了机器自检画面,接着是操作系统的载入,一切都和真的一样。而WIN9X为了让多个程序共享CPU和其它硬件资源决定使用VMs(所有Win32应用程序运行在一部系统虚拟机上;而每个16位DOS程序拥有一部DOS虚拟机),winxp是采用区域内存访问来实现16位程序支持的。 VM是一个完全由软件虚构出来的东西,以和真实电脑完全相同的方式来回应应用程序所提出的需求。从某种角度来看,你可以将一部标准的PC的结构视为一套 API。这套API的元素包括硬件I/O系统,和以中断为基础的BIOS和MS-DOS。WIN9X常常以它自己的软件来代理这些传统的API元素,以便能够对珍贵的硬件多重发讯。在VM上运行的应用程序认为自己独占整个机器,它们相信自己是从真正的键盘和鼠标获得输入,并从真正的屏幕上输出。稍被加一点限制,它们甚至可以认为自己完全拥有CPU和全部内存。 查毒的虚拟机并不是象某些人想象的:如Vmware一样为待查可执行程序创建一个虚拟的执行环境,提供它可能用到的一切元素,包括硬盘,端口等,让它在其上自由发挥,最后根据其行为来判定是否为病毒。当然这是个不错的构想,但考虑到其设计难度过大(需模拟元素过多且行为分析要借助人工智能理论),因而只能作为以后发展的方向。就目前可以知道的信息而言,卡巴斯基在这方面做得还可以,mcafee的新产品中加入了一种溢出保护技术,本质上而言也是一种所谓的虚拟技术。查毒的虚拟机是一个软件模拟的CPU,它可以象真正CPU一样取指,译码,执行,它可以模拟一段代码在真正CPU上运行得到的结果。给定一组机器码序列,虚拟机会自动从中取出第一条指令操作码部分,判断操作码类型和寻址方式以确定该指令长度,然后
如何手动分析恶意软件或病毒(主要是木马)
用相关工具查看端口开放情况,如果发现有危险端口开放可以关联到开放该端口的进程,那么该进程就是病毒的进程了,将该进程直接删除就行了。还有就是分析病毒这种东西不是一朝一夕就能做到的,建议楼主多看一些关于PC安全的书籍,实践。
计算机病毒分析与防范大全的目录
第一篇 认识计算机病毒第1章 什么是计算机病毒 21.1 计算机病毒的定义 2计算机病毒(Computer Virus)在《中华人民共和国计算机信息系统安全保护条例》中被明确定义,病毒指“编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。与医学上的“病毒”不同,计算机病毒不是天然存在的,是某些人利用计算机软件和硬件所固有的脆弱性编制的一组指令集或程序代码。它能通过某种途径潜伏在计算机的存储介质(或程序)里,当达到某种条件时即被激活,通过修改其他程序的方法将自己的精确拷贝或者可能演化的形式放入其他程序中,从而感染其他程序,对计算机资源进行破坏,所谓的病毒就是人为造成的,对其他用户的危害性很大!1.2 计算机病毒的特征 3 病毒因某个事件或数值的出现,诱使病毒实施感染或进行攻击的特性称为可触发性。为了隐蔽自己,病毒必须潜伏,少做动作。如果完全不动,一直潜伏的话,病毒既不能感染也不能进行破坏,便失去了杀伤力。病毒既要隐蔽又要维持杀伤力,它必须具有可触发性。病毒的触发机制就是用来控制感染和破坏动作的频率的。病毒具有预定的触发条件,这些条件可能是时间、日期、文件类型或某些特定数据等。病毒运行时,触发机制检查预定条件是否满足,如果满足,启动感染或破坏动作,使病毒进行感染或攻击;如果不满足,使病毒继续潜伏。1.3 计算机病毒的结构 81.3.1 计算机病毒的程序结构 81.3.2 计算机病毒的存储结构 81.4 计算机病毒的分类 101.4.1 根据寄生的数据存储方式划分 111.4.2 根据感染文件类型划分 121.4.3 根据病毒攻击的操作系统划分 121.4.4 根据病毒攻击的计算机类型划分 131.4.5 根据病毒的链接方式划分 131.4.6 根据病毒的破坏情况划分 141.4.7 根据传播途径划分 141.4.8 根据运行的连续性划分 151.4.9 根据激发机制划分 151.4.10 根据病毒自身变化性划分 151.4.11 根据与被感染对象的关系划分 151.4.12 其他几种具有代表性的病毒类型 161.5 计算机病毒的入侵方式 171.6 计算机病毒的命名 171.7 计算机病毒的生命周期 181.8 计算机病毒的传播 19第2章 计算机病毒发展史 202.1 计算机病毒的起源 202.2 计算机病毒的发展阶段 262.2.1 根据病毒的特点划分 262.2.2 根据病毒的技术性划分 282.3 计算机病毒大事记 302.4 计算机病毒的发展趋势 392.4.1 智能化 392.4.2 人性化 392.4.3 隐蔽化 392.4.4 多样化 392.4.5 专用病毒生成工具的出现 402.4.6 攻击反病毒软件 40第3章 计算机病毒的危害 413.1 计算机病毒编制者的目的 413.1.1 恶作剧(开玩笑) 413.1.2 报复心理 423.1.3 保护版权 433.1.4 娱乐需要 433.1.5 政治或军事目的 433.2 计算机病毒对计算机应用的影响 443.2.1 破坏数据 443.2.2 占用磁盘存储空间 443.2.3 抢占系统资源 453.2.4 影响计算机运行速度 453.2.5 计算机病毒错误与不可预见的危害 453.2.6 计算机病毒的兼容性对系统运行的影响 453.2.7 计算机病毒给用户造成严重的心理压力 463.3 计算机病毒发作症状 463.4 计算机故障与病毒现象的区分 473.4.1 计算机病毒的现象 483.4.2 与病毒现象类似的硬件故障 483.4.3 与病毒现象类似的软件故障 493.5 计算机病毒造成的经济损失 503.6 计算机病毒在军事上的影响 533.6.1 直面军事信息安全的挑战 533.6.2 高度依赖信息系统的美军青睐计算机病毒武器 553.6.3 防患未然要从细节做起 563.7 计算机病毒的预防 56第二篇 计算机病毒分析第4章 追根溯源——传统计算机病毒概述 604.1 早期的DOS病毒介绍 604.1.1 DOS简介 604.1.2 DOS病毒 604.2 Office杀手——宏病毒 614.2.1 什么是“宏” 614.2.2 宏病毒的定义 624.2.3 宏病毒的特点 634.2.4 宏病毒的发作现象及处理 634.2.5 典型的宏病毒——“七月杀手”病毒 654.2.6 防范宏病毒的安全建议 664.3 变化多端的文件型病毒 674.3.1 文件型病毒的复制机制 674.3.2 文件型病毒的分类 684.3.3 文件型病毒的发展史 684.3.4 文件型病毒简介 704.3.5 典型的文件型病毒——4.3.5 WIN95.CIH病毒解剖 734.3.6 新CIH病毒(WIN32.Yami)剖析 774.4 攻击磁盘扇区的引导型病毒 774.4.1 引导型病毒背景介绍 774.4.2 引导型病毒的主要特点和分类 804.4.3 引导型病毒的发作现象及处理 804.4.4 典型的引导型病毒——WYX病毒解析 834.4.5 防范引导区病毒的安全建议 86第5章 互联网时代的瘟疫——蠕虫病毒 875.1 背景介绍 875.1.1 蠕虫病毒的起源 885.1.2 蠕虫病毒与普通病毒的比较 895.1.3 蠕虫病毒造成的破坏 895.1.4 蠕虫病毒的特点和发展趋势 895.1.5 蠕虫病毒的传播 905.2 病毒的特点及危害 905.2.1 蠕虫病毒的特点 905.2.2 蠕虫病毒造成的社会危害 935.3 蠕虫病毒的发作现象及处理方法 945.3.1 尼姆达(Nimda)病毒 955.3.2 “魔波(Worm.Mocbot.a)”蠕虫病毒 985.3.3 SCO炸弹(Worm.Novarg) 1015.3.4 恶性蠕虫病毒“斯文(Worm.Swen)” 1015.4 典型蠕虫病毒解析 1035.4.1 “熊猫烧香”病毒解析 1035.4.2 Worm.Win32.WebDown.a 1125.5 防范蠕虫病毒的安全建议 1155.6 蠕虫病毒防范实验 1165.6.1 实验目的 1175.6.2 实验大纲 1175.6.3 实验工具软件 1175.6.4 实验内容 1175.6.5 实验步骤 120第6章 隐藏的危机——木马病毒分析 1216.1 木马病毒的背景介绍 1216.2 木马病毒的隐藏性 1226.3 典型的木马病毒 1276.3.1 灰鸽子(Backdoor.Huigezi) 1276.3.2 马吉斯蠕虫(Worm.Magistr.g) 1316.4 防范木马病毒的安全建议 133第7章 网页冲浪的暗流——网页脚本病毒分析 1357.1 脚本病毒的背景知识介绍 1357.1.1 VBScript概述 1357.1.2 “WSH”概述 1367.1.3 有关注册表的基本知识 1367.2 脚本病毒的特点 1377.3 脚本病毒的发作现象及处理 1387.4 典型脚本病毒——欢乐时光病毒解析 1437.4.1 HAPPYTIME病毒分析 1437.4.2 情人谷恶意网页分析 1467.5 防范脚本病毒的安全建议 1497.6 脚本及恶意网页实验 1517.6.1 实验目的 1517.6.2 实验内容 1517.6.3 实验用工具软件及操作系统 1517.6.4 实验背景知识及说明 1517.6.5 实验流程 1577.7 注册表维护实验 1597.7.1 实验目的 1597.7.2 实验内容 1597.7.3 实验工具软件 1597.7.4 实验步骤 1597.7.5 实验流程 168第8章 不要和陌生人说话——即时通信病毒分析 1708.1 即时通信病毒背景介绍 1708.1.1 什么是IM 1708.1.2 主流即时通信软件简介 1708.1.3 IM软件的基本工作原理 1728.2 即时通信病毒的特点及危害 1738.3 即时通信病毒发作现象及处理方法 1758.4 典型的即时通信病毒——“MSN性感鸡”解析 1788.5 防范即时通信病毒的安全建议 180第9章 无孔不入——操作系统漏洞攻击病毒分析 1819.1 漏洞攻击病毒背景介绍 1819.2 漏洞攻击病毒造成的危害 1829.2.1 冲击波病毒造成的危害 1829.2.2 振荡波病毒造成的危害 1839.2.3 严防微软MS05-040漏洞 1839.3 漏洞攻击病毒发作现象及处理 1849.3.1 红色代码发作现象 1849.3.2 冲击波病毒的发作现象 1859.3.3 振荡波病毒发作现象 1899.3.4 针对ARP协议安全漏洞的网络攻击 1919.4 防范漏洞攻击病毒的安全建议 196第10章 病毒发展的新阶段——移动通信病毒分析 19810.1 移动通信病毒背景介绍 19810.2 移动通信病毒的特点 20010.2.1 手机病毒的传播途径 20010.2.2 手机病毒的传播特点 20210.2.3 手机病毒的危害 20210.3 移动通信病毒的发作现象 20210.4 典型手机病毒分析 20410.4.1 手机病毒发展过程 20410.4.2 典型手机病毒Cabir 20510.5 防范移动通信病毒的安全建议 205第11章 防人之心不可无——网络钓鱼概述 20711.1 网络钓鱼背景介绍 20711.2 网络钓鱼的手段及危害 20811.2.1 利用电子邮件“钓鱼” 20811.2.2 利用木马程序“钓鱼” 20811.2.3 利用虚假网址“钓鱼” 20911.2.4 假冒知名网站钓鱼 20911.2.5 其他钓鱼方式 21011.3 防范网络钓鱼的安全建议 21111.3.1 金融机构采取的网上安全防范措施 21111.3.2 对于个人用户的安全建议 212第12章 强买强卖——恶意软件概述 21312.1 恶意软件背景介绍 21312.2 恶意软件的分类及其恶意行径 21412.3 恶意软件的危害 21512.4 防范恶意软件的安全建议 21612.4.1 IE插件管理专家Upiea 21612.4.2 超级兔子魔法设置 21712.4.3 瑞星卡卡安全助手 21712.4.4 微软反间谍软件(Giant Antispyware) 21812.5 典型恶意软件分析 21912.5.1 病毒感染过程 21912.5.2 清除方法 221第13章 其他操作系统病毒 22313.1 操作系统概述 22313.1.1 Linux操作系统 22313.1.2 苹果公司的MAC OS 22413.2 Linux与Unix病毒 22513.3 MAC OS系统病毒 22613.4 其他新型病毒简介 226第三篇 反病毒技术第14章 反病毒技术发展趋势 22814.1 反病毒保护措施日益全面和实时 22814.2 反病毒产品体系结构面临突破 22914.3 对未知病毒的防范能力日益增强 22914.4 企业级别、网关级别的产品越来越重要 23014.5 关注移动设备和无线产品的安全 230第15章 基础知识——常见文件格式 23115.1 病毒与文件格式 23115.1.1 常见的文件格式 23115.1.2 文档能够打开但无法正常显示时采取的措施 23915.1.3 文档打不开时采取的措施 24015.1.4 常见的文件后缀 24115.1.5 双扩展名——病毒邮件所带附件的特点之一 24715.2 PE文件格式 24815.2.1 PE文件格式一览 24815.2.2 检验PE文件的有效性 24915.2.3 File Header 25015.2.4 OptionalHeader 25115.2.5 Section Table 25215.2.6 Import Table(引入表) 25315.2.7 Export Table(引出表) 255第16章 搭建病毒分析实验室 25716.1 神奇的虚拟机 25716.1.1 硬件要求与运行环境 25716.1.2 VMware 25816.1.3 Virtual PC 26216.1.4 VMWare与Virtual PC的主要区别 26716.1.5 病毒“蜜罐” 26816.2 常用病毒分析软件 26916.2.1 系统监测工具 26916.2.2 文本编辑器 29016.2.3 综合软件 29716.3 静态分析技术 30616.3.1 基础知识 30616.3.2 W32Dasm简介 30716.3.3 IDA Pro 31516.3.4 破解教程 31816.4 动态分析技术 32016.4.1 SoftICE和TRW2000的安装与配置 32016.4.2 SoftICE与TRW2000操作入门 33016.4.3 常用的Win32 API函数 33616.4.4 破解实例 338第17章 计算机病毒惯用技术解密 34117.1 压缩与脱壳 34117.1.1 自动脱壳 34117.1.2 手动脱壳 35017.1.3 脱壳技巧 35317.2 邮件蠕虫 36117.2.1 邮件蠕虫的局限与解决方法 36117.2.2 垃圾邮件的关键技术 36417.3 追踪邮件来源 36617.3.1 邮件头分析 36617.3.2 邮件传输过程 36717.3.3 邮件头分析实例 36817.3.4 邮件伪造 37017.3.5 垃圾邮件分析 37017.3.6 总结 37217.4 病毒分析常用工具实验 37317.4.1 实验目的 37317.4.2 实验内容 37317.4.3 实验工具 37317.4.4 实验步骤 37417.4.5 实验流程 379第18章 捕捉计算机病毒 38118.1 计算机病毒的症状 38118.1.1 计算机病毒发作前的表现现象 38118.1.2 计算机病毒发作时的表现现象 38318.1.3 计算机病毒发作后的表现现象 38518.2 Windows的自启动方式 38618.2.1 自启动目录 38618.2.2 系统配置文件启动 38718.2.3 注册表启动 39018.2.4 其他启动方式 39218.2.5 自启动方式 39418.3 名词解释 39618.3.1 恶意软件 39618.3.2 恶意软件类别详述 39718.3.3 恶意软件的特征 39818.3.4 携带者对象 39818.3.5 传输机制 39918.3.6 负载 40018.3.7 触发机制 40218.3.8 防护机制 402第19章 病毒代码分析 40419.1 2003蠕虫王(SQL Server蠕虫) 40419.2 “振荡波”(Worm.Sasser)病毒代码 40619.3 “莫国防”病毒(win32.mgf)的源程序 41219.3.1 相关技术 41219.3.2 危害估计 41219.3.3 源代码分析 41219.4 木马下载器 43819.5 熊猫烧香的代码 460第20章 反病毒技术剖析 46720.1 病毒诊治技术剖析 46720.1.1 反病毒技术概述 46720.1.2 病毒诊断技术 46820.1.3 虚拟机在反病毒技术中的应用 47320.2 反病毒引擎技术剖析 47620.2.1 反病毒引擎在整个杀毒软件中的地位 47620.2.2 反病毒引擎的发展历程 47720.2.3 反病毒引擎的体系架构 47820.2.4 反病毒引擎的技术特征 47820.2.5 反病毒引擎的发展方向 481第四篇 反病毒产品及解决方案第21章 中国反病毒产业发展概述 484第22章 主流反病毒产品特点介绍 48922.1 瑞星杀毒软件 48922.2 江民杀毒软件 49122.3 金山毒霸 49222.4 诺顿杀毒软件 49322.5 卡巴斯基杀毒软件 493第23章 反病毒安全体系的建立 49523.1 建设安全体系遵循的原则 49523.1.1 法律 49523.1.2 思想意识 49723.1.3 技术手段 49723.1.4 管理手段 49823.1.5 技能手段 49923.2 如何选择反病毒产品 50023.2.1 使用方面 50023.2.2 服务方面 500附录A 计算机安全法规 501附录B 新病毒处理流程 512……
电脑病毒怎么分析
您好
1,如果您电脑中了病毒,只分析是分析不出来的,需要杀毒软件检测。
2,可以到腾讯电脑管家官网下载一个电脑管家。
3,使用电脑管家——杀毒——全盘查杀——扫描一下就知道了。
4,电脑管家拥有2大云杀毒引擎,可以通过智能云鉴定检测出电脑中的木马病毒,然后详细把检测出的病毒名称、信息标注出来的。
如果还有其他疑问和问题,欢迎再次来电脑管家企业平台进行提问,我们将尽全力为您解答疑难
计算机病毒检测技术主要分为哪几个方面
第一,智能广谱扫描技术。这一技术是为了躲避杀毒软件的查杀,通过对非连续性和转变性较大的病毒的所有字节进行分析,并且进行整合的一种高变种的病毒,被称为智能广谱扫描技术,这一技术是按照目前病毒的类型和形式的千变万化的情况研发而出的。由于传统的病毒在目前一些杀毒软件中都有一定的资料,检测技术也就相对比较简单,那么为了使用杀毒软件找出病毒,必须要对计算机病毒检测技术进行改革,智能广谱扫描技术能够对病毒的每一个字节进行分析,在发现程序代码中的字节出现相同或者是相近的两个病毒编码就可以确定其为病毒。这一技术的优点有准确性高,查找病毒速度快等优点,但是需要收集较多的信息,针对于新的病毒并没有杀毒功能,主要是针对已经存在的病毒进行杀毒。 第二,虚拟机技术。虚拟机技术也就是用软件先虚拟一套运转环境,让病毒在虚拟的环境中进行,以此来分析病毒的执行行为,并且由于加密的病毒在执行的时候需要解密,那么就可以在解密之后通过特征码来查杀病毒,在虚拟的环境中病毒的运转情况都被监控,那么在实际的环境中就可以有效的检测出计算机病毒。虚拟机技术主要针对的是一些新生代的木马、蠕虫病毒等,这一技术具有提前预知性,识别速度较快等优点。 第三,特征码过滤技术。在病毒样本中选择特征码,特征码在一般情况下选得较长,甚至可以达到数十字节,通过特征码对各个文件进行扫描,在发现这一特征码的时候就说明该文件感染了病毒。一般在选择特征码的时候可以根据病毒程序的长度将文件分成几份,这能够有效的避开采用单一特征码误报病毒现象的发生,此外在选择特征码的时候要避开选出的信息是通用信息,应该具有一定的特征,还要避开选取出来的信息都是零字节的,最后需要将选取出来的几段特征码,以及特征码的偏移量存入病毒库,再表示出病毒的名称也就可以。特征码过滤技术具有检测准确快速,误报警率低,可识别病毒名称等优点,但是它也存在着一些缺点,例如:速度慢,不能够对付隐蔽性的病毒等,主要是针对已知病毒进行分析和记忆贮存。 第四,启发扫描技术。由于新的病毒的不断出现,传统的特征码查杀病毒很难查出新的病毒,那么为了能够更好的检测病毒的相关代码,研发了启发式扫描技术,启发扫描技术不能够对一些模棱两可的病毒进行准确的分析,容易出现误报,但是这一技术能够在发现病毒的时候及时的提示用户停止运转程序。这一技术是通过分析指令出现的顺序,或者是特定的组合情况等一些常见的病毒来判断文件是否感染了病毒。由于病毒需要对程序进行感染破坏,那么在进行病毒感染的时候都会有一定的特征,可以通过扫描特定的行为或者是多种行为的组合来判断程序是否是病毒,我们可以根据病毒与其他程序的不同之处进行分析,来判断病毒是否存在,这一技术主要是针对熊猫烧香病毒等。 此外还有主动防御技术,虽然这一技术是近些年才出现的新技术,但是它同样能够对抗病毒的威胁,在目前依靠特征码技术已经很难适应反病毒的需求,而主动防御技术就是全程监视病毒的行为,一旦发现出现异常情况,就通知用户或者是直接将程序的进行结束。利用这些计算机反病毒技术能够有效的防止病毒入侵计算机,给用户一个较好的使用环境。这一技术会主动出现造成误差,并且难以检测出行为正常技术较高的病毒,它能够在病毒出现后及时的提醒用户,主要针对的是global.exe病毒等。