恶意代码及其检测技术研究.doc
文本预览下载声明
《科技信息检索与利用》 课程论文
题 目: 恶意代码及其检测技术研究
专业、班级:
学生姓名:
学 号:
指导教师:
分 数 :
年 月 日
恶意代码及其检测技术研究
摘要:互联网的开放性给人们带来了便利,也加快了恶意代码的传播,随着网络和计算机技术的快速发展,恶意代码的种类、传播速度、感染数量和影响范围都在逐渐增强,特别是人们可以直接从网站获得恶意代码源码或通过网络交流代码。本文将从恶意代码检测方法方面、蜜罐系统以及Android平台三个方面介绍恶意代码检测技术。
关键字:恶意代码;蜜罐系统;Android平台;检测技术。
1.恶意代码概述
1.1定义
恶意代码也可以称为Malware,目前已经有许多定义。例如Ed Skoudis将Malware定义为运行在计算机上,使系统按照攻击者的意愿执行任务的一组指令。微软“计算机病毒防护指南”中奖术语“恶意软件”用作一个集合名词,指代故意在计算机系统上执行恶意任务的病毒、蠕虫和特洛伊木马。随着网络和计算机技术的快速发展,恶意代码的传播速度也已超出人们想象,特别是人们可以直接从网站获得恶意代码源码或通过网络交流代码。很多编程爱好者把自己编写的恶意代码放在网上公开讨论,发布自己的研究成果,直接推动了恶意代码编写技术发展。所以目前网络上流行的恶意代码及其变种层出不穷,攻击特点多样化。
1.2类型
按照恶意代码的运行特点,可以将其分为两类:需要宿主的程序和独立运行的程序。前者实际上是程序片段,他们不能脱离某些特定的应用程序或系统环境而独立存在;而独立程序是完整的程序,操作系统能够调度和运行他们;按照恶意代码的传播特点,还可以把恶意程序分成不能自我复制和能够自我复制的两类。不能自我复制的是程序片段,当调用主程序完成特定功能时,就会激活它们;能够自我复制的可能是程序片段(如病毒),也可能是一个独立的程序(如蠕虫)。
2.分析与检测的方法
恶意代码与其检测是一个猫捉老鼠的游戏,单从检测的角度来说。反恶意代码的脚步总是落后于恶意代码的发展,是被动的.目前基于主机的恶意代码检测方法主要有反恶意代码软件、完整性校验法以及手动检测,基于网络的检测方法主要有基于神经网络”、基于模糊识别“等方法,本文主要讨论基于主机的检测。
2.1 恶意代码分析方法
2.1.1 静态分析方法
是指在不执行二进制程序的条件下进行分析,如反汇编分析,源代码分析,二进制统计分析,反编译等,属于逆向工程分析方法。
(1)静态反汇编分析,是指分析人员借助调试器来对而已代码样本进行反汇编出来的程序清单上根据汇编指令码和提示信息着手分析。
(2)静态源代码分析,在拥有二进制程序的源代码的前提下,通过分析源代码来理解程序的功能、流程、逻辑判定以及程序的企图等。
(3)反编译分析,是指经过优化的机器代码恢复到源代码形式,再对源代码进行程序执行流程的分析。
2.1.2 动态分析方法
是指恶意代码执行的情况下利用程序调试工具对恶意代码实施跟踪和观察,确定恶意代码的工作过程对静态分析结果进行验证。
(1)系统调用行为分析方法
正常行为分析常被应用于异常检测之中,是指对程序的正常行为轮廓进行分析和表示,为程序建立一个安全行为库,当被监测程序的实际行为与其安全行为库中的正常行为不一致或存在一定差异时,即认为该程序中有一个异常行为,存在潜在的恶意性。
恶意行为分析则常被误用检测所采用,是通过对恶意程序的危害行为或攻击行为进行分析,从中抽取程序的恶意行为特征,以此来表示程序的恶意性。
(2)启发式扫描技术
启发式扫描技术是为了弥补被广泛应用的特征码扫面技术的局限性而提出来的.其中启发式是指“自我发现能力或运用某种方式或方法去判定事物的知识和技能”。
2.2 恶意代码检测方法
2.2.1 基于主机的恶意代码检测
目前基于主机的恶意代码检测技术仍然被许多的反病毒软件、恶意代码查杀软件所采用。
(1)启发法
这种方法的思想是为病毒的特征设定一个阈值,扫描器分析文件时,当文件的总权值超出了设定值,就将其看作是恶意代码.这种方法主要的技术是要准确的定义类似病毒的特征,这依靠准确的模拟处理器。评定基于宏病毒的影响更是一个挑战,他们的结构和可能的执行流程比已经编译过的可执行文件更难预测。
(2)行为法
利用病毒的特有行为特征来监测病毒的方法,称为行为监测法.通过对病毒多年的
显示全部