当前位置首页 > 百科> 正文

启发式(计算机术语)

2020-12-02 23:04:55 百科

启发式(计算机术语)

启发式:英文Heuristic;简化虚拟机和简化行为判断引擎的结合。主要针对:木马、间谍、后门、下载者、已知病毒(PE病毒)的变种。

基本介绍

  • 中文名:启发式
  • 外文名:Heuristic
  • 针对:木马等已知病毒(PE病毒)的变种
  • 概念:虚拟机和简化行为判断引擎的结合

什幺是启发式

Heuristic(启发式技术=启发式扫描+启发式监控)
重点在于特徵值识别技术上的更新、解决单一特徵码比对的缺陷。目的不在于检测所有的未知病毒,只是对特徵值扫描技术的补充。
启发式技术是基于特徵值扫描技术上的升级,与传统反病毒特徵值扫描技术相比,优点在于对未知病毒的防御。是特徵值识别技术质的飞跃。  启发式查毒技术属于主动防御的一种,是当前对付未知病毒的主要手段,从工作原理上可分为静态启发和动态启发两种。
启发式指 “自我发现的能力”或“运用某种方式或方法去判定事物的知识和技能”, 是防毒软体能够分析档案代码的逻辑结构是否含有恶意程式特徵,或者通过在一个虚拟的安全环境中前摄性的执行代码来判断其是否有恶意行为。在业界前者被称为静态代码分析,后者被成为动态虚拟机。 静态启发技术指的是在静止状态下通过病毒的典型指令特徵识别病毒的方法,是对传统特徵码扫描的一种补充。由于病毒程式与正常的应用程式在启动时有很多区别。 通常一个应用程式在最初的指令,是检查命令行输入有无参数项、清屏和保存原来萤幕显示等,而病毒程式则通常是最初的指令是直接写盘操作、解码指令,或搜寻某路径下的可执行程式等相关操作指令序列。静态启发式就是通过简单的反编译,在不运行病毒程式的情况下,核对病毒头静态指令从而确定病毒的一种技术。 而相比静态启发技术,动态启发技术要複杂和先进很多。动态启发式通过杀软内置的虚拟机技术,给病毒构建一个仿真的运行环境,诱使病毒在杀软的模拟缓冲区中运行,如运行过程中检测到可疑的动作,则判定为危险程式并进行拦截。这种方法更有助于识别未知病毒,对加壳病毒依然有效,但如果控制得不好,会出现较多误报的情况。 动态启发因为考虑资源占用的问题,因此只能使用比较保守的虚拟机。管如此,由于动态启发式判断技术具有许多不可替代的优势,因此仍然是目前检测未知病毒最有效、最可靠的方法之一,并在各大杀软产品中得到了广泛的套用。 由于诸多传统技术无法企及的强大优势,必将得到普遍的套用和迅速的发展。纯粹的启发式代码分析技术的套用(不藉助任何事先的对于被测目标病毒样本的研究和了解),已能达到80%以上的病毒检出率,而其误报率极易控制在0.1%之下,这对于仅仅使用传统的基于对已知病毒的研究而抽取“特徵字串”的特徵扫描技术的查毒软体来说,是不可想像的. 启发式防毒技术代表着未来反病毒技术发展的必然趋势,具备某种人工智慧特点的反病毒技术,向我们展示了一种通用的、不依赖于升级的病毒检测技术和产品的可能性。

传统反病毒特徵值扫描技术

传统反病毒特徵值扫描技术,由反病毒样本分析专家通过逆向反编译技术,使用反编译器(ollydbg、ida、trw等)来检查可疑样本档案是否存在恶意代码,从而判定程式档案是否属于正常程式或病毒、恶意软体。在确认程式为病毒、恶意软体后,不同的安全厂商根据自己的标準对此可疑程式样本进行特徵提取和样本命名(不同安全厂商有自己规定的特徵提取点和样本命名规则)。最后经过测试部门测试通过后,更新到伺服器,提供用户的本地病毒库更新。在用户作业系统正常监控或用户手动扫描后,利用防毒引擎对系统上的档案自动进行特徵值提取并与病毒库中已存特徵值比对,条件符合即比对结果为真时,即判断此档案为病毒库中记录的特徵值对应的病毒名称的病毒(恶意软体)。
病毒、恶意软体通常最初的指令是直接读写磁碟操作、解码指令,或获取系统目录(GetSystemDirctory)、获取磁碟类型(GetDriveType)、打开服务管理器(OpenSCManager)等相关操作指令序列。这些都是病毒样本分析专家分析中得到的经验。

启发式技术的优势

启发式技术,在原有的特徵值识别技术基础上,根据反病毒样本分析专家总结的分析可疑程式样本经验(移植入反病毒程式),在没有符合特徵值比对时,根据反编译后程式代码所调用的win32 API函式情况(特徵组合、出现频率等)判断程式的具体目的是否为病毒、恶意软体,符合判断条件即报警提示用户发现可疑程式,达到防御未知病毒、恶意软体的目的。解决了单一通过特徵值比对存在的缺陷。
例如:一个可疑程式通过反病毒防毒引擎反编译后,发现代码中自动释放执行档驻留系统目录、伪装系统档案、注册win32服务获取系统管理许可权、通过命令行删除自身档案,调用系统组件svchost.exe来开启后门服务,隐藏自身进程并尝试通过OpenSCManagerA、OpenServiceA、ControlService等函式来开启系统自身的终端服务,以便进一步控制计算机。通过这些条件即可判断为恶意软体(后门程式)。

启发式引擎

Dr.Web启发式引擎
蜘蛛使用Dr.Web启发式引擎,该引擎是蜘蛛自己开发的,在侦测未知威胁方面卓有成效。它的启发式引擎,加入了俄罗斯人一贯擅长的一系列複杂的脱壳运算算法。因此可以轻而易举地对将近4000多种壳进行脱壳,并且在脱壳的时候,不卡系统,记忆体和CPU占用水平都维持在低水準中。蜘蛛能够高精度侦探加壳对象,将其分解为组成部分并进行逐一检查,判断是否存在隐藏的危险。即便是有害程式使用的是新加壳方式,也不会逃过它的检查。
实际上,流行的加壳方式分为加密保护和压缩保护。蜘蛛的启发式引擎,主要负责对加密保护这类壳(ASProtect、tElock、Armadillo、SVK Protector、Xtreme-Protector、Obsidium、PElock等)进行脱壳。而对于压缩保护的壳(UPX、ASpack、Petite、PECompact、PE-PACK等),蜘蛛还有自己的特色技(Origins.Tracing TM)来额外处理,以便分担启发式分析仪单方面脱壳的压力。
Dr.WebAV-Desk版中的云安全技术
蜘蛛在自己的福云版AV-Desk加入了云安全技术,为提高对未知病毒的反映处理时间做出了贡献。
独特的非特徵性分析技术Origin.Tracing,FLY-CODE 是独一无二的全能解包器,设于Dr.Web 5.0及6.0版的搜寻模组。利用这一解包器Dr.Web可解未知的打包器。利用Dr.Web病毒库中的专门记录,搜寻模组能够对存在于打包压缩档案中的有害对象作出启发式判断,这时在被侦测出的对象名称后添加《可能是 Trojan.Packed》。Packed就是捆绑打包之意。即该技术有利于侦测任何含压缩保护的档案中内含有的恶意捆绑内容(广告程式、后门、木马等)。此技术是对传统特徵分析(常规病毒特徵码对比)和Dr.Web启发式分析仪(启发式引擎)的补充,大大分担启发式分析仪脱壳的压力。该技术同时有利于降低启发式分析仪的误报及缩短侦测时间。
因此,当我们下载的一些程式包内含有广告外挂程式时,蜘蛛就能很敏锐地侦测到,非常强悍。致使很多人误以为其误报正常安装程式。不过,蜘蛛也是有缺点的,那就是它的本地化控制得不好,对部分国内软体(即使没有捆绑外挂程式)误报。
NOD32 ThreatSense启发式引擎
NOD32之所以能斩获如此多的奖项,其终究还是要归功于它所使用的高效综合性防护架构引擎——ThreatSense启发式引擎。利用单一的ThreatSense启发式引擎,来处理不同的威胁(病毒、蠕虫、木马、间谍软体、广告软体、后门程式、网路钓鱼)。以此来简化工序,提高执行效能。
除了常规病毒特徵码检测外,NOD32基于TS启发式引擎的检测技术还有2种。1、静态启发。静态启发这一块含有2种技术。第一种是基于病毒库中已有的特徵码对比,并在静止状态下通过简单的反编译,核对病毒头静态指令来识别病毒。第二种就是基因码检测(国外的叫法),类似于国产杀软的广谱查杀技术。主要是从各病毒变种中找到一些相同的非连续的程式代码,製作出通用的家族启发规则,内置于NOD32中。一旦在对比中发现可疑档案含有的部分代码符合或接近此家族启发规则,就进行报毒。这对NOD32来说,还算是小儿科的。真正厉害的是它的动态启发。2、动态启发动态启发远比静态启发要先进和複杂很多。它辨别病毒的方法并非依靠任何特徵资料库,而是在档案扫描时主动地拆解与分析档案的执行码,并使用虚拟机技术,给可疑档案构建一个虚拟仿真的运行环境,诱使它在杀软的模拟缓冲区中运行,如运行过程中检测到可疑的动作,则判定为危险程式并进行拦截。这种方法对加壳病毒依然有效,但如果控制得不好,会出现较多误报的情况。动态启发因为考虑资源占用的问题,因此目前只能使用比较保守的虚拟机技术。
我们常见的NOD32静态启发报毒,就是那些有“变种(variant)”、“可能(probably)”或带“Gen(Generic——基因启发)”字样的报法。而动态高启发报毒,则是以“未知的NewHeur_PE病毒”(probably unknown NewHeur_PE virus [7])来标示的。在用户病毒扫描测试中,查杀率并不是很高。
ThreatSense.Net全球病毒预警系统
ThreatSense.Net类似于ESET的云安全,它可以将客户端的启发式引擎报警为未知NewHeur_PE病毒的样本,从后台遣送至ESET的病毒实验室,从而进一步深入指纹对比,并最终确认威胁的具体种类、名称和危害度等级。它是从NOD32 2.5就延续下来的功能,那时候很多厂商都没有云安全这个概念呢。可见ESET的技术和理念都是很有前瞻性的。通过TS.Net,用户可以将威胁的应对时间,从以往的数天降低至几小时甚至于几分钟以内,从而得到接近于零时差的保护。
ESET NOD32的优点如上述般多,但缺点也是并存的。它在开了高启发之后,对于某些加壳的档案进行模拟运行分析时,会不稳定。这样导致的结果是偶尔CPU会瞬时飙升很高,直观上就是电脑卡几下。不过,瑕不掩瑜,NOD32的启发侦测病毒率占全部侦测率的大部分,同时误报控制得极低,所以说,它终究高启发低误报的典範代表杀软之一。
McAfee启发式引擎&Artemis云技术
咖啡的启发式引擎也是自家独创的,拥有基因启发和模拟行为分析的能力。它使用了启发式杀软普遍使用到的基因码侦测技术,能非常有效地对付种类繁多的病毒和木马的变种。同时也有着很好针对未知威胁的前摄性侦测能力。
Artemis月神技术是McAfee为了即时防御线上的恶意威胁,而开发出的一种云技术套用,最早见于企业版的咖啡产品中。不过从09年开始,咖啡的家庭版产品,也加入了此技术,并更名为“Active Protection”。Artemis会查找可疑的 PE 档案,并当侦测到时,把某类的总和检查码(不会包含个人/敏感的数据)传送到由McAfee AVERT Labs架设的中央资料库伺服器。该中央资料库伺服器会不断地更新新发现的恶意软体,而且 McAfee 的恶意软体伫列到目前为止并未建立官方 DATs. 如果符合中央资料库内的数据,扫瞄器会报告并处理侦测到的恶意软体。在 McAfee 的伫列中的档案并未经历过任何分析,但会由 McAfee 的巨大白名单交叉检查以避免误判。根据由远程维护的黑名单,可以提供较每日多次发布特徵码更新来对付每小时大量出现新的恶意软体的厂商快速的保护,以防止新的恶意软体的入侵,达到所谓的零时差防护!
Artemis在企业版咖啡产品中,其等级是可调的。而在家庭版产品中,无法调节相应等级。
Norton BloodHound启发式引擎
BloodHound是赛门铁克独家的启发式侦测技术。和众多启发式引擎无异,它会藉由可疑的行为来侦测病毒。BloodHound会製造一个虚拟的安全环境,使病毒展现出他的不良企图,而不会影响到本身计算机运作的稳定性。
综合性SONAR行为侦测/防御技术
启发只运行于虚拟主机当中,倘若病毒木马不幸进入实体主机,就得利用“行为防御技术”了;行为防御会分析可疑程式的行为,并事先阻拦,诺顿着名的SONAR无疑是当中最成熟的。直观来说,SONAR是一种行为侦测/防御的技术,其可以在建立病毒定义档及间谍软体侦测定义档前,阻止恶意程式码侵入。这些新兴且未知的恶意程式码会透过木马程式、蠕虫、大众邮件病毒、间谍软体或者下载软体病毒的形式进行攻击与破坏。当许多产品仅使用一组有限的启发式法则时,SONAR可以透过广泛且异质的套用行为数据,大幅提升其防护能力,且明显地将误判率降至最低。
具体来说,SONAR技术与卡巴单纯的主动防御技术不同,它更注重途径防御(诺顿注重的"途径防御",主要通过过各种不依赖病毒库的防御技术,封锁各种病毒感染途径,如漏洞防御,浏览器防御)。SONAR更多的是根据产品中一系列的引擎例如防火墙,防毒引擎,入侵防护引擎(IPS)、浏览器防护引擎(Browser Defender)等等来收集和整合信息的。然后所有这些信息会被分类器所使用来提高效能。这和其他厂商的技术有很大的区别。很多其他安全厂商没有如此庞大的信息来製作好的分类器。
Kaspersky 加入了启发式技术的AVP引擎
从卡巴7开始,卡巴顺应潮流,也对自己的软体加入了启发式扫描的技术。卡巴和众多启发式杀软一样,也是基于虚拟机模拟运行分析病毒行为的。它的启发率似乎并不是很高,但对某些特定壳,启发侦测就稍微多一些。它的启发强度是可调的,有低、中、高三个等级。总的来说,启发只是卡巴的一种辅助侦测手段,其主要的侦测手段还是靠病毒特徵库和主动防御模组。
BitDefender 含有B-HAVE启发式技术的BD引擎
(B-HAVE, BehavioralHeuristic Analyzer in Virtual Environments)- 在计算机内生成虚拟环境,模拟软体运行并识别是否存在恶意外挂程式,将病毒与您的作业系统完全隔离。此技术已在实际套用得到检验:MemScan:Adware.Nail.A(BitDefender检测)在BitDefender用户系统已发现的恶意档案中排名前列。和众多启发式杀软一样,这种启发虚拟分析的技术也在BD的引擎中得到使用。
Active Virus Control(活动病毒控制)
BD 2010加入了AVC技术,结合B-HAVE套用环境,精确判断可疑行为,清除潜伏恶意程式,最大限度保护计算机安全。
Active Virus Control技术新特点:
十项认定为可疑进程活动迹象的行为:请求任何类型的用户互动后没有等待、终止执行程式时没有显示任何类型用户界面、複製或移动档案到系统资料夹、没有相关连结类型的图示、对其他进程执行代码、运行由本身创建的二进制档案中已存储代码、在一个磁碟中不同档案里複製本身代码、在作业系统启动项里添加自己、隐藏在已知应用程式、卸载系统资料夹中的驱动并重新注册、虚拟环境中行为启发式分析。
BD有不少优点(基因启发、动态启发、病毒库大,清除能力强等),但缺点也是有的。它的产品体积很臃肿,并很难卸载乾净,另外就是不能够检测一些新兴的恶意软体,检测能力有些滞后。另外,在用户病毒扫描测试时发现并不能将病毒与作业系统完全隔离,查杀率也不高。
Panda遗传性启发式引擎技术
毫无疑问,熊猫启发式引擎,也是自己开发的。能够进行基因静态启发和高级启发虚拟环境运行分析确认病毒。该遗传性启发式技术有利于检测出未知病毒或潜在的危险病毒,也就是病毒代码库中还没有的病毒。同时与最新的SmartClean II技术结合,在清除了蠕虫或者木马后,恢复受损的系统设定和关键部分。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net