浅谈恶意代码检测分析

恶意代码分类

现有的恶意代码变种,在实现上可大致分为两类:一类是基于基础技术的共用,恶意代码开发人员通过重用基础模块实现变种;一类是恶意代码专门针对现有防范技术而设计开发的混淆技术。

混淆技术按实现机理,可分为两类:一类是干扰反汇编的混淆,使反汇编无法得到正确结果,从而阻碍进一步分析;另一类是指令/控制流混淆,此类混淆技术通常采用垃圾代码插入、寄存器重分配、等价指令替换及代码变换等方式,改变代码的语法特征,隐藏其内部逻辑关系。

从混淆技术产生作用的层面,可将其分为代码层混淆和行为层混淆两类:代码层混淆通过变形、压缩等方式,模糊、隐藏或改变原有代码特征,从而使基于代码特征的检测失效;行为层混淆则通过垃圾行为插入、执行顺序变换及等价行为替换等方式,改变行为序列或执行流程,使基于行为序列或流程图的检测失效。

恶意代码检测

恶意代码检测方法,可以分为基于启发式(heuristic-based)的检测和基于特征(signature-based)的检测两大类。

基于启发式的检测方法,通过比较系统上层信息和取自内核的系统状态来识别隐藏的文件、进程及注册表信息.还有一些研究工作通过监控系统特定资源来识别恶意代码。根据预先设定的规则判断恶意代码存在的可能性,其优势在于可检测新恶意代码样本;但其规则的生成依赖于分析人员的经验,在应用中易引发高误报及漏报率,因此在实际检测系统中应用较少。基于特征的检测方法,则根据由恶意代码中提取的特征进行检测,与基于启发式的检测方法相比吗,具有效率高、误报率低等优点,因此被广泛应用于恶意代码检测工具之中,是目前恶意代码检测比较常见的方法。

传统的特征检测,大多采用基于代码特征的检测方法,该方法从已有恶意代码样本中提取代码语法(syntactic)特征用于检测,此类特征通常精确匹配单一样本,恶意代码使用简单混淆方法即可绕过相应检测。并且,不同变种需使用不同特征进行描述,特征库数据量往往十分庞大,且在出现变种时需及时、不断地更新。目前很多商用杀毒软件就是采取的此类方法。

此后,提出了基于行为特征的检测方法,通过提取恶意代码执行的行为作为特征进行检测。此方法着眼于恶意代码的实际行为,因此可避免仅针对代码的混淆方法的影响,不过无法抵御等价行为替换等行为层混淆方法的干扰。

基于语义的检测方法的提出,为更好地对抗混淆技术、检测变种提供了可能。通过分析当前的混淆技术原理可以发现,混淆技术具有改变代码语法特征,但是,其仍保留行为语义的特点。利用这一特点,通过抽象语义特征来实施检测,可以提高对恶意代码变种的检测能力。

恶意代码分析

恶意代码分析,一般分为静态分析和动态分析两种。

静态分析会首先对可执行程序进行反汇编,在此基础上,分析并提取代码的特征信息。可以看出,静态分析本身并不需要实际执行代码,因此,不会对系统产生实质上的危害。

但是,由于静态所分析的代码不一定是最终执行的代码,可能消耗大量时间于无用代码。于此同时,静态分析对反汇编技术的依赖也导致了其局限性。首先,恶意代码可使用各种混淆技术阻碍反汇编分析,主要有重排、加壳、垃圾代码插入等方法,有很多工作都试图将混淆代码恢复为混淆前的代码,来提高检测能力。但很多时候不能解决寄存器重分配、等价替换等其他混淆手段。

动态分析,则是在代码执行过程中进行分析,直接执行所分析的代码,但动态分析一次执行过程只能获取单一路径行为,而一些恶意代码存在多条执行路径,有一部分工作建立系统快照递归探索多执行路径的方法,使得动态分析方法有所进步。此外还开发了一系列动态分析工具来辅助人工分析如CWSandbox等。

另外,也有两者结合的混合分析方法,如针对间谍软件(spyware)的行为特征,利用动态分析监控组件与浏览器的交互确定代码区域,然后静态分析检查该代码区域,识别系统调用信息等来检测恶意代码。

常见的序列描述法,针对代码或行为的先后次序,易受代码混淆手段的干扰;常用的还有控制流程图(control flow graph,简称CFG)描述法,局限于代码执行顺序,易受顺序无关操作调换等混淆方法的干扰。有一部分工作在解决垃圾代码插入及代码顺序变换等问题,但还未能完全解决等价代码替换的干扰问题。

目前还有许多工作利用深度学习来检测恶意代码,通过搜集大量的良性数据和VirusShare样本库中的恶意数据,来对模型进行训练,使其学会如何区分良性和恶意的Windows可执行文件。这方面的工作有很多,同时也面临着许多独特的挑战,例如上万级别长度的API调用序列等,还有待我们去解决,以及去推广神经网络的普适性。

网络安全学习资源分享:

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享 (qq.com)

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

在这里插入图片描述

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享 (qq.com)

因篇幅有限,仅展示部分资料,需要点击上方链接即可获取

猜你喜欢

转载自blog.csdn.net/2301_76161259/article/details/130360655