CN106355092A - 用于优化反病毒测定的系统和方法 - Google Patents

用于优化反病毒测定的系统和方法 Download PDF

Info

Publication number
CN106355092A
CN106355092A CN201610798554.XA CN201610798554A CN106355092A CN 106355092 A CN106355092 A CN 106355092A CN 201610798554 A CN201610798554 A CN 201610798554A CN 106355092 A CN106355092 A CN 106355092A
Authority
CN
China
Prior art keywords
file
executable file
condition
tool
executable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610798554.XA
Other languages
English (en)
Other versions
CN106355092B (zh
Inventor
安德烈·V·拉蒂科夫
亚历山大·V·利斯金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of CN106355092A publication Critical patent/CN106355092A/zh
Application granted granted Critical
Publication of CN106355092B publication Critical patent/CN106355092B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Stored Programmes (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了用于优化可执行文件的反病毒测定的系统和方法。通过将不包含可执行代码的诸如动态库和/或资源库的可执行文件从反病毒检查中排除的优化加速了整体的反病毒测定。优化系统总地包括反病毒系统。反病毒系统总地包括检查工具和可执行文件检测系统。可执行文件检测系统总地包括分类工具、分析工具和数据库。反病毒系统可经由互联网可操作地耦连到反病毒服务器。

Description

用于优化反病毒测定的系统和方法
相关申请
本申请要求于2015年10月22日提交的2015145266号俄罗斯联邦专利申请的权益,其通过引用全部并入本文。
技术领域
实施例一般地涉及对可执行文件的反病毒检查(antivirus check)。更具体地,实施例涉及用于有策略地将可执行文件从反病毒检查中排除以优化反病毒评估过程的系统和方法。
背景技术
执行可执行文件或可移植的可执行(PE)文件(其每个可包括动态库或动态链接库(DLL))对于计算机系统用户来说可能是有危险的。恶意代码主要使用这类可执行文件(例如,诸如病毒和木马程序)传播。因此,在执行或运行可执行文件之前,建议进行这类文件的反病毒测定(determinations)(或检查)。传统的反病毒检查可基于简单或复杂的检查方法两者。例如,简单的检查可以是签名扫描,其允许从所有程序中检测已知的恶意程序。然而,签名扫描可能是耗时的过程,因为用于检查的反病毒数据库常常是非常大的。在另一个示例中,复杂的检查可包括分析可执行文件的行为。这类系统可使用具有设计为用于文件的深度分析的分析模块的代码仿真器。前述检查确保计算机系统资源和个人(包括机密)用户数据这两者的安全。前述检查需要各种数量和类型的计算机资源(其典型地是有限的),这取决于所利用的检查的类型。
此外,现今的计算机系统上可执行文件的数目不断增长,其影响对所有可执行文件进行反病毒检查所需要的时间,以及为了实施相关检查需要花费的资源。结果,减少反病毒检查所需要的计算机系统资源的方法很重要。
一些优化反病毒检查的方法典型地包括使用所谓的白名单或黑名单,或基于对文件修改的跟踪(例如通过时间戳),在这之后实施检查。这些方法还可基于特定类型的可执行文件进行,诸如:目标码、PE格式的可执行文件、宏命令、或脚本等。
例如,美国专利7,490,352号描述了检查可执行文件在其开始执行的时刻是否可信的方法。该方法包括确定正被检查的文件是否属于恶意文件类型,并验证文件的完整性和发送或运行文件的源的可靠性。然而,这些方法具有一个非常大的缺点;具体地,需要预先建立前述列表(名单)。因此,上述列表中所包括的可执行文件已经经过较深的反病毒检查至少一次,其通常涉及使用所有可用的反病毒技术的测定,包括前述的那些。因此,硬件资源和时间资源也因此已经为较深的检查和为了建立列表而被分配。然而,计算系统常常需要尽快并且尽可能使用最少的计算机资源来实施新的可执行文件的反病毒检查。“新的可执行文件”意味着前述列表不包括这类文件或任何关于这类文件的信息。
因此,需要减少反病毒测定的持续时间的系统和方法,并且特别是用于包括第一次遇见的可执行文件(“新的可执行文件”)的那些检查。因此,需要优化反病毒检查的系统和方法,包括允许在可执行文件的反病毒检查之前检测可被确定为安全的那些可执行文件、并将其从进一步的反病毒检查中排除的系统和方法。
发明内容
实施例配置为通过将可执行文件等从反病毒检查中排除来优化文件的反病毒检查,具体地,所述可执行文件为动态库和/或资源库,诸如新的可执行格式(NE)文件。结果,通过排除那些不包含可执行代码的文件而加速了反病毒检查。
在实施例中,用于将没有可执行代码的可执行文件从反病毒检查中排除的系统包括:检查工具,其配置为:接收可执行文件用于反病毒检查,将所述可执行文件发送到分类工具(breakdown tool),以及基于从分析工具所接收的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除;所述分类工具配置为:分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式,以及将关于所述可执行文件的所述格式和所述可执行文件的所述结构的信息发送给所述分析工具;所述分析工具配置为:至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件,使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足,基于所述分析建立结果,所述结果包括关于每个被检查的条件是否满足的信息,基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码,将所发布的决策发送给所述检查工具;以及数据库,其可操作地耦连到所述分析工具,并配置为存储条件列表。
在另一实施例中,用于将没有可执行代码的可执行文件从反病毒检查中排除的方法包括:使用检查工具接收可执行文件用于反病毒检查;使用分类工具分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式;使用分析工具至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件;使用分析工具使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足;基于所述分析借助于所述检查工具建立结果,所述结果包括关于每个被检查的条件是否满足的信息;基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码;以及使用所述检查工具,基于所述发布的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除。
以上概述并非意在描述本文主题的每个示出的实施例或每个实现方案。随后的附图和详细描述更具体地例示各实施例。
附图说明
结合附图考虑下面各实施例的详细描述可更彻底地理解本发明,其中:
图1是根据实施例的、用于优化可执行文件的反病毒检查的系统的框图。
图2是根据实施例的、用于将可执行文件从反病毒检查中排除的方法的流程图。
图3是配置为实现实施例的计算机系统的框图。
虽然各实施例可经受各种修改和替代形式,其细节已通过在图示中的示例的方式示出,并将进行详细描述。然而,应予以理解的是,意图并非将本发明限于所描述的特定实施例。相反,意图覆盖落入由权利要求所定义的主题内容的精神和范围内的所有修改、等同物以及替代物。
具体实施方式
图1是根据实施例的、用于优化可执行文件的反病毒检查的系统10的框图。具体地,图1的优化系统10配置为代表或为了用户设备20的利益将一个或多个可执行文件100从反病毒检查中排除。用户设备20可包括个人计算机、膝上型计算器、平板电脑、个人数字助理、移动设备、或任何其他配置为执行可执行文件的计算设备。如所描绘的,优化系统10通常包括用于排除一个或多个可执行文件100的反病毒系统110。
如下面将进一步描述的,反病毒系统110通常包括检查工具120和可执行文件检测系统130。可执行文件检测系统130通常包括分类(breakdown)工具150、分析工具160、以及数据库170。反病毒系统110可以经由互联网190、当然也可能通过其他联网配置可操作地耦连到反病毒服务器180。
在实施例中,反病毒检查优化系统10配置为通过将可执行文件从反病毒检查中排除来优化反病毒检查。在实施例中,可执行文件100运行处理被反病毒系统110拦截。在另一示例中,还可在使用诸如按需扫描(ODS)或基于主机的入侵防御系统(HIPS)的技术实施可执行文件100的反病毒检查的情况中利用优化系统10。如本领域技术人员将容易理解的,本文仅以示例的方式提供定时、反病毒检查和/或排除的示例,而非意在限制本申请的范围。
此外,图1描绘了如反病毒系统110所利用的可执行文件检测系统130的工具之间的示范性交互。如本文所描述的,可在可执行文件100的反病毒检查期间利用反病毒系统110的工具或模块,其因此允许检测可执行文件100并且随后从反病毒检查中排除。在实施例中,“可执行文件”可包括任何包括或匹配PE或NE格式的文件、或任何包括可执行代码的文件。具体地,PE格式文件可包括诸如动态链接库(DLL)的动态库。NE格式文件(此后称为“NE文件”)可包括资源文件(库),诸如包含视窗屏幕程序的文件(也称为背景文件),可包括具有“scr”扩展的文件。
如图1中所描绘的,反病毒系统110的实施例包括检查工具120和可执行文件检测系统130。检查工具120配置为为了检测恶意文件而实施包括可执行文件100的文件的反病毒检查。在实施例中,检查工具120进一步配置为随后移除或修复恶意文件。检查工具120可利用经典的文件检查方法,诸如使用一个或多个反病毒数据库的签名分析。在其他实施例中,检查工具120可利用更复杂的检查方法。复杂的检查方法可包括文件仿真,其包括解析命令中的字节代码,其中每个命令在虚拟的计算机副本上运行。在实施例中,仿真包括当命令运行时监控程序的行为或活动。在另一示例中,复杂的检查方法可包括启发式分析。在实施例中,启发式分析包括分析诸如过去事件的信息以检测未知的恶意程序。在另一示例中,复杂的检查方法包括利用远程服务,诸如信誉服务(例如包含文件上信息的可信服务器)。应注意,所有上述检查是消耗资源和/或耗时的操作。然而,检测系统130允许确定诸如动态库和NE文件的可执行文件100是否包含可执行代码。在实施例中,不包含可执行代码的可执行文件100被认为是安全的文件。因此,无需对安全可执行文件实施反病毒检查。
然而,并非所有的可执行文件格式都匹配特定的安全标准,诸如缺乏可执行代码。为此,系统10的实施例可预先建立仅包含可匹配指定安全标准的文件格式的文件格式列表。例如,包括在格式列表中的仅特定格式的文件被发送到检测系统130用于安全测定。根据实施例,格式列表是可更改的,这样检测系统130可专用于检查特定文件或忽视特定文件。包含在格式列表中的文件格式的示例是用于各种操作系统(诸如Windows,Linus和MacOS)的动态库和NE文件(例如具有“scr”扩展的背景文件)。
在另一实施例中,可在检测系统130内针对关于文件格式列表中正被检查的类型的信息的可用性实施对文件格式的检查。例如,检查工具120可发送可执行文件到检测工具130。检测系统130可使用分类工具150确定所接收的文件的格式。
为了实施反病毒检查,检查工具120可拦截程序执行并发送一个或多个可执行文件100(例如动态库)到检测系统130。例如,当可执行文件诸如Notepad.exe应用运行时,检查工具120在应用加载动态库并打开其他文件时间期间进行拦截。在一个实施例中,基于可执行文件格式确定可执行的类型。
如图1所描绘的,检测系统130包括分类工具150、分析工具160和数据库170。分类工具150配置为分析可执行文件(例如动态库)的结构。在实施例中,结构测定包括至少确定可执行文件的格式。在实施例中,对于动态库,格式可以是如下中的一个:“本地DLL”或“.NET组件DLL”。
在实施例中,分类工具150还配置为确定是否存在包含在可执行文件100的结构中并被执行的节(section)。例如,如果节可被执行,这样的测定可基于节的可执行状态(标志)来进行。分类工具150还可配置为确定可执行文件的程序代码开始执行的地址(即进入点)。分类工具150可将关于可执行文件100的格式的信息和它的结构提供给分析工具160。
分析工具160配置为根据条件列表分析可执行文件,例如动态库(此后称为“DLL文件”)。在实施例中,基于从分类工具150所接收的文件格式信息,从数据库170选择条件列表。因此,在实施例中,针对每个文件格式将存在一个条件列表。条件列表可包括用于分析可执行文件(动态库)的结构的条件。在下面的示例中提供条件列表的示例。
分析本身包括检查来自条件列表的每个条件针对正被检查的特定文件(DLL文件)被满足。在这之后,分析工具160可建立分析结果。分析结果可包括关于来自条件列表的每个条件是否已被满足的信息。如果所有条件都满足,分析工具160发布不存在可执行代码的决断,并裁决正被检查的文件为安全的。否则,如果至少一个条件未满足,分析工具160发布存在可执行代码的决断,并裁决正被检查的文件为可疑的。结果,文件将随后经受反病毒检查。分析工具160随后将所发布的决断提供给检查工具120。相应地,在检查工具120获得不存在可执行代码的决断的实施例中,检查工具120将该可执行文件从反病毒检查中排除。否则,如果检查工具120获得存在可执行代码的决断,检查工具120将实施反病毒检查并发布关于该文件安全或恶意的决断。
在实施例中,对于格式列表中的至少每个格式,数据库170配置为存储一个条件列表以用于在分析中使用。因此,当向格式列表添加新的格式时,也将针对该新格式的新的条件列表添加到数据库170。数据库170也可不管格式列表而被填充,这样条件列表可自组织地(ad hoc)被填充或没有一对一比例的格式与条件列表。
在另一实施例中,可基于特定的未满足条件而设置具体类型的反病毒检查。例如,对于DLL文件,条件可指示输出节(export section)的地址和大小必须等于0,即节必须为空。然而,如果输出节包含任何信息(例如,需要什么函数用于文件的执行以及可从什么地址接收该函数),这指示未满足或失效的条件。这样,来自节的该信息可在反病毒检查期间被使用,例如,基于文件的相关“白名单”或“黑名单”或文件签名使用签名分析。
如图1所示,反病毒系统110配置为可操作地耦连到反病毒服务器180。在实施例中,反病毒系统110和反病毒服务器180之间的接口允许经由诸如互联网190的各种网络交换信息。例如,反病毒服务器180使与格式列表的新格式或新的或经修改的条件列表相关的信息传输或以其他方式可用。进一步地,反病毒系统110可将关于经检查和被排除的可执行文件(动态库)的信息传输到反病毒服务器180或以其他方式对反病毒服务器180可用。
下面讨论的是将Notepad.exe应用的可执行文件从反病毒检查中排除的示例。当Notepad.exe应用运行时,也加载包含Notepad.exe应用运作所需要的资源和函数的动态库。例如,动态库之一是Notepad.exe.mui动态库。在操作中,反病毒系统110使用检查工具120拦截动态库Notepad.exe.mui的加载过程。在实施例中,检查工具120可包含如上所述的格式列表。在该实施例中,检查工具120配置为仅将匹配格式列表中的那些的文件发送到分类工具150或以其他方式使其对分类工具可用。在该示例中,Notepad.exe.mui动态库是匹配格式列表中格式的DLL格式文件(此后称为“DLL文件”)。因此,检查工具120将动态库发送到检测系统130。具体地,将Notepad.exe.mui特别发送到分类工具150。
一旦接收到DLL文件,分类工具150将DLL文件的结构进行“分类”或分析。在将DLL文件结构分类期间,通过检查DLL文件在字段(field)“特征”中的数据头(header)来确定(确认)DLL文件格式。在指定字段中,(在DLL文件中,例如,字段值被针对IMAGE_FILE_DLL结构而设置)检测相应的标志。对于DLL文件,分类工具150配置为确定文件属于“本地DLL”动态库类型。在此之后,分类工具150发送包括DLL文件(动态库)100的格式的信息以及DLL文件结构给分析工具160。
在实施例中,分类工具150配置为检查是否存在可执行节。例如,分类工具150可确定是否可执行特定节。对于经识别的可执行节,分类工具150还配置为检查入口点或程序代码执行的开始。该数据(入口点和节的检查)可以是随前述信息和DLL文件结构发送到分析工具160的附加的标准。例如,对于本地DLL格式动态库,如下传输标准可以是强制性的:对于每个执行节,入口点必须指示零地址(0x00),并且在节阵列中不存在执行状态(标志)。否则,如果至少一个标准未满足,则分类工具150不将前述信息和DLL文件结构发送给分析工具160,并且反而通知检查工具120。相应地,检查工具120实施反病毒检查。此外,在另一个实施例中,指定的标准可以是数据库170中存储的至少一个条件列表中包括的条件。
分析工具160基于从分类工具150所接收的关于DLL文件格式的信息从数据库170选择条件列表。条件列表的选择是根据具体的文件格式。对于上述DLL文件(Notepad.exe.mui),条件列表根据“本地DLL”格式而选择。例如,条件列表可以包含如下条件,意在用于IMAGE_DATA_DIRECTORY结构阵列的分析:
-“资源表”节(资源节)的地址和大小不等于零,即关于资源的信息存在;
-“输出表”节(输出节)的地址和大小等于零,即不存在关于可输出函数的信息;
-“输入表”节(输入节)的地址和大小等于零,即不存在关于可输入函数的信息;
-“输入地址表”节(输入表节)的地址和大小等于零,即不存在关于输入地址表的信息;以及
-“线程本地存储”(TLS)表(线程存储器节)的地址和大小等于零,即不存在TLS。
在实施例中,条件列表包括前述条件中的至少三个。在其他实施例中,也可利用其他组合或联合的条件。在其他实施例中,还可利用其他组合或链接条件。例如,第一条件可以触发第二条件的评估。在另一示例中,第一条件可以触发第二和第三条件两者的评估等。
分析工具160还配置为根据所选择的条件列表进行DLL文件结构的分析。在实施例中,根据条件列表对文件结构的分析包括检查来自条件列表的每个条件是否被满足。在分析之后,分析工具160建立结果。结果包含关于条件是否满足的信息。例如,结果可包括关于是否所有条件都满足或是否至少一个条件未满足的二进制标志。在另一个示例中,结果可包括关于满足的一个或多个条件和未满足的一个或多个条件的数据。在这类实施例中,可利用合适的数据结构来包含条件数据。
回到Notepad示例,DLL文件(Notepad.exe.mui)的检查结果对应于所有条件都满足的情况。因此,分析工具160发布存在可执行代码的决断,以及至少基于可执行代码的存在,裁决被检查的文件是安全的。在此之后,分析工具160将所发布的决策发送给检查工具120或以其他方式使其对检查工具120可用。检查工具120随后至少基于来自分析工具160的存在可执行代码的决策将DLL文件从反病毒检查中排除。
在另一个示例中,可从反病毒检查中排除系统资源文件。例如,可调用来自标准微软.NET框架包的System.XML.resources.dll文件。相应地,反病毒系统110可使用检查工具120拦截System.XML.resources.dll文件(此后称为“.NET文件”)的载入。随后,将.NET文件发送到分类工具150或以其他方式使其对分类工具150可用。分类工具150随后将.NET文件的结构进行分类。例如,分类工具150可通过字段“特征”中的文件头确定.NET文件格式。在字段“特征”中,相关标志的存在被检测或以其他方式被确定。分类工具150可确定.NET文件属于“.NET组件DLL”动态库类型。在此之后,分类工具150将关于.NET文件100的格式的信息和它的结构发送到分析工具160或以其他方式使其对分析工具160可用。
进一步地,在实施例中,分类工具150还可检查是否存在可执行节(可被执行的节),并可确定入口点(程序代码执行的开始)的地址。该数据可随文件结构数据被发送到分析工具160。例如,对于“.NET资源DLL”动态库格式,以下的标准可以是强制性的:
-至多存在一节可被执行,即该节在字段“特征”中具有相应的标志;以及
-入口点必须指示零地址(0х00)或根据具体节的入口点可被执行;在该情况下,来自.NET文件的入口点指示从mscoree.dll库调用_CorDllMain函数。否则,如果至少一个标准未满足,则分类工具150不向分析工具160发送.NET文件格式和结构信息,而是适当地通知检查工具120。相应地,检查工具120随后实施反病毒检查。此外,在另一示例中,指定标准还可包括来自数据库170中存储的条件列表的条件。在实施例中红,如果前述标准是条件,则分类工具不使用它们作为附加传输标准。
回到格式和结构标准都满足的示例,分析工具160如上所述地基于从分类工具150所接收的关于.NET文件格式的信息从数据库170中选择条件列表,并根据所选择的条件列表实施对.NET文件的分析。对于.NET文件,条件列表可根据.NET资源DLL格式而被选择,并且可包含如下条件:
-到_CorDllMain可输入函数的入口点,在其中不存在其他可输入函数,并且_CorDllMain函数本身从mscoree.dll输入;
-除了从mscoree.dll库可输入的函数,不存在可输入函数;
-“输出表”节(输出节)的地址和大小等于零,即不存在关于可输出函数的信息;
-“线程本地存储”(TLS)表(线程存储器节)的地址和大小等于零,即不存在TLS;
-.NET元数据节的地址和大小不等于零;
-管理的本地头(ManagedNativeHeader)结构的地址和大小等于零,即被检查的.NET文件不是本地图像(NativeImage)文件;
-存在可管理资源,其大小不等于零;以及
-掩蔽有效(MaskValid)字段没有与以下方法中的表相关的位(bit):MethodDef、MethodPtr、MethodSemantics、MethodImpl以及MetodSpec。
在实施例中,条件列表包括前述条件中的至少三个。在其他实施例中,条件列表可包括前述条件中的少于三个。
在分析确定条件是否满足之后,分析工具160建立相关的结果。结果包含关于是否来自条件列表的所有条件均满足或是否至少一个条件未满足的信息。例如NET文件,假定来自条件列表的所有上述条件都满足。这样,分析工具160发布存在可执行代码的决策,并裁决被检查的文件是安全的。在此之后,分析工具160将所发布的决策发送给检查工具120或以其他方式使其对检查工具120可用。相应地,检查工具120基于存在可执行代码的至少一个决策将.NET文件从反病毒检查中排除。
为了从反病毒检查中被排除,其他匹配前述格式列表的文件格式可被分析。例如,可执行DOS文件以及资源文件(诸如字体文件)是MZ-NE格式文件的示例。因此,对于上述文件格式,用于执行文件分析的条件列表可与文件格式相对应。例如,条件列表可包含以下条件:
-节的数目等于零(文件段(segment)数=0,自动数据段数=0);
-堆(heap)分配节(存储器分配节)的地址和大小等于零;
-堆栈(stack)分配节(堆栈中的位置)的地址和大小等于零;
-控制寄存器以零开始(IP=0,CS=0,SP=0,SS=0);以及
-不存在用于输入的库(输入名称(ImportNames)节指示零地址,0x0000)。
在另一实施例中,分析工具160配置为在文件分析期间实施顺序的条件检查。例如,仅当前面的条件满足后才检查后面的条件。因此,如果一个条件未满足,则分析工具160可中断检查,并将相应的结果连同检查因为条件未满足而被中断的消息发送到检查工具120。因此,检查工具120根据指定的条件将实施反病毒检查。
参考图2,描绘了根据实施例的用于将可执行文件从反病毒检查中排除的方法200的流程图。具体地,方法200适于将诸如缺乏可执行代码的动态库的可执行文件100从反病毒检查中排除。在反病毒处理期间,如果文件被裁决为可执行的,那么,在对该文件进行反病毒检查之前,方法200被应用以从反病毒检查中排除该可执行文件。基于方法200的结果,可做出决策以从反病毒检查中排除可执行文件。如本文所描述的,方法200可特别用于排除动态库和NE文件。
在210,接收待解决(at-issue)的可执行文件用于反病毒检查。在另一实施例中,拦截可执行文件的运行过程。例如,可利用检查工具120接收可执行文件。检查工具120可随后将所接收的文件发送给分类工具150或以其他方式使其对分类工具150可用。
在220,分类工具150基于分析文件结构和在文件头中的字段“特征”中检测相应的文件格式标记来确定所接收文件的格式。例如,可做出文件是动态库(本地DLL格式)、可控动态库(.NET组件DLL)、或NE文件(MZ-NE格式)的测定。
在230,将经确定的文件格式与文件格式列表相比较。格式列表包含如果后续检查成功则可从反病毒检查中排除的文件的格式。如果文件的格式存在于格式列表中,则分类工具150对文件实施进一步的分类或分析。否则,由检查工具120在235对文件实施反病毒检查。
回到文件格式与格式列表中的格式之一相匹配的情况,分类工具150确定可被执行的程序代码的节。在实施例中,可被执行的节可采用字段“特征”中的相关标记来标记。在240,在250确定可执行文件中程序代码执行开始地址(入口点)。在该情况下,将前述条件(对节和入口点的检查)与针对特定文件格式的相关标准进行比较。在图1的描述中呈现240和250的示例。例如,针对本地DLL文件格式的这些条件(对节和入口点的检查)必须满足如下标准:入口点必须指示零地址,针对每个可执行节的节阵列开始处必须没有可执行标记。如果上述条件未满足,方法200停止于255。然后,通知检查工具120,检查工具120继续到235。否则,分类工具150将关于文件格式和结构的信息发送到分析工具160。
在260,分析工具160基于所接收的关于文件格式的信息选择条件列表以用于进行分析。
在270,分析工具160根据所选择的条件列表实施分析并建立分析结果。在实施例中,在270的分析包括检查来自条件列表的每个条件被满足。分析结果可包括关于条件列表的每个条件满足的信息。
在280,基于分析结果,建立所有条件都满足的决策。这样,如果至少一个条件未满足,则分析工具160发布存在可执行代码的决策,并裁决被检查的文件是可疑的,并要求在235使用检查工具120进行反病毒检查。否则,如果所有条件均满足,则分析工具160发布不存在可执行代码的决策,并裁决被检查的文件是安全的。在此之后,分析工具160将不存在可执行代码的决策发送到检查工具120或以其他方式使其对检查工具120可用。
因此,基于所接收的决策,检查工具120在290将可执行文件从反病毒检查中排除。
图3是更详细示出根据各实施例的、本文所描述的发明的各方面可在其上实现的计算机系统300的示意图。
计算机系统300可包括诸如个人计算机320的计算设备,所述个人计算机320包括一个或多个处理单元321、系统存储器322和系统总线323,其包含各系统组件,包括与一个或多个处理单元321连接的存储器。在各实施例中,处理单元321可包括能够处理存储在计算机可读介质上的信息多个逻辑核。系统总线323实现为相关技术水平已知的任何总线结构,依次包含总线存储器或总线存储器控制器、外围总线和本地总线,其能够与任何其他总线架构交互。系统存储器可包括诸如只读存储器(ROM)324的非易失性存储器,或诸如随机存取存储器(RAM325)的易失性存储器。基本输入/输出系统(BIOS)326包含确保个人计算机320的元件之间的信息传输的基本程序,例如,在使用ROM 324启动操作系统期间。
个人计算机320依次具有用于数据读写的硬盘驱动327、用于在可移动磁盘329上读写的磁盘驱动328、以及用于在可移动光盘331上读写的光驱330,可移动光盘331诸如CD-ROM、DVD-ROM、以及其他光介质。硬盘驱动327、磁盘驱动328以及光驱330分别通过硬盘驱动接口332、磁盘驱动接口333和光驱接口334与系统总线323相连接。这些驱动和相应的计算机信息截止表示不依赖能量的装置,用于存储计算机指令、数据结构、程序模块和个人计算机320上的其他数据。
所描绘的系统包括硬盘驱动327、可移动磁盘驱动329和可移动光驱330,但是应理解可能使用其他类型的计算机介质,其能够以计算机可读形式(固态驱动、闪存卡、数字盘、随机存取存储器(RAM)等)存储数据,通过控制器355连接到系统总线323。
计算机320包括文件系统336,在其中存储记录的操作系统335、以及附加的程序应用337、其他程序引擎338和程序数据339。用户可使用输入设备(键盘340、鼠标342)将命令和信息输入到个人计算机320。也可使用其他输入设备(未示出),诸如麦克风、操纵杆、游戏控制器、扫描仪等。这类输入设备通常通过串行端口346连接到计算机系统320,串行端口346转而连接到系统总线,但是它们还可以不同的方式连接——例如,使用并行端口、游戏端口或通用串行总线(USB)。监视器347或另外类型的显示设备也通过诸如视频适配器348的接口的连接到系统总线323。除了监视器347,个人计算机320可配备有其他外围输出设备(未示出),诸如扬声器、打印机等。
个人计算机320能够在网络环境中工作;在该情况下,它使用网络与一个或若干其他远程计算机349连接。一个或多个远程计算机349与个人计算机或服务器类似,其具有当描述如图3中所示的个人计算机320的内容时早期陈述的以上元件中的大部分或全部。计算网络还可具有其他设备,诸如路由器、网络站、对等设备或其他网络节点。
网络连接可包括局域网(LAN)350和广域网(WAN)。这类网络用于企业计算机网络或用于企业内部网中,并通常可接入互联网。在LAN或WAN网络中,个人计算机320通过网络适配器或网络接口351连接到局域网350。当使用网络时,个人计算机320可使用调制解调器354或其他装置用于连接到广域网,诸如互联网。为内部或外部设备的调制解调器354通过串行端口346连接到系统总线323。应该阐明,这些网络连接仅是示例,且不必体现精确的网络配置,即在现实中存在其他使用通信技术手段在计算机之间建立连接的装置。
本文已描述系统、设备和方法的各实施例。这些实施例仅以示例的方式给出,而非意在限制所要求保护的发明的范围。此外,应理解,已描述的实施例的各特征可以各种方式加以组合以产生大量附加的实施例。此外,虽然已描述各种材料、尺寸、形状、配置和位置等用于所公开的实施例,但可在不超过所要求保护的发明的范围的情况下利用所公开那些以外的其他。
相关领域的普通技术人员将意识到,本文的主题可包括比上文所描述的任何单个实施例中所示出的更少的特征。本文所描述的实施例不意味着是本文的主题的各种特征可以其组合的方式的穷举呈现。因此,这些实施例不是相互排斥的特征的组合;而是,如本领域的普通技术人员所理解的,各实施例可包括从不同的各个实施例中所选择的不同的各个特征的组合。此外,关于一个实施例所描述的元素可在其他实施中实现,即使在这类实施例中没有描述,除非另有说明。
虽然从属权利要求可能引用权利要求中一个或多个其他权利要求的特定组合,其他实施例也可包括该从属权利要求与每个其他从属权利要求的主题的组合,或一个或多个特征与其他从属或独立权利要求的组合。这类组合在本文中提出,除非说明某具体组合是不需要的。
限制通过引用上文文档的任何合并,使得不合并与本文明确的公开相反的主题。进一步限制通过引用上文文档的任何合并,使得在文档中所包括的权利要求不会通过引用被合并。还进一步限制通过引用上文文档的任何合并,使得除非本文明确加以包括,否则本文不通过引用对文档中所提供的任何定义加以合并。
出于对本发明诠释权利要求的目的,明确意图的是,除非在权利要求中引述具体术语“用于……的装置”或“用于……的步骤”,否则将不调用美国法典第35篇第112节第六段的条款。

Claims (24)

1.一种用于将没有可执行代码的可执行文件从反病毒检查中排除的系统,所述系统包括:
检查工具,其配置为:
接收可执行文件用于反病毒检查,
将所述可执行文件发送到分类工具,以及
基于从分析工具所接收的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除;
所述分类工具配置为:
分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式,以及
将关于所述可执行文件的所述格式和所述可执行文件的所述结构的信息发送给所述分析工具;
所述分析工具配置为:
至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件,
使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足,
基于所述分析建立结果,所述结果包括关于每个被检查的条件是否满足的信息,
基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码,
将所发布的决策发送给所述检查工具;以及
数据库,其可操作地耦连到所述分析工具,并配置为存储条件列表。
2.根据权利要求1所述的系统,其中所述多个文件格式包括新的可执行(NE)格式、动态链接库(DLL)格式、资源文件格式、以及可执行DOS文件格式。
3.根据权利要求2所述的系统,其中所述动态链接库(DLL)格式是本地DLL或.NET组件DLL。
4.根据权利要求1所述的系统,其中对所述可执行文件的所述结构的分析包括确定所述可执行文件的一个或多个节是否能被执行。
5.根据权利要求1所述的系统,其中对所述可执行文件的所述结构的分析包括确定所述可执行文件的程序代码的入口点。
6.根据权利要求1所述的系统,其中从所述数据库选择的所述条件列表特定于所述可执行文件的所述格式。
7.根据权利要求6所述的系统,其中所述可执行文件是.NET组件动态库(DLL),并且所述条件列表包括:
对所述动态库的_CorDllMain函数的入口点,
所述_CorDllMain函数是否从mscoree.dll输入,
所述动态库的输出表节的输出表地址和输出表大小,
所述动态库的线程本地存储器表的线程本地存储器表地址和线程本次存储表大小,所述动态库的.NET元数据节的元数据地址和元数据大小,
所述动态库的管理的本地头结构的本地头部地址和本地头部大小,
所述动态库的可管理的资源大小的存在,或者
所述动态库的掩蔽有效字段是否有与MethodDef、MethodPtr、
MethodSemantics、MethodImpl、或MetodSpe的表相关的位。
8.根据权利要求1所述的系统,其中所述检查工具还配置为进行反病毒检查,并且由所述检查工具所进行的反病毒检查的类型基于来自所述条件列表中的未满足的条件而确定。
9.根据权利要求8所述的系统,其中所述未满足的条件是输出节的地址是否为零并且输出节的大小是否为零,并且其中所述反病毒检查是对所述输出节的签名分析。
10.根据权利要求1所述的系统,还包括通过互联网可通信地耦连到所述数据库的反病毒服务器,其中所述反病毒服务器配置为传送对条件列表的更新。
11.根据权利要求1所述的系统,其中所述检查工具还配置为拦截所述可执行文件的加载。
12.根据权利要求1所述的系统,其中所述条件列表包括第一条件和第二条件,并且其中如果所述第一条件未满足,则所述分析工具配置为拦截所述第二条件的检查,并将所发布的决策发送给所述检查工具。
13.根据权利要求1所述的系统,其中所述系统在计算平台上执行,所述计算平台包括至少一个处理器、数据存储器、以及输入/输出设施的计算硬件,并且其中所述检查工具、所述分类工具和所述分析工具是存储在有形介质上的在所述计算平台上执行的计算机程序指令。
14.一种用于将没有可执行代码的可执行文件从反病毒检查中排除的方法,所述方法包括:
使用检查工具接收可执行文件用于反病毒检查;
使用分类工具分析所述可执行文件的结构,并通过检查所述可执行文件的头部来识别所述可执行文件的格式;
使用分析工具至少基于关于所述可执行文件的所述格式的信息从数据库中选择条件列表,所述条件列表包括用于分析所述可执行文件的所述结构的多个条件;
使用所述分析工具使用所选择的条件列表对所述可执行文件的所述结构实施分析,所述分析包括检查来自所述所选择的条件列表中的每个条件是否满足;
基于所述分析借助于所述检查工具建立结果,所述结果包括关于每个被检查的条件是否满足的信息;
基于所述结果发布决策,其中所述决策是:当来自所述条件列表的所有条件都满足时,所述可执行文件中不存在可执行代码;以及
使用所述检查工具,基于所述发布的决策,将没有可执行代码的可执行文件从所述反病毒检查中排除。
15.根据权利要求14所述的方法,其中所述多个文件格式包括新的可执行(NE)格式、动态链接库(DLL)格式、资源文件格式、以及可执行DOS文件格式。
16.根据权利要求15所述的方法,其中所述动态链接库(DLL)格式是本地DLL或.NET组件DLL。
17.根据权利要求14所述的方法,其中对所述可执行文件的所述结构的分析包括确定所述可执行文件的一个或多个节是否能被执行。
18.根据权利要求14所述的方法,其中对所述可执行文件的所述结构的分析包括确定所述可执行文件的程序代码的入口点。
19.根据权利要求14所述的方法,其中从所述数据库选择的所述条件列表特定于所述可执行文件的所述格式。
20.根据权利要求14所述的方法,还包括采用所述检查工具进行反病毒检查,并且反病毒检查的类型基于来自所述条件列表中的未满足的条件而确定。
21.根据权利要求14所述的方法,还包括从反病毒服务器接收对条件列表的更新。
22.根据权利要求14所述的方法,还包括采用所述检查工具拦截所述可执行文件的加载。
23.根据权利要求14所述的方法,其中所述条件列表包括第一条件和第二条件,所述方法还包括:如果所述第一条件未满足,则采用所述分析工具拦截所述第二条件的检查,并将所发布的决策发送给所述检查工具。
24.根据权利要求14所述的方法,其中所述方法在计算平台上执行,所述计算平台包括至少一个处理器、数据存储器、以及输入/输出设备的计算硬件,并且其中所述检查工具、所述分类工具和所述分析工具是存储在有形介质上的在所述计算平台上执行的计算机程序指令。
CN201610798554.XA 2015-10-22 2016-08-31 用于优化反病毒测定的系统和方法 Active CN106355092B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2015145266 2015-10-22
RU2015145266A RU2606559C1 (ru) 2015-10-22 2015-10-22 Система и способ оптимизации антивирусной проверки файлов

Publications (2)

Publication Number Publication Date
CN106355092A true CN106355092A (zh) 2017-01-25
CN106355092B CN106355092B (zh) 2019-05-03

Family

ID=56881112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610798554.XA Active CN106355092B (zh) 2015-10-22 2016-08-31 用于优化反病毒测定的系统和方法

Country Status (5)

Country Link
US (1) US9444832B1 (zh)
EP (1) EP3159822B1 (zh)
JP (1) JP6313384B2 (zh)
CN (1) CN106355092B (zh)
RU (1) RU2606559C1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572663B1 (en) * 2016-03-09 2020-02-25 Symantec Corporation Systems and methods for identifying malicious file droppers
KR101893518B1 (ko) * 2016-10-28 2018-10-04 한국전자통신연구원 제어 시스템의 업데이트 관리 장치, 업데이트 검증 장치 및 그 방법
US11481492B2 (en) 2017-07-25 2022-10-25 Trend Micro Incorporated Method and system for static behavior-predictive malware detection
US10460108B1 (en) 2017-08-16 2019-10-29 Trend Micro Incorporated Method and system to identify and rectify input dependency based evasion in dynamic analysis
RU2702053C1 (ru) * 2018-12-28 2019-10-03 Акционерное общество "Лаборатория Касперского" Способ снижения нагрузки на сканирующую подсистему путем дедупликации сканирования файлов
US11636204B2 (en) 2019-10-01 2023-04-25 Acronis International Gmbh Systems and methods for countering removal of digital forensics information by malicious software
CN112149113B (zh) * 2020-11-26 2021-06-08 飞天诚信科技股份有限公司 一种iOS应用反钩子的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050022016A1 (en) * 2002-12-12 2005-01-27 Alexander Shipp Method of and system for heuristically detecting viruses in executable code
CN1648812A (zh) * 2004-01-30 2005-08-03 微软公司 无代码文件的检测
CN1983295A (zh) * 2005-12-12 2007-06-20 北京瑞星国际软件有限公司 病毒识别方法及装置
EP2447859A1 (en) * 2010-11-01 2012-05-02 Kaspersky Lab Zao System and method for acceleration of malware detection using antivirus cache
CN104077528A (zh) * 2014-06-25 2014-10-01 珠海市君天电子科技有限公司 病毒检测方法、装置以及终端
US9043907B1 (en) * 2014-04-18 2015-05-26 Kaspersky Lab Zao System and methods for control of applications using preliminary file filtering

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5826013A (en) 1995-09-28 1998-10-20 Symantec Corporation Polymorphic virus detection module
US5696822A (en) 1995-09-28 1997-12-09 Symantec Corporation Polymorphic virus detection module
US6717588B1 (en) * 1998-08-14 2004-04-06 Microsoft Corporation Multilingual user interface for an operating system
GB2400933B (en) 2003-04-25 2006-11-22 Messagelabs Ltd A method of, and system for, heuristically detecting viruses in executable code by detecting files which have been maliciously altered
US7523500B1 (en) 2004-06-08 2009-04-21 Symantec Corporation Filtered antivirus scanning
US20060129603A1 (en) * 2004-12-14 2006-06-15 Jae Woo Park Apparatus and method for detecting malicious code embedded in office document
US7490352B2 (en) 2005-04-07 2009-02-10 Microsoft Corporation Systems and methods for verifying trust of executable files
US20070006300A1 (en) * 2005-07-01 2007-01-04 Shay Zamir Method and system for detecting a malicious packed executable
US8161548B1 (en) * 2005-08-15 2012-04-17 Trend Micro, Inc. Malware detection using pattern classification
US9235703B2 (en) 2005-09-30 2016-01-12 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virus scanning in a computer system
US9055093B2 (en) 2005-10-21 2015-06-09 Kevin R. Borders Method, system and computer program product for detecting at least one of security threats and undesirable computer files
US20080115219A1 (en) * 2006-11-13 2008-05-15 Electronics And Telecommunications Research Apparatus and method of detecting file having embedded malicious code
US20080127038A1 (en) * 2006-11-23 2008-05-29 Electronics And Telecommunications Research Institute Apparatus and method for detecting self-executable compressed file
US20090013405A1 (en) 2007-07-06 2009-01-08 Messagelabs Limited Heuristic detection of malicious code
JP2010009269A (ja) * 2008-06-26 2010-01-14 Iwate Univ コンピュータウィルス検出装置、コンピュータウィルス検出方法及びコンピュータウィルス検出プログラム
US8181251B2 (en) 2008-12-18 2012-05-15 Symantec Corporation Methods and systems for detecting malware
US8621625B1 (en) 2008-12-23 2013-12-31 Symantec Corporation Methods and systems for detecting infected files
US8745743B2 (en) 2009-06-09 2014-06-03 F-Secure Oyj Anti-virus trusted files database
GB2471716A (en) * 2009-07-10 2011-01-12 F Secure Oyj Anti-virus scan management using intermediate results
HUE038791T2 (hu) * 2009-07-29 2018-11-28 Reversinglabs Corp Hordozható futtatható fájl elemzése
US8955131B2 (en) * 2010-01-27 2015-02-10 Mcafee Inc. Method and system for proactive detection of malicious shared libraries via a remote reputation system
CN101924761B (zh) 2010-08-18 2013-11-06 北京奇虎科技有限公司 一种依据白名单进行恶意程序检测的方法
WO2012071989A1 (zh) * 2010-11-29 2012-06-07 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置
US8549647B1 (en) 2011-01-14 2013-10-01 The United States Of America As Represented By The Secretary Of The Air Force Classifying portable executable files as malware or whiteware
RU2491623C1 (ru) 2012-02-24 2013-08-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки файлов на доверенность
CN103067364B (zh) * 2012-12-21 2015-11-25 华为技术有限公司 病毒检测方法及设备
US10409987B2 (en) 2013-03-31 2019-09-10 AO Kaspersky Lab System and method for adaptive modification of antivirus databases
RU2541120C2 (ru) 2013-06-06 2015-02-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных исполняемых файлов на основании сходства ресурсов исполняемых файлов
RU2568285C2 (ru) * 2013-09-30 2015-11-20 Закрытое акционерное общество "Лаборатория Касперского" Способ и система анализа работы правил обнаружения программного обеспечения
US9769189B2 (en) 2014-02-21 2017-09-19 Verisign, Inc. Systems and methods for behavior-based automated malware analysis and classification
US9015814B1 (en) 2014-06-10 2015-04-21 Kaspersky Lab Zao System and methods for detecting harmful files of different formats

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050022016A1 (en) * 2002-12-12 2005-01-27 Alexander Shipp Method of and system for heuristically detecting viruses in executable code
CN1648812A (zh) * 2004-01-30 2005-08-03 微软公司 无代码文件的检测
CN1983295A (zh) * 2005-12-12 2007-06-20 北京瑞星国际软件有限公司 病毒识别方法及装置
EP2447859A1 (en) * 2010-11-01 2012-05-02 Kaspersky Lab Zao System and method for acceleration of malware detection using antivirus cache
US9043907B1 (en) * 2014-04-18 2015-05-26 Kaspersky Lab Zao System and methods for control of applications using preliminary file filtering
CN104077528A (zh) * 2014-06-25 2014-10-01 珠海市君天电子科技有限公司 病毒检测方法、装置以及终端

Also Published As

Publication number Publication date
EP3159822A2 (en) 2017-04-26
EP3159822A3 (en) 2017-07-05
EP3159822B1 (en) 2018-07-18
CN106355092B (zh) 2019-05-03
RU2606559C1 (ru) 2017-01-10
US9444832B1 (en) 2016-09-13
JP6313384B2 (ja) 2018-04-18
JP2017097842A (ja) 2017-06-01

Similar Documents

Publication Publication Date Title
CN106355092B (zh) 用于优化反病毒测定的系统和方法
CN103886252B (zh) 受信进程地址空间中执行的软件代码的恶意性的选择评估
US9418227B2 (en) Detecting malicious software
JP5972401B2 (ja) 攻撃分析システム及び連携装置及び攻撃分析連携方法及びプログラム
Carmony et al. Extract Me If You Can: Abusing PDF Parsers in Malware Detectors.
Rathnayaka et al. An efficient approach for advanced malware analysis using memory forensic technique
US20140181805A1 (en) System and method for establishing rules for filtering insignificant events for analysis of software program
CN109271780A (zh) 机器学习恶意软件检测模型的方法、系统和计算机可读介质
US20090133125A1 (en) Method and apparatus for malware detection
JP2018041438A5 (zh)
CN103065094A (zh) 用于检测目标为计算机引导过程的恶意软件的系统和方法
CN109684072A (zh) 基于机器学习模型管理用于检测恶意文件的计算资源的系统和方法
Li et al. A novel approach for software vulnerability classification
US10412101B2 (en) Detection device, detection method, and detection program
CN105760787A (zh) 用于检测随机存取存储器中的恶意代码的系统及方法
CN105184169A (zh) Windows操作环境下基于插桩工具的漏洞检测方法
US10701087B2 (en) Analysis apparatus, analysis method, and analysis program
CN109558207A (zh) 在虚拟机中形成用于进行文件的防病毒扫描的日志的系统和方法
CN106156621A (zh) 一种检测虚拟机逃逸的方法及装置
KR101228902B1 (ko) 클라우드 컴퓨팅 기반 악성코드 분석 지원 시스템
Sun et al. Blockchain-based automated container cloud security enhancement system
CN116226865A (zh) 云原生应用的安全检测方法、装置、服务器、介质及产品
Gilbert et al. Dymo: Tracking dynamic code identity
Sykosch et al. Hunting observable objects for indication of compromise
RU2514139C1 (ru) Система и способ создания правил фильтрации незначительных событий для анализа протоколов событий

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant