主机恶意代码检测系统的设计与实现

主机恶意代码检测系统的设计与实现

论文摘要

主机恶意代码检测系统是运行在主机上,检测该计算机中是否存在恶意代码的智能系统,是维护计算机安全极为重要的安全软件。随着国家、社会对计算机的依赖程度日益增长,计算机安全问题就显得日益严峻起来。传统的恶意代码检测如反病毒厂商的杀毒产品,主要是基于特征码扫描的检测技术。特征码扫描检测技术需要预先从已知的恶意代码中提取出特征字节序列存入病毒库,之后再利用匹配算法进行检测。这种方法的明显缺点在于需要预建特征库,而特征库更新显然是滞后于恶意代码的,因此它对未知恶意代码的检测能力极弱,对加壳变形后的恶意代码处理能力也十分有限。本文致力于从恶意代码的行为上去识别检测,这是由于恶意代码定义的关键点就在于其行为目的的恶意性和结果的破坏性,因此检测的要点也就是如何识别行为的恶意性。本文主要的工作和贡献可归纳为:1、对恶意代码的工作原理进行深入分析,总结了各类恶意代码使用的核心技术,研究探寻目前恶意代码反检测的主要手段,包括应用层面和内核层面恶意代码的反检测技术实现,以及BIOS固件和CPU微代码植入技术的可行性。2、针对恶意代码的行为特点,从多处入手研究采用多种方法捕获检测恶意代码行为的方法。为恶意代码信息捕获模块设计实现了如下有效的技术方法:(1)利用用户态和核心态的多种钩挂方法截取程序行为,包括新的系统调用拦截方案、驱动间通讯拦截方案等;利用痕迹扫描技术发现恶意代码留下的包括钩挂代码、隐藏数据在内的多种行为痕迹。(2)设计实现在CPU硬件支持(单步执行功能支持和最后分支记录功能支持)的辅助下,动态记录程序控制流路径的方法。(3)针对恶意代码修改破坏内存中的操作系统组件来反检测、反清除的手段,创新性的提出利用虚拟化技术在操作系统中创造一个虚拟的、干净的系统环境,使易受恶意代码破坏的系统组件在另一个环境安全工作。该方案工作效果明显。(4)为了捕获一些难以截取或常受恶意代码干扰的行为,本文分析CPU硬件虚拟化支持的原理,并提出了基于CPU硬件虚拟化支持(AMD的SVM与Intel的VMX)的行为收集方案。3、提出一种基于隐马尔可夫模型(HMM)的操作系统环境模型,利用多种手段截获收集的行为数据作为模型观测值来计算被植入rootkit的可疑值,经实验表明对rootkit类恶意代码有较好的检测效果。同时对收集到的动态控制流路径数据,提出了首先建立调用层次树,再利用计算编辑距离判断相似度的方式检测隐藏性恶意代码,实验也取得了良好的结果。4、主持设计了基于专家系统的恶意代码检测模块,与项目组同学们共同实现了原型系统,模块充分利用了恶意代码信息捕获模块的数据输出。5、利用恶意代码信息捕获模块、异常检测算法模块、基于专家系统的恶意代码检测模块以及辅助的特征码扫描模块完整实现了一套主机恶意代码检测系统。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 研究背景
  • 1.1.1 恶意代码的危害
  • 1.1.2 恶意代码的概念
  • 1.1.3 恶意代码的发展历程
  • 1.2 检测技术现状
  • 1.2.1 特征码扫描技术
  • 1.2.2 完整性检查技术
  • 1.2.3 启发式技术
  • 1.3 研究意义及目标
  • 1.4 研究成果和章节安排
  • 第2章 恶意代码原理研究
  • 2.1 病毒的机制
  • 2.2 蠕虫的机制
  • 2.3 木马后门机理
  • 2.3.1 木马的分类
  • 2.3.2 木马的隐藏性
  • 2.4 Rootkit机理
  • 2.4.1 用户模式Rootkit隐藏技术
  • 2.4.2 内核模式Rootkit隐藏技术
  • 2.4.3 固件/硬件型Rootkit
  • 2.5 流氓软件
  • 第3章 恶意代码信息捕获
  • 3.1 常规行为截获方法
  • 3.1.1 系统服务截获
  • 3.1.2 驱动间通讯截获
  • 3.1.3 行为痕迹扫描
  • 3.2 程序控制流动态记录
  • 64 cpu的硬件支持'>3.2.1 x86/x8664 cpu的硬件支持
  • 3.2.2 记录机制的设计
  • 3.2.3 记录数据预处理
  • 3.3 基于环境虚拟化的信息获取
  • 3.3.1 虚拟化技术与虚拟机概念
  • 3.3.2 CPU的模拟方法
  • 3.3.3 进程虚拟化方法
  • 3.3.4 环境虚拟化设计实现
  • 3.4 基于硬件虚拟化支持的信息捕获
  • 3.4.1 AMD虚拟化技术
  • 3.4.2 Intel虚拟化技术
  • 3.4.3 捕获方法设计实现
  • 第4章 检测算法研究
  • 4.1 基于HMM的异常检测算法
  • 4.1.1 隐马尔可夫模型的基本概念
  • 4.1.2 隐马尔可夫模型的建立
  • 4.1.3 观测序列概率的计算
  • 4.1.4 模型的训练
  • 4.1.5 检测算法
  • 4.1.6 实验方法、结果与分析
  • 4.2 基于调用层次树的异常检测
  • 4.2.1 树的编辑距离
  • 4.2.2 调用层次树的相似度
  • 4.2.3 异常检测方法
  • 4.2.4 实验方法、结果与分析
  • 第5章 基于专家系统的检测模块设计
  • 5.1 专家系统原理
  • 5.1.1 专家系统的特征
  • 5.1.2 专家系统的基本结构
  • 5.1.3 专家系统知识表示方式
  • 5.1.4 基于规则的专家系统
  • 5.2 基于专家系统的恶意代码检测模块
  • 5.2.1 捕获信息的规格化子模块
  • 5.2.2 事实表
  • 5.2.3 推理引擎
  • 5.2.4 知识库
  • 5.3 模块检测效果
  • 第6章 综合、结论与展望
  • 6.1 主机恶意代码检测系统综合
  • 6.2 论文工作总结
  • 6.3 进一步的研究
  • 参考文献
  • 致谢
  • 在读期间发表的学术论文与取得的科研成果
  • 相关论文文献

    • [1].利用代码重构改善软件设计[J]. 信息记录材料 2020(09)
    • [2].代码对比与动态规划[J]. 电脑编程技巧与维护 2017(03)
    • [3].什么样的代码才是好代码[J]. 计算机与网络 2017(06)
    • [4].安全通论(14)——病毒式恶意代码的宏观行为分析[J]. 成都信息工程大学学报 2017(01)
    • [5].恶意代码同源判定技术综述[J]. 通信技术 2017(07)
    • [6].基于方法的克隆代码检测[J]. 信息与电脑(理论版) 2017(13)
    • [7].市代码[J]. 山西教育(招考) 2020(03)
    • [8].有关信息代码[J]. 山西教育(招考) 2019(02)
    • [9].关于机场的冷知识[J]. 意林 2019(22)
    • [10].市代码[J]. 山西教育(招考) 2016(08)
    • [11].代码自动生成及代码上下文分析研究综述[J]. 数据通信 2020(02)
    • [12].智能代码补全研究综述[J]. 软件学报 2020(05)
    • [13].基于文本分类技术的恶意代码检测工具应用[J]. 科技经济导刊 2020(27)
    • [14].克隆代码映射的方法与应用[J]. 计算机工程与应用 2017(06)
    • [15].基于增强描述的代码搜索方法[J]. 软件学报 2017(06)
    • [16].银行代码安全审计工作探索与实践[J]. 网络安全技术与应用 2017(08)
    • [17].重视统一信用代码的应用[J]. 浙江经济 2017(19)
    • [18].代码依恋检测与重构研究[J]. 电子科技 2016(11)
    • [19].基于相识度的恶意代码检测[J]. 计算机科学 2015(01)
    • [20].有关信息代码[J]. 山西教育(招考) 2018(03)
    • [21].有关信息代码[J]. 山西教育(招考) 2016(Z1)
    • [22].有关信息代码[J]. 山西教育(招考) 2011(08)
    • [23].基于模糊识别恶意代码检测技术的研究[J]. 微电子学与计算机 2014(06)
    • [24].恶意代码加壳脱壳技术[J]. 辽宁警专学报 2014(05)
    • [25].代码复查的要点探讨[J]. 技术与市场 2013(06)
    • [26].代码规制:构建安全文明网络的必由之路[J]. 保密科学技术 2013(07)
    • [27].消除隔阂,提升效率——MATHWORKS推出基于MATLAB生成HDL代码的产品[J]. 世界电子元器件 2012(05)
    • [28].C~#托管代码调用非托管代码参数传递的实现方法[J]. 软件导刊 2011(01)
    • [29].恶意代码与信息安全[J]. 硅谷 2011(18)
    • [30].代码证书遗失声明[J]. 大众标准化 2010(12)

    标签:;  ;  ;  ;  ;  

    主机恶意代码检测系统的设计与实现
    下载Doc文档

    猜你喜欢