论文部分内容阅读
云安全是当前热门的研究方向,它使用多引擎检测,并将病毒数据库置于云端。它一方面克服了传统杀毒软件采用单一病毒检测策略,对相当数量的病毒无法检测的缺陷;另一方面,通过云端共享病毒库数据,一旦有新病毒产生,其信息即被整个网络识别。这使得病毒被发现和清除的时间更短,大大减少了病毒造成的损失。然而,现有的云安全架构仍存在一些不足。首先,多引擎检测使用的热门技术主要有特征字节码技术和行为分析技术。它们一般基于病毒的字节码序列和系统调用序列的频次信息,使用数据挖掘或分类算法建立病毒模型,然后将该模型用于病毒识别。其不足之处在于,它们只使用了字节码序列和系统调用序列的频次信息,却忽略了各序列之间的次序关系。其次,对于恶意文件的海量序列信息,通常使用的方法是选择频次较高的部分序列。然而,一般病毒信息中病毒码的出现频次并不一定高,只选择频次高的序列必将忽视病毒的一些特征信息。再次,对于多引擎检测结果如何进行决策的问题,大多数采用投票分类方法,即将引擎数量较多的结果集作为最终的检测结果。该方法只考虑引擎数量,而忽略了各个引擎本身的检测准确度,导致误报误杀问题频繁产生。本文主要研究基于条件随机场的云安全机制。首先,本文对当前已有的特征字节码和行为分析技术进行改进。在建模过程中,除了使用字节码和系统调用的频次信息之外,还考虑它们之间的次序信息,本研究中称该信息分别为次序字节码对和次序系统调用对。同时,使用信息增益理论对得到的频次信息进行筛选,选取信息增益较大的部分序列。然后,使用条件随机场理论,基于该静态和动态次序信息得到的病毒特征向量,为不同病毒种类建立条件随机场模型。将这些病毒模型用于可疑文件检测,得到对应的静态检测引擎和动态检测引擎的检测结果。最后,本文选取一些常用的病毒检测软件,将其和动静态检测引擎作为本研究的多引擎检测组。本文使用证据理论进行多检测结果融合。将各引擎的检测准确度作为各自的基本置信指派,使用证据合成法则得到最终的检测结果,降低了检测的误报率。