既然谈得是虚拟机的启发式扫描反病毒技术,那么就该介绍下虚拟机、启发式扫描的概念。
虚拟机(VM),在反病毒界被称为通用解密器。具体做法是:用程序代码虚拟一个CPU来,同样也虚拟CPU的各个寄存器,甚至将硬件端口也虚拟出来,用调试程序调入被调的样本,将每一条语句放到虚拟环境中执行,这样就可以通过内存和寄存器以及端口的变化来了解程序的执行。这样的一个虚拟环境就是一个虚拟机。
虚拟机作为原操作系统下的一个应用程序,目标是让程序像运行在单独一台真正的机器上,丝毫察觉不到自己处于VM的控制之下。而实现虚拟技术的关键在于软件虚拟化和硬件虚拟化。
文中给出了三种方案:自含代码虚拟机(SCCE),缓冲代码虚拟机(BCE),有限代码虚拟机(LCE)。
自含代码虚拟机,像是一个真正的CPU,从内存中取出每条指令,然后解码,用自己的例程模拟该指令。该虚拟机会包含一个例程来对内存/寄存器寻址操作数进行解码,然后还包括一个用于模拟每个可能在CPU上执行的指令的例程集。因此,自含代码虚拟机的代码会非常巨大,而且速度会非常慢。
缓冲代码虚拟机,是SCCE的一个缩略版,大概是整合了个通用指令模拟例程,然后剩下的特殊指令单独用例程进行模拟。
有限代码虚拟机,并非实际上的虚拟机。只是简单地跟踪一段代码的寄存器内容,可能会提供一个小的被改动的内存地址表,或是调用过的中断之类的东西。选择使用LCE而非更大更复杂的系统的原因,在于既是只对极少数之类的支持便可以在解密原始加密病毒的路上走很远,因为病毒仅仅使用了INTEL指令集的一小部分来加密其主体。

至于启发式代码扫描技术,则是所谓的有自我发现的能力,发现新病毒。因为传统的反病毒扫描技术是在文件中查找已知病毒的特征码来鉴别是否染毒,是一种静态的过程,仅能查出已知的病毒。而启发式扫描能够根据某些规则职能地分析程序的代码,从而有可能找到未知的病毒。一个运用启发式扫描技术的病毒检测软件,实际上就是以特定方式实现的动态高度器或反编译器,通过对有关指令序列的反编译逐步理解和确定其蕴藏的真正动机。

——

感觉,反病毒技术的发展是这样的。

1、简单的黑名单技术,发现病毒加入黑名单。

2、Hash特征码生成,这个也会分成很多块内容。静态文件查杀,还有内存查杀都可以归纳到这里的感觉。通过一些列的特征码,运用AC或者BM等多种字符匹配算法,来扫描出病毒。

3、虚拟机技术,也就是本文中提到的虚拟个机子来监控病毒。可是,这样代价太高。

4、沙盘技术,类似于还原精灵,暂时理解是这样的。给程序自由运行,但是同时监控其所有行为。

【读书小结】—— 基于虚拟机的启发式扫描反病毒技术相关推荐

  1. 基于虚拟机对第三代蜜网技术Honeywall的设置

    我们如果要在VM上搭建蜜网系统,蜜网网关的配置将是至关重要的. 即如何正确的安装roo-1.4.hw-20090425114542.iso,其实roo-1.4.hw-20090425114542.is ...

  2. [网络安全课程实验]:基于nmap 的网络扫描和信息分析

    实验:基于nmap 的网络扫描和信息分析 一.实验目的 1)熟悉TCP.UDP协议基础: 2)掌握nmap扫描原理,能够使用命令行与图形界面进行信息收集: 3)熟练使用nmap常用参数对不同网络环境进 ...

  3. 基于容器集群的反病毒模型

    摘要 近年来,在容器技术流行的同时,基于容器的系统也面临更多安全挑战.传统虚拟机采用反病毒软件来最大限度减少恶意软件造成的损害.然而在容器环境,目前的反病毒技术面临着业务容器耦合度高.静态资源消耗浪费 ...

  4. nmap 命令行执行错误_Unimap:一款基于Nmap实现的扫描速度提升工具

    Unimap Unimap是一款基于Nmap实现的扫描速度提升工具,我们只需要提供一个IP地址给Unimap,即使是大量数据,Unimap也能够以非常快的速度完成网络扫描.Unimap是"U ...

  5. 基于ARP的网络扫描工具netdiscover常用命令集合大学霸IT达人

    基于ARP的网络扫描工具netdiscover常用命令集合大学霸IT达人 ARP是将IP地址转化物理地址的网络协议.通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机.netdisc ...

  6. 基于ARP的网络扫描工具netdiscover

    基于ARP的网络扫描工具netdiscover ARP是将IP地址转化物理地址的网络协议.通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机.Kali Linux提供的netdisc ...

  7. 计算机教学实验操作环境,一种基于虚拟机的个性化计算机实验教学环境.pdf

    第 1期 计 算 机 教 育 20l5年 1月 10日 ComputerEducation 69 ◆学科建设与教学改革 文章编号:1672.5913(2015)01-0069-06 中图分类号:G64 ...

  8. ubuntu系统虚拟机linux系统,基于虚拟机的Linux操作系统安装(Ubuntu

    <基于虚拟机的Linux操作系统安装(Ubuntu>由会员分享,可在线阅读,更多相关<基于虚拟机的Linux操作系统安装(Ubuntu(13页珍藏版)>请在人人文库网上搜索. ...

  9. SLAM Cartographer(13)基于Ceres库的扫描匹配器

    SLAM Cartographer(13)基于Ceres库的扫描匹配器 1. 扫描匹配器 2. 残差计算 2.1. 平移残差 2.2. 角度残差 2.3. 占据空间残差 1. 扫描匹配器 通过< ...

最新文章

  1. C语言基本数据结构之一(线性链表的增,删,改,查及倒序)
  2. Php 链式执行,PHP实现链式操作的三种方法详解
  3. 深入浅出CSS(二):关于雪碧图、background-position与steps函数的三角恋情
  4. select ...as_一起使用.select .map和.reduce方法可充分利用Ruby
  5. IDEA 点击进入方法内部_一份最详细的 IDEA调试教程,让bug无处藏身!
  6. 历史上杀伤力最大的笑话!!!
  7. Mysql平滑迁移(重构后的数据平滑迁移)
  8. 【vscode】vscode + vue项目实战记录
  9. 大华管理平台用户名_助力制造苏州紫光云引擎携手大华精密,共建精密机加数字化样板工厂...
  10. Sqlserver2008数据库可疑文件
  11. 微型计算机原理与接口技术第五版pdf,微型计算机原理与接口技术(第5版)
  12. 《电路》邱关源 思维导图 第二章 电阻电路的等效变换
  13. HPSocket 三种模型PACK,PUSH,PULL
  14. 《仿人机器人原理与实战》一2.2 行为链与仿人机器人设计
  15. 为什么都说阿里P7的晋升是道坎?
  16. 如何在PDF中添加图片(签名)
  17. typora里面如何快捷改变字体颜色?
  18. MapReduce之求各个部门工资的总和
  19. spss数据分析_单样本T检验_两独立样本T检验
  20. java对象——new对象的理解

热门文章

  1. 一种精确的超声波定位导航系统
  2. 求的几进制的计算方法
  3. 怎样把pdf文件拆分开
  4. 移动开发-contentprovider进行数据获取
  5. 创宇区块链|Rari Capital 遭受重入攻击,损失超 8000 万美元
  6. jsp ssm289美食推荐管理系统 java毕业设计项目源码含论文ppt介绍
  7. 智慧科技解读档案管理
  8. 在OFFICE2007中如何编辑PPT模板!
  9. 手写数字识别——算法
  10. matlab大圆航线,基于MATLAB和C#混合编程的大圆航线计算器设计