恶意程序码分析方法与系统、数据处理装置及电子装置与流程

文档序号:17850576发布日期:2019-06-11 22:10阅读:167来源:国知局
本发明是有关于一种数据安全机制,且特别是有关于一种恶意程序码分析方法与系统、数据处理装置及电子装置。
背景技术
:随着科技的演进与创新,网际网络除了促进全球的信息交流外,愈来愈多人的生活形态从现实社会中逐渐融入虚拟世界。因此,不少有心人士会通过网际网络来进行恶意攻击。而电脑病毒是其中一种恶意程序,会将程序自我复制或感染电脑中其他正常的程序或破坏电脑系统,进而导致电脑无法正常运作。“电脑病毒免疫系统”发源于生物免疫技术,将防毒系统想象为注射某种病毒的免疫疫苗后,此电脑即可以对此病毒产生自然抵抗能力一样。而目前的防毒软件皆是等到病毒出现后,才能制定出清除它的办法,并无法针对未知病毒来进行防护动作。技术实现要素:本发明提供一种恶意程序码分析方法与系统及数据处理装置,即便是未知的恶意码程序,可经由学习来获得对应的防护措施。本发明的恶意程序码分析方法,包括:通过数据处理装置自电子装置接收可疑档案对应的行为特征数据,并由数据处理装置执行下列步骤。比对可疑档案对应的行为特征数据与多个恶意程序码各自的恶意特征数据,而获得比对结果。基于比对结果,获得可疑档案对应的代表攻击码,其中代表攻击码包括一个或多个恶意程序码。传送代表攻击码对应的防护措施至电子装置。在本发明的一实施例中,在通过数据处理装置自电子装置接收可疑档案对应的行为特征数据之前,通过电子装置执行下列步骤。监控电子装置中是否存在有可疑档案。当检测到可疑档案时,建立沙箱(sandbox)模拟区域,以在沙箱模拟区域监测可疑档案。识别可疑档案是否符合电子装置所记录的已知恶意码类别;若识别出可疑档案对应的已知恶意码类别,转换可疑档案为已知恶意码类别对应的典型攻击码,并且套用典型攻击码对应的防护措施至沙箱模拟区域。若无法识别出可疑档案对应的已知恶意码类别,传送可疑档案对应的行为特征数据至数据处理装置。在本发明的一实施例中,上述恶意程序码分析方法更包括:在电子装置接收到代表攻击码对应的防护措施之后,转换可疑档案为代表攻击码对应的典型攻击码,并且套用防护措施至沙箱模拟区域。在本发明的一实施例中,在获得可疑档案对应的代表攻击码之后,更包括:储存代表攻击码对应的防护措施至数据处理装置的过滤数据库;以及在经过指定时间之后,自过滤数据库中读取防护措施,并传送防护措施至电子装置。在本发明的一实施例中,在比对可疑档案对应的行为特征数据与恶意程序码各自的恶意特征数据,而获得比对结果的步骤中,通过信息熵(informationentropy)理论,计算可疑档案与各恶意程序码之间的相似机率,其中相似机率为可疑档案与各恶意程序码之间相似的程度。在基于比对结果,获得可疑档案对应的代表攻击码的步骤中,比对各恶意程序码对应的相似机率与门槛值,以取出高于门槛值的相似机率所对应的一个或多个恶意程序码,来作为代表攻击码。在本发明的一实施例中,在比对可疑档案对应的行为特征数据与恶意程序码各自的恶意特征数据,而获得比对结果的步骤中,通过信息熵理论,计算可疑档案与各恶意程序码之间的相似机率以及最小差异机率,其中相似机率为可疑档案与各恶意程序码之间相似的程度,最小差异机率为可疑档案与各恶意程序码之间不相似的程度。而基于比对结果,获得可疑档案对应的代表攻击码的步骤中,利用乐观(optimistic)法则、保守(conservation)法则以及遗憾(regret)法则其中之一,而基于比对结果来获得可疑档案对应的代表攻击码。上述利用乐观法则的步骤包括:自上述相似机率中取出最大的相似机率,而以对应的恶意程序码来作为代表攻击码。上述利用保守法则的步骤包括:自上述最小差异机率中取出最大的最小差异机率,而以对应的恶意程序码来作为代表攻击码。上述利用遗憾法则的步骤包括:自上述相似机率中取出最大的一个作为第一基准值,并且自上述最小差异机率中取出最大的一个作为第二基准值;以第一基准值与上述相似机率相减而获得多个调整后相似值;以第二基准值与上述最小差异机率相减而获得多个调整后最小差异值;比对可疑档案与各恶意程序码对应的调整后相似值以及调整后最小差异值,以将最大的数值作为最后比对值;以及多个上述最后比对值中取出最小的一个,而以对应的恶意程序码来作为代表攻击码。在本发明的一实施例中,在通过数据处理装置自电子装置接收可疑档案对应的行为特征数据之后,在硬件层中,辨识硬件运转行为;在操作系统层中,辨识系统处理效能;在档案层中,辨识恶意程序识别码;以及在应用层中,辨识应用程序的执行行为。本发明的恶意程序码分析方法,包括:获得可疑档案对应的行为特征数据;比对可疑档案对应的行为特征数据与多个恶意程序码各自的恶意特征数据,而获得比对结果;基于比对结果,获得可疑档案对应的代表攻击码,其中代表攻击码包括一个或多个恶意程序码;以及采用代表攻击码对应的防护措施。本发明的数据处理装置,包括:通讯单元、储存单元以及处理单元。处理单元耦接至通讯单元与储存单元。通讯单元与电子装置建立连线。储存单元包括恶意码程序库,储存有多个恶意程序码各自的恶意特征数据。处理单元自电子装置接收可疑档案对应的行为特征数据,并且比对可疑档案对应的行为特征数据与多个恶意程序码各自的恶意特征数据,而获得比对结果,并基于比对结果,获得可疑档案对应的代表攻击码;并且,处理单元通过通讯单元,传送代表攻击码对应的防护措施至电子装置。本发明的恶意程序码分析系统,包括电子装置以及上述数据处理装置。数据处理装置自电子装置接收可疑档案对应的行为特征数据,以分析上述行为特征数据进而获得对应的防护措施。本发明的电子装置,包括:储存单元以及处理单元。处理单元耦接至储存单元。储存单元包括恶意码程序库、监控模块以及分析模块,恶意码程序库储存有多个恶意程序码各自的恶意特征数据。处理单元执行该监控模块及该分析模块。在此,处理单元在通过监控模块检测到可疑档案时,通过分析模块来执行下列动作,包括:获得可疑档案对应的行为特征数据,比对可疑档案对应的行为特征数据与恶意程序码各自的恶意特征数据,而获得比对结果,并基于比对结果,获得可疑档案对应的代表攻击码,其中代表攻击码包括其中一个或多个恶意程序码,并且采用代表攻击码对应的防护措施。基于上述,数据处理装置是一个具有智能且可进行恶意程序码分析的中心,可在发现无法识别是否为恶意程序(MaliciousProgram)的可疑档案时,进行恶意程序码的分析,并且提供对应的防护措施。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。附图说明图1是依照本发明一实施例的恶意程序码分析系统的方块图。图2是依照本发明一实施例的电子装置监控方法的流程图。图3是依照本发明一实施例的恶意程序码分析方法的流程图。图4是依照本发明另一实施例的电子装置的方块图。附图标号100恶意程序码分析系统110第一处理单元120第一储存单元121恶意码程序库122分析模块123过滤数据库130第一通讯单元140第二处理单元150第二储存单元151监控模块160第二通讯单元A数据处理装置B电子装置S205~S225电子装置监控方法的各步骤S305~S320恶意程序码分析方法的各步骤具体实施方式图1是依照本发明一实施例的恶意程序码(maliciouscode)分析系统的方块图。恶意程序码分析系统100包括数据处理装置A以及电子装置B。数据处理装置A包括第一处理单元110、第一储存单元120以及第一通讯单元130。第一处理单元110耦接至第一储存单元120以及第一通讯单元130。电子装置B包括第二处理单元140、第二储存单元150以及第二通讯单元160。第二处理单元140耦接至第二储存单元150以及第二通讯单元160。第一处理单元110及第二处理单元140例如为中央处理单元(centralprocessingunit,CPU)、可程序化的微处理器(microprocessor)、嵌入式控制芯片、数字信号处理器(digitalsignalprocessor,DSP)、特殊应用集成电路(applicationspecificintegratedcircuits,ASIC)或其他类似装置。第一储存单元120及第二储存单元150例如为非挥发性存储器(non-volatilememory)、随机存取存储器(randomaccessmemory,ram)或硬盘等。第一通讯单元130及第二通讯单元160例如为支援有线或无线通讯协议的芯片。数据处理装置A为具有智能且可进行恶意程序码分析的数据中心,例如为具有高运算能力的服务器。数据处理装置A自各方接收回馈信息,并基于所接收到的回馈信息来提供未知恶意程序码的分析及解决方法。当传送端(例如为电子装置B)检测到可疑档案,但其无法提供对应的防护措施,即,无法辨识可疑档案是否为恶意程序(MaliciousProgram)时,传送端可传送一分析请求至数据处理装置A,藉以由数据处理装置A通过机器学习演算法来学习出与可疑档案相关的防护措施,如隔离或清除。在此,恶意程序码包括电脑病毒(computervirus)、电脑蠕虫(computerworm)、木马程序(trojanhorse)、勒索软件(ransomware)、间谍软件(spyware)、广告软件(adware)、恐吓软件(scareware)等。在数据处理装置A中,第一储存单元120包括恶意码程序库(malwarelibrary)121、分析模块122以及过滤数据库123。恶意码程序库121中储存了多个已知的恶意程序码各自的恶意特征数据。第一处理单元110执行分析模块122,而分析模块122经由机器学习演算法来学习出可疑档案对应的防护措施。分析模块122亦可通过使用者定义的原则(例如:对象、内容与时间)来产生防护措施,以保护电脑的安全。而分析模块122所产生的防护措施可储存在过滤数据库123中。在企业端内,可根据对象的重要性来进一步设定安全政策。例如,针对协理级以上员工的使用端装置,进一步在安全政策中设定即使检测到中毒,也不要干扰工作环境。例如,在上班时间,仍然允许开启(open)、关闭(close)或执行(execute)等行为动作;在下班时间,则根据防护措施来决定隔离或清除已中毒的档案。而针对协理级以下员工,则可在上班时间,根据防护措施来决定隔离或清除已中毒的档案。电子装置B例如为服务器、个人电脑、笔记本电脑、平板电脑、智能型手机、穿载式装置等具有运算能力的电子装置。在电子装置B中,第二储存单元150包括监控模块151。监控模块151例如为防毒软件(antivirussoftware)。在监控模块151被安装至电子装置B之后,由监控模块151来监控电子装置B的举动,并且可进一步扫描电子装置B的储存空间中是否含有电脑病毒、电脑蠕虫、木马程序等恶意程序码。在监控模块151检测到电子装置B中存在可疑档案,且无法识别此可疑档案是否为恶意程序时,通过第二通讯单元160将可疑档案对应的行为特征数据传送至数据处理装置A,以通过分析模块122来进行分析。底下即针对电子装置B的监控方法以及数据处理装置A的恶意程序码分析方法分别举例来说明。图2是依照本发明一实施例的电子装置监控方法的流程图。请参照图1及图2,在步骤S205中,通过监控模块151来监控电子装置B中是否存在有可疑档案。例如,与所储存的特征码(signature)或行为数据进行比对,以判断第二处理单元140目前执行的动作是否异常,藉此来判断被存取的档案或正在执行的程序是否可能已被恶意程序码所感染。举例来说,当档案被任何程序进行例如开启(open)、关闭(close)或执行(execute)等行为动作时,监控模块151会针对此行为动作来进行检测。例如,监控模块151比对上述行为动作与事前储存的行为数据,或者,监控模块151比对上述档案与事先储存的病毒特征码。在识别出上述行为动作或上述档案为异常时,判定上述程序或上述档案为可疑档案。接着,在步骤S210中,当检测到可疑档案时,监控模块151建立沙箱(sandbox)模拟区域,以在沙箱模拟区域监测可疑档案。沙箱模拟区域可以视为一个有效区隔的安全区间,在沙箱模拟区域所产生的变动,不会对操作系统造成损害。因此,监控模块151在检测到可疑档案时,先将可疑档案移至沙箱模拟区域的环境。而在沙箱模拟区域内的可能是一个静态存在的数据或者是一个动态执行的行程(process)。之后,在步骤S215中,监控模块151识别可疑档案是否符合其所记录的已知恶意码类别。监控模块151内记录有多个已知恶意码类别及其对应的防护措施。而当检测到可疑档案时,监控模块151会判断此可疑档案是否符合其中一种已知恶意码类别,若符合,则执行步骤S220;若无法识别可疑档案,则执行步骤S225。若识别出可疑档案对应的已知恶意码类别,在步骤S220中,监控模块151会转换可疑档案为已知恶意码类别对应的典型攻击码,并且套用典型攻击码对应的防护措施至沙箱模拟区域。在此,防护措施为安全政策(policy)。举例来说,在判定可疑档案为木马程序时,监控模块151将可疑档案转换为典型的木马程序,并且将典型的木马程序对应的防护措施套用至沙箱模拟区域。例如,清除或删除可疑档案;若无法清除,则迅速地隔离受感染的网络区段、抑制疫情扩散。若无法识别出可疑档案对应的已知恶意码类别,在步骤S225中,通过第二通讯单元160传送可疑档案对应的行为特征数据至数据处理装置A。对于监控模块151无法识别的可疑档案,电子装置B将可疑档案的行为特征数据馈送至一数据中心(即,数据处理装置A),经机器学习演算法来学习出可疑档案的防护措施。在此,防护措施为安全政策(亦可称为,电脑病毒疫苗)。数据处理装置A提供对应的电脑病毒疫苗给电子装置B,电子装置B基于电脑病毒疫苗来获得抗体(或称规则(rule)),并将抗体部署到沙箱模拟区域,以提高恶意程序码的过滤效率。底下举例来说明通过数据处理装置A进行恶意程序码的分析流程。图3是依照本发明一实施例的恶意程序码分析方法的流程图。请同时参照图1及图3,在步骤S305中,数据处理装置A自电子装置B接收可疑档案对应的行为特征数据。数据处理装置A在接收到可疑档案对应的行为特征数据之后,经由分析模块122来分析行为特征数据。在此为方便说明,故以电子装置B作为其中一例,数据处理装置A亦可以自其他平台接收可疑档案。在数据处理装置A接收到可疑档案对应的行为特征数据之后,可通过一层一层地学习,来获得与恶意攻击相关的征兆。例如,先在硬件层(第一层)中,学会如何辨识硬件运转行为。硬件运转行为包括硬件当机(hardwarehang)、硬件重开机(restart)、风扇转速异常、高电源使用量、主机板温度过高等。接着,在操作系统层(第二层)中,学会如何辨识系统处理效能。系统处理效能包括处理速度下降、档案尺寸改变、系统资源下降、莫名端口被打开、操作不稳定、当机等。之后,在档案层中(第三层),学会如何辨识恶意程序的特征码(signature)。然后,在应用层(第四层)中,学会如何辨识应用程序的执行行为。执行行为包括尝试进行连结、自行复制、自行删除电脑文件、传送或接收数据、探测网络(probenetwork)、消除某些行程(process)。上述四层(第一层至第四层)的学习过程仅为举例说明,亦可以为三层、五层等,在此并不限定层数。在步骤S310中,通过分析模块122来比对可疑档案对应的行为特征数据与多个恶意程序码各自的恶意特征数据,而获得比对结果。接着,在步骤S315中,基于比对结果,获得可疑档案对应的代表攻击码。在此,代表攻击码包括一个或多个恶意程序码。例如,可利用数据探勘(datamining)、机率或信息熵(informationentropy)理论来找出与可疑档案最相似的代表攻击码。所谓信息熵理论是以信息出现机率来测度信息的不确定程度,进而建构出熵模式。以夏农熵(Shannonentropy)而言,夏农熵是随机变数I(信息量)的期望值,反映了信息传输的平均信息量,即信息出现的机率愈大则熵值愈小,表示了当出现某种信息愈确定,则传输的平均信息量愈少,亦即信息出现的规则性愈大,不确定性程度低。具体涵义为,测度一事件信息的数量,称为信息量。一个可能事件所包含信息量是由信息发生的机率决定,发生机率愈大,所包含的信息量愈小,反之,发生机率愈小,则所包含的信息量愈大。最后,在步骤S320中,分析模块122通过第一通讯单元130传送代表攻击码对应的防护措施至电子装置B。而在获得代表攻击码之后,分析模块122可储存代表攻击码对应的防护措施至数据处理装置A的过滤数据库123。在此,所获得的防护措施中包括可疑档案的识别信息以及代表攻击码的识别信息。在经过指定时间之后,分析模块122自过滤数据库123中读取防护措施,并传送防护措施至电子装置B。在此,指定时间可以是0秒或0秒以上。通过上述方法,由数据处理装置A提供已知恶意码类别对应的电脑病毒疫苗,再将电脑病毒疫苗传送至电子装置B,并部署至电子装置B。据此,电子装置B的监控模块151会对此可疑档案进行防卫,即,基于电脑病毒疫苗来自行产生抗体,再将所获得的抗体套用到可疑档案对应的沙箱模拟区域中。在此,数据处理装置A维护的恶意程序库121中包含许多疫苗(即防护措施)。电子装置B及其他平台通过收集经过确认的恶意程序码的恶意特征数据,将这些已知的恶意特征数据馈送至数据处理装置A,使数据处理装置A将基于这些恶意特征数据产生的特征码,定期或不定期更新至电子装置B及其他平台的监控模块151。底下以信息熵理论来进一步说明上述步骤S310及S315。分析模块122通过信息熵理论,计算可疑档案与各恶意程序码之间的相似机率。在此,相似机率为可疑档案与各恶意程序码之间最相似的程度。举例来说,假设恶意程序库121中包括已知的恶意程序码“C01”、“C02”、“C03”。恶意程序码“C01”采取的防护措施为清除。恶意程序码“C02”采取的防护措施为隔离。恶意程序码“C03”采取的防护措施为清除、隔离。而经由信息熵理论来计算出可疑档案分别与恶意程序码“C01”、“C02”、“C03”的相似机率,如表1所示。表1与可疑档案的相似机率防护措施恶意程序码“C01”80%清除恶意程序码“C02”60%隔离恶意程序码“C03”20%清除、隔离分析模块122将上述相似机率与门槛值进行比对,以取出高于门槛值的相似机率所对应的一个或多个恶意程序码,来作为代表攻击码。例如,若门槛值设定为70%,则采用恶意程序码“C01”的防护措施。若门槛值设定为50%,则采用恶意程序码“C01”、“C02”两者的防护措施。也就是说,可以结合多个恶意程序码的防护措施。另外,除了利用如上所述的门槛值方式之外,亦可导入决策树概念。决策树是一项建立分类模式(classificationmodels)的方式之一,针对给定的数据利用归纳的方式产生树状结构的模式。为了要将输入的数据分类,决策树的每一个节点即为一个判断式,判断式针对一个变数去判断输入的数据大于或等于或小于某个数值,每一个节点因而可以将输入的数据分成若干类。决策树是同时提供分类和预测常用的方法。分析模块122利用决策树来计算从不同已知的恶意特征数据的机率下,可采用的法则(criteria)。在本实施例中,提出底下三种法则,即,乐观(optimistic)法则、保守(conservation)法则以及遗憾(regret)法则。具体而言,分析模块122通过信息熵理论,计算可疑档案与各恶意程序码之间的相似机率以及最小差异机率。在此,相似机率为可疑档案与各恶意程序码之间最相似的程度,最小差异机率为可疑档案与各恶意程序码之间最不相似的程度。例如,假设恶意程序库121中包括已知的恶意程序码“C01”、“C02”、“C03”。并且,假设可疑档案的行为特征数据包括8个征兆,恶意程序码“C01”包括7个征兆,且恶意程序码“C01”中的5个征兆与可疑档案的行为特征数据最相似。故,利用信息熵理论的信息量公式,可以算出这些相似征兆的相似机率。而假设恶意程序码“C01”中的1个征兆与可疑档案的行为特征数据最不相似,则利用信息熵理论的信息量公式,可以算出上述不相似征兆的最小差异机率。表2所示为可疑档案分别与恶意程序码“C01”、“C02”、“C03”的相似机率以及最小差异机率。表2接着,分析模块122通过决策树来决定利用乐观法则、保守法则以及遗憾法则其中之一,而基于比对结果来获得可疑档案对应的代表攻击码。所述乐观法则为:冒最大风险以求取最大利润。即,先就每一方案中选出最大报酬,然后再就其中挑选最大者。分析模块122自上述相似机率(即,最乐观)中取出最大的相似机率,而以对应的恶意程序码来作为代表攻击码。以表2为例,以恶意程序码“C01”作为代表攻击码,而采用恶意程序码“C01”的防护措施。所述保守法则为:先从各方案中选一个最小收益值,再从这些最小收益值中选出一个最大收益值。分析模块122自上述最小差异机率(最悲观)中取出最大的最小差异机率,而以对应的恶意程序码来作为代表攻击码。以表2为例,以恶意程序码“C02”作为代表攻击码,而采用恶意程序码“C02”的防护措施。所述遗憾法则为:比较各种方案的最大机会损失,然后选取其中最小者。进一步地说,分析模块122自上述相似机率中取出最大的一个作为第一基准值,并且自上述最小差异机率中取出最大的一个作为第二基准值。即,以恶意程序码“C01”的相似机率80%作为第一基准值,以恶意程序码“C02”的最小差异机率70%作为第二基准值。接着,以第一基准值与上述相似机率相减而获得多个调整后相似值,并且以第二基准值与上述最小差异机率相减而获得多个调整后最小差异值,如表3所示。表3调整后相似值调整后最小差异值取最大恶意程序码“C01”|80%-80%|=0|70%-40%|=30%30%恶意程序码“C02”|80%-60%|=20%|70%-70%|=020%恶意程序码“C03”|80%-20%|=60%|70%-50%|=20%60%然后,比对各恶意程序码自己的调整后相似值以及调整后最小差异值,以将最大的数值作为最后比对值。即,以恶意程序码“C01”而言,其调整后相似值为0,调整后最小差异值为30%,取最大值30%做为最后比对值。同理,恶意程序码“C02”的最后比对值为20%,恶意程序码“C03”的最后比对值为60%。最后,自上述最后比对值中取出最小的一个,而以对应的恶意程序码来作为代表攻击码。即,以恶意程序码“C02”作为代表攻击码,而采用恶意程序码“C02”的防护措施。然,决策方法有很多种,上述三种法则仅为举例说明,亦可以使用期望值、贝氏定理(Bayes’theorem)等,在此并不限制。另外,在其他实施例中,倘若电子装置B的运算功能足够,亦可直接在电子装置B中进行恶意程序码的分析。举例来说,图4是依照本发明另一实施例的电子装置的方块图。请参照图4,在电子装置B中安装分析模块122,并且在第二储存单元150中建立恶意程码程序库121。在第二处理单元140通过监控模块151检测到电子装置B中存在可疑档案,且第二处理单元140无法识别出可疑档案对应的已知恶意码类别时,由安装在电子装置B的分析模块122来取得可疑档案对应的行为特征数据,藉以比对可疑档案对应的行为特征数据与电子装置B的恶意码程序库121所记录的多个恶意程序码各自的恶意特征数据,而获得比对结果。并且,第二处理单元140基于比对结果,获得可疑档案对应的代表攻击码(与步骤S310、S315相似)。最后,第二处理单元140采用代表攻击码对应的防护措施。综上所述,在发现无法识别是否为恶意程序的可疑档案时,通过机器学习演算法来学习出与可疑档案相似的恶意程序码,并进一步对应的防护措施,如隔离或清除。据此,针对未知的可疑档案可以先行执行对应的防护措施,使其没有机会去蔓延传播。虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属
技术领域
中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视申请专利范围所界定者为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1