您好, 访客   登录/注册

恶意代码检测技术分析研究

来源:用户上传      作者:

  【摘要】由于互联网技术的快速发展,恶意代码也随之增加。因此,针对恶意代码,如何在有效的资源下对其进行检测成为我们研究的主要内容。本文从恶意代码检测基础理论、传统的检测方法和基于机器学习的检测方法进行分析,进而为恶意代码检测方法提供理论研究和技术支撑。
  【关键词】互联网  恶意代码  检测方法
  随着互联网技术的飞速发展以及信息交换能力的增强,网络传播已经成为恶意代码入侵的主要形式,大量个人和组织的相关信息被存储在计算机中,而恶意代码可以通过非法手段获取个人和组织的信息,从而获得其他利润。在经济利益的驱使下,恶意代码的变种数量和检测的难度也都随之而呈现指数级的增长趋势。
  一、恶意代码概述
  随着计算机被大规模的普及和应用,恶意代码种类的数量也出现了爆炸性的增长。这里我们提到的恶意代码主要是指计算机中具有不良意图的计算机指令、程序代码、脚本文件等,这些程序可以是木马、病毒等。一般恶意代码的编写者通过三种方式传播恶意代码,分别为软件的自身漏洞、使用恶意软件的用户以及二者的结合形式。
  二、恶意代码检测方法
  传统恶意代码检测系统可以从两个不同的维度对恶意代码检测技术进行划分。第一种是通过数据源的不同将其分为基于内容(静态分析)和基于行为(动态分析)两种检测,静态分析指恶意代码不需要直接运行,检测人员通过分析恶意代码的二进制执行文件对其研究即可,该方法运用反汇编技术可以加快对恶意代码的分析。动态分析是指通过虚拟或者实际的方法执行恶意代码,通过监测恶意代码对系统资源的实际操作,进而收集恶意代码的行为特征。第二种根据检测方法可以分为基于特征码、基于算法检测和基于规则的检测,这里我们主要对检测方法进行叙述,分别如下:
  (一)基于特征码检测
  基于特征码的检测方法是一种传统的恶意代码检测技术。特征码指的是恶意代码行为数据中的某些关键字标识,如可以打印的字符串、IP地址等其他信息。一般基于特征码的检测方法与静态分析技术结合使用通过反汇编或者对可执行文件进行分析,从而提取出恶意代码中的表征恶意信息的代码段,并将其特征码编码入库,从而构建恶意代码的特征码数据库,借助此数据库可以快速比对未知恶意代码,从而判定其属性。然而,在恶意代码变种数量快速增长的趋势下,我们需要将变种的恶意代码特征值进一步编写到数据库中,这将导致数据库异常庞大,从而使得后续检测未知恶意代码的时间随之而增加。
  (二)基于算法检测
  在基于算法的检测中,主要指通过机器学习的分类算法对恶意代码进行检测。通过使用静态、动态分析以及二者结合对恶意代码的特征进行提取。如,可以将恶意代码对系统进行关键操作的次数作为其行为特征。这种检测方法不仅可以处理新型的恶意变种代码,同时可以提高系统自动处理恶意代码的泛化能力。然而,由于该检测方法极度依赖恶意代码的行为特征,因此如何保证提取出的惡意代码特征具有优异的检测属性成为检测系统的重要研究内容。
  (三)基于规则检测
  基于规则的检测方法是指检测系统针对恶意代码程序进行规则匹配的设置,其可以有效地捕捉恶意代码的行为规则。通过使用动态分析技术中的沙箱机制对恶意代码程序进行监控,可以容易地发现恶意代码程序中的行为规则。如,针对某些病毒和蠕虫,借助沙箱技术对恶意代码的API调用程序进行监控,可以快速发现该程序对系统操作的规则,运用行为规则制定相应的规则匹配特征库,可以有效防止恶意代码家族对系统的侵害。基于规则的恶意代码检测方法不仅可以保护系统的某些敏感数据,同时可以有效应对新出现的恶意代码。由于该检测方法需要对恶意代码行为规则进行检测,因此如何获取行为规则成为该检测方法的重点。目前,大部分的恶意代码在沙箱中实际执行的时间都比较短,通常不超过十分钟,最长的也不超过30分钟,这就导致恶意代码行为暴露的不充分,从而使得该方法无法对将来的变种代码进行有效防范。同时,由于该检测方法需要长时间地观察恶意代码的行为规则,因此当数据量急剧增长,这种检测方法也将暴露出时间消耗的弊端,进而无法满足快速检测恶意代码的要求。
  三、总结
  随着互联网技术的大规模普及,恶意代码的威胁在不断增加,从而给人们的个人隐私和经济利益带来了极大的威胁。基于此本文从恶意代码的检测方法出发,对恶意代码目前的检测方法进行了研究,进而为恶意代码相关领域的研究提供技术支撑和理论依据。
  参考文献:
  [1] Tiwari P, Tere G, Singh P. Malware detection in android application by rigorous analysis of decompiled source code[C]//2016 International Conference on Computing Communication Control and automation (ICCUBEA). IEEE, 2016: 1-6.
  [2] Brucker A D, Herzberg M. On the static analysis of hybrid mobile apps[C]//International Symposium on Engineering Secure Software and Systems. Springer, Cham, 2016: 72-88.
  [3] Zhao G, Xu K, Xu L, et al. Detecting APT malware infections based on malicious DNS and traffic analysis[J]. IEEE access, 2015, 3: 1132-1142.
  [4] Yerima S Y, Sezer S, McWilliams G, et al. A new android malware detection approach using bayesian classification[C]//2013 IEEE 27th international conference on advanced information networking and applications (AINA). IEEE, 2013: 121-128.
  [5] Faruki P, Bhandari S, Laxmi V, et al. DroidAnalyst: Synergic App Framework for Static and Dynamic App Analysis[M]// Recent Advances in Computational Intelligence in Defense and Security. 2016.
  [6]王栎汉.一种新型自适应恶意代码抗混淆模型研究[D].北京工业大学,2018.
转载注明来源:https://www.xzbu.com/2/view-15296656.htm