论文摘要
计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码。随着计算机在社会生活各个领域的广泛运用,计算机在人们生活中扮演着越来越重要的角色,改变了人们的生活和工作方式,提高了人们的生活品质。但是计算机病毒却威胁着计算机系统的安全,严重影响了人们的正常生活,因此,进行反病毒技术的研究具有重要意义。本文首先对反病毒技术研究的意义和国内外研究情况进行了介绍,阐述了目前反病毒领域内的研究成果。并在对Windows平台下计算机病毒的工作机理和相应的检测技术进行了深入分析和研究的基础上总结出计算机病毒的特征和分类,并对计算机病毒的结构进行了分析,提出了一个计算机病毒的攻击模型。随后对计算机病毒在计算机系统中的主要生存技术,包括隐藏技术、模糊变换技术和反跟踪技术等进行了研究,分析各种技术的优点、缺点以及应对方式。并且对当前各大反病毒软件产品所广泛采用的一些检测技术,包括特征值扫描技术、启发式分析技术、完整性验证技术和虚拟机技术等进行了分析和探索,分别总结出各种技术的特点和不足。接下来本文介绍了Windows系统调用机制,并在对Windows平台下计算机病毒的工作机理、病毒结构、Windows系统底层结构和Windows系统的系统调用(系统服务)机制深入分析研究的基础上,提出通过监控Windows底层系统调用的方法进行病毒检测的可能性,通过进一步深入的研究,设计并实现了一个通过HOOK系统服务函数的实时监控反病毒引擎,该引擎从系统服务层监控程序的运行,检测服务调用参数是否含有病毒特征,从而判断运行的程序是否为病毒程序,并对病毒程序立即阻断,防止其对系统进行破坏,从而加强系统的安全性。最后总结了本文所设计的基于系统调用的行为阻断反病毒引擎的特点和本人所做工作,指出了系统的不足之处、继续改进的方案以及下一步要做的工作和未来研究的方向。