恶意代码检测中的恶意代码在实现上可大致分为两类:一类是基于基础技术的共用,恶意代码开发人员通过重用基础模块实现变种;一类是恶意代码专门针对现有防范技术而设计开发的混淆技术。混淆技术按实现机理,可分为两类:一类是干扰反汇编的混淆,使反汇编无法得到正确结果,从而阻碍进一步分析;另一类是指令/控制流混淆,此类混淆技术通常采用垃圾代码插入、寄存器重分配、等价指令替换及代码变换等方式,改变代码的语法特征,隐藏其内部逻辑关系。从混淆技术产生作用的层面,可将其分为代码层混淆和行为层混淆两类:代码层混淆通过变形、压缩等方式,模糊、隐藏或改变原有代码特征,从而使基于代码特征的检测失效;行为层混淆则通过垃圾行为插入、执行顺序变换及等价行为替换等方式,改变行为序列或执行流程,使基于行为序列或流程图的检测失效。
恶意代码检测方法可以分为基于启发式的检测和基于特征的检测两大类。基于启发式的检测方法,通过比较系统上层信息和取自内核的系统状态来识别隐藏的文件、进程及注册表信息.还有一些研究工作通过监控系统特定资源来识别恶意代码。根据预先设定的规则判断恶意代码存在的可能性,其优势在于可检测新恶意代码样本;但其规则的生成依赖于分析人员的经验,在应用中易引发高误报及漏报率,因此在实际检测系统中应用较少。基于特征的检测方法,则根据由恶意代码中提取的特征进行检测,与基于启发式的检测方法相比,具有效率高、误报率低等优点,因此被广泛应用于恶意代码检测工具之中,是目前恶意代码检测比较常见的方法。传统的特征检测,大多采用基于代码特征的检测方法,该方法从已有恶意代码样本中提取代码语法特征用于检测,此类特征通常精确匹配单一样本,恶意代码使用简单混淆方法即可绕过相应检测。并且,不同变种需使用不同特征进行描述,特征库数据量往往十分庞大,且在出现变种时需及时、不断地更新。
上一篇:应急响应的各个阶段及重要性分享
下一篇:应急响应应当如何正确去做?