CN111737693A - 确定恶意软件特征的方法、恶意软件的检测方法及装置 - Google Patents

确定恶意软件特征的方法、恶意软件的检测方法及装置 Download PDF

Info

Publication number
CN111737693A
CN111737693A CN202010388744.0A CN202010388744A CN111737693A CN 111737693 A CN111737693 A CN 111737693A CN 202010388744 A CN202010388744 A CN 202010388744A CN 111737693 A CN111737693 A CN 111737693A
Authority
CN
China
Prior art keywords
longest common
character string
network data
json
determining
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
CN202010388744.0A
Other languages
English (en)
Other versions
CN111737693B (zh
Inventor
刘洋
卞超轶
董颖
陈亘
李永泉
李�杰
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.)
Beijing Venus Information Security Technology Co Ltd
Venustech Group Inc
Original Assignee
Beijing Venus Information Security Technology Co Ltd
Venustech Group Inc
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 Beijing Venus Information Security Technology Co Ltd, Venustech Group Inc filed Critical Beijing Venus Information Security Technology Co Ltd
Priority to CN202010388744.0A priority Critical patent/CN111737693B/zh
Publication of CN111737693A publication Critical patent/CN111737693A/zh
Application granted granted Critical
Publication of CN111737693B publication Critical patent/CN111737693B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例公开了一种确定恶意软件特征的方法、恶意软件的检测方法及装置,其中方法之一包括:根据最长公共子串算法确定一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。如此,能够自动提取恶意软件的特征,大大提升了工作效率。

Description

确定恶意软件特征的方法、恶意软件的检测方法及装置
技术领域
本发明实施例涉及网络安全技术,尤指一种确定恶意软件特征的方法、恶意软件的检测方法及装置。
背景技术
近些年来,恶意软件愈演愈烈,企业风险日益加剧。其中僵木蠕类的恶意软件具有隐蔽性高、爆发速度快、影响范围广等特点,对社会造成极大的危害。僵木蠕是僵尸网络、木马、蠕虫病毒的统称,黑客常常利用僵尸网络发起DDOS(Distributed Denial of Service,分布式阻断服务)攻击,利用蠕虫传播僵尸网络,利用各种木马后门向特定目标或组织发起APT(高级持续性威胁,Advanced Persistent Threat)攻击。在真实攻击中,一来由于各种终端软件容易获得,二来基于免杀成本的考虑,攻击者往往更重视僵木蠕病毒静态特征和恶意行为的修改,比如通过加壳加花、代码混淆等手段绕过静态检测,通过注入替换合法进程内存、白加黑等手段绕过主动防御检测功能等。由于当前主机安全软件大多忽视了网络层的入侵检测,且基于要修改源代码等免杀成本的考虑,大多数黑客忽视了僵木蠕通讯协议的修改。
在当前实际业务开展中,对于僵木蠕特征的提取主要依靠安全研究人员逆向分析样本代码,从代码中获得样本通讯协议中相对固定的部分作为特征,并按照相应产品的语言编写成规则添加到产品中。一般情况下,一个中高级分析员每两天可以分析完一个病毒,但分析完毕后又有可能由于产品引擎不支持或者协议被加密等原因导致不能添加特征到产品中,白白浪费工时和资源。
因此,现有技术中尚没有能够自动提取恶意软件特征的方案。
发明内容
本发明实施例提供了一种确定恶意软件特征的方法,包括:
将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。
本发明实施例还提供了一种电子装置,包括:
抓取单元,设置为将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
解析单元,设置为对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
第一确定单元,设置为根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
组成单元,设置为对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
第二确定单元,设置为对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
第三确定单元,设置为根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征
本发明实施例提供的上述技术方案,能够自动提取恶意软件的特征,大大提升了工作效率。
本发明实施例还提供了一种恶意软件的检测方法,包括:
将待检测软件在一个操作系统中运行,在运行过程中抓取一个或者多个第四网络数据包;
对抓取的全部第四网络数据包中的每一个第四网络数据包进行协议解析得到对应的第四json文件;
当恶意软件的特征包含的一个或者多个最长公共子串中至少一个最长公共子串包含在第四json文件中时,确定该待检测文件为恶意软件;
其中,所述恶意软件的特征是通过上述确定恶意软件特征的方法确定的。
本发明实施例提供的上述技术方案,能够自动检测恶意软件,大大提升了检测效率。
本发明实施例还提供了一种电子装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述确定恶意软件特征的方法,或者上述述恶意软件的检测方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现上述确定恶意软件特征的方法,或者上述恶意软件的检测方法。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本发明一实施例提供的一种确定恶意软件特征的方法的流程示意图;
图2为本发明另一实施例提供的一种确定恶意软件特征的方法的流程示意图;
图3为本发明一实施例中提供的一种确定恶意软件特征的方法的流程示意图;
图4为本发明另一实施例提供的一种确定恶意软件特征的方法的流程示意图;
图5为本发明另一实施例提供的一种确定恶意软件特征的方法的流程示意图;
图6为本发明一实施例提供的一种恶意软件的检测方法的流程示意图;
图7为本发明一实施例提供的一种电子装置的结构示意图;
图8为本发明一实施例提供的另一种电子装置的结构示意图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
图1为本发明一实施例提供的一种确定恶意软件特征的方法的流程示意图,如图1所示,该方法包括:
步骤101,将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
步骤102,对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
步骤103,根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
步骤104,对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
步骤105,对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
步骤106,根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。
在一示例中,所述根据相似度算法确定全部第一json文件中最相似的两个第一json文件,包括:
使用simhash以及海明距离确定全部第一json文件中距离最近的两个第一json文件。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
将所述恶意软件分别在与所述两个或者两个以上操作系统不同的一个或者多个其他操作系统中运行,在每一个其他操作系统的运行过程中分别抓取一个或者多个第二网络数据包;
对抓取的全部第二网络数据包中的每一个第二网络数据包进行协议解析得到对应的第二json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串包含在每个所述其他操作系统对应的第二json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征还包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对包含在每个所述其他操作系统对应的第二json文件中的一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。。
在一示例中,所述根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,包括:
对所述一个或者多个字符串二元组中每一个字符串分别执行如下操作:通过搜索得到该字符串中存在的主机信息,计算出主机信息之间的间隔符,利用该间隔符对该字符串进行分句;
通过最长公共子串算法求出每一个字符串二元组中匹配的字符串,判断该匹配的字符串中是否包含间隔符,如果包含则截取出只包含单个间隔符的匹配串作为最长公共子串;如果不包含则直接将该匹配的字符串作为最长公共子串。
本发明实施例提供的技术方案,能够自动提取恶意软件的特征,大大提升了工作效率。
图2为本发明一实施例提供的一种确定恶意软件特征的方法的流程示意图,如图2所示,该方法包括:
步骤201,将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
在一示例中,可以将恶意软件在三个操作系统中运行,如Windows 7中文版、Windows 7英文版、Windows 10中文版;并分别在这三个操作系统运行过程中,分别抓取一个或者多个第一网络数据包,例如,将恶意软件在Windows 7中文版运行过程中抓取5个第一网络数据包,将恶意软件在Windows 7英文版运行过程中抓取7个第一网络数据包,将恶意软件在Windows 10中文版运行过程中抓取9个第一网络数据包。
步骤202,对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第一网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第一json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将恶意软件在Windows 7中文版运行过程中抓取5个第一网络数据包,将恶意软件在Windows 7英文版运行过程中抓取7个第一网络数据包,将恶意软件在Windows 10中文版运行过程中抓取9个第一网络数据包;则对全部5+7+9=21个第一网络数据包进行协议解析可以得到21个第一json文件。
步骤203,根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
在一示例中,所述根据相似度算法确定全部json文件中最相似的两个第一json文件,包括:
使用simhash以及海明距离确定全部第一json文件中距离最近的两个第一json文件。
例如,如上所述得到21个第一json文件;计算该21个第一json文件对应simhash的海明距离,构建距离矩阵,求出距离最近的两个第一json文件。
步骤204,对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
例如,距离最近的两个第一json文件1、2,文件1有2个字符串,文件2有3个字符串,分别由文件1中的一个字符串和文件2中的一个字符串两两组成一个字符串二元组,那么其共存着3*2=6个字符串二元组。
步骤205,对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
例如,距离最近的两个第一json文件1、2,文件1有2个字符串,文件2有3个字符串,那么其共存着3*2=6个字符串二元组,计算每一个字符串二元组中两个字符串的莱文斯坦比,则可以得到6个莱文斯坦比,例如分别为95%、90%、85%、75%、70%、60%;假设预设阈值为80%,则莱文斯坦比超过阈值80%的字符串共有3个。
步骤206,根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串;
在一示例中,对于确定的每一个字符串二元组中的字符串,可以通过搜索得到该字符串中可能存在的主机信息,计算出若干主机信息之间的间隔符,利用该该将间隔符对该字符串进行分句;然后通过最长公共子串算法求出每一个字符串二元组中匹配的字符串,判断该匹配的字符串中是否包含间隔符,如果包含则截取出只包含单个间隔符的匹配串作为最长公共子串;如果不包含则。
步骤207,将所述恶意软件分别在与所述两个或者两个以上操作系统不同的一个或者多个其他操作系统中运行,在每一个其他操作系统的运行过程中分别抓取一个或者多个第二网络数据包;
在一示例中,可以将恶意软件在其他三个操作系统中运行,如Linux、iOS、Android等操作系统;并分别在这三个操作系统运行过程中,分别抓取一个或者多个第二网络数据包,例如,将恶意软件在Linux运行过程中抓取5个第二网络数据包,将恶意软件在iOS运行过程中抓取7个第二网络数据包,将恶意软件在Android运行过程中抓取9个第二网络数据包。
步骤208,对抓取的全部第二网络数据包中的每一个第二网络数据包进行协议解析得到对应的第二json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第二网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第二json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将恶意软件在Linux运行过程中抓取5个第二网络数据包,将恶意软件在iOS运行过程中抓取7个第二网络数据包,将恶意软件在Android运行过程中抓取9个第二网络数据包;则对全部5+7+9=21个第二网络数据包进行协议解析可以得到21个第二json文件。
步骤209,对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:当该最长公共子串包含在每个所述其他操作系统对应的第二json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,当该最长公共子串没有包含在每个所述其他操作系统对应的第二json文件中时,该最长公共子串不作为所述恶意软件的特征。
例如,将恶意软件在Linux运行过程中抓取5个第二网络数据包,则Linux对应有5个第二json文件;将恶意软件在iOS运行过程中抓取7个第二网络数据包,则iOS对应有7个第二json文件;将恶意软件在Android运行过程中抓取9个第二网络数据包;则Android对应有9个第二json文件。则判断一个最长公共子串是否包含在Linux对应的5个第二json文件中,只要这5个第二json文件中任意一个第二json文件包含该最长公共子串就算该最长公共子串包含在该Linux对应的第二json文件中,则将该最长公共子串作为所述恶意软件的特征;iOS、Android的判断过程也是如此。又例如,判断一个最长公共子串只要不包含在Linux、iOS、Android任一个对应的第二json文件中,则该最长公共子串不作为所述恶意软件的特征。
本步骤的目的是为了将该恶意软件的特征适用于尽可能多的操作系统环境中,因为如果部分特征并不适用于多个操作系统环境,即有可能是无效特征。如图3所示,可以将恶意软件在多个操作系统并行运行并抓取网络包,根据不同协议提取网络特征,比如,针对两个操作系统环境1、2提取四种协议HTTP、DNS、TCP、UDP对应的网络特征作为待验证的网络特征,并在操作系统环境3-N中分别验证,只有验证通过才能作为可用网络特征,即才可以作为恶意软件的特征。
本发明实施例提供的技术方案,通过判断确定的最长公共子串是否包含在其他操作系统的json文件,从而能够验证确定的最长公共子串是否适用于其他操作系统,从而不仅能够自动提取恶意软件的特征,而且提升了恶意软件特征的准确性,能够使得将该恶意软件的特征适用于尽可能多的操作系统环境。
在本发明的另一实施例中,在上一实施例的基础上,如图4所示,还包括:
步骤210,在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
其中,上述正常运行是指没有嵌入恶意软件的前提下的操作系统的常规运行。
在一示例中,可以将正常软件在一个或者多个操作系统中正常运行,如Windows 7中文版、Windows 7英文版、Windows 10中文版、Linux、iOS、Android等操作系统;并分别在一个或者多个操作系统运行过程中,分别抓取一个或者多个第三网络数据包,例如,将正常软件在Windows 7中文版正常运行过程中抓取5个第三网络数据包,将正常软件在iOS运行过程中抓取7个第三网络数据包,将正常软件在Android运行过程中抓取9个第三网络数据包。
步骤211,对抓取的全部第三网络数据包中的每一个第三网络数据包分别进行协议解析得到对应的第三json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第三网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第三json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将正常软件在Windows 7中文版运行过程中抓取5个第二网络数据包,将正常软件在iOS运行过程中抓取7个第二网络数据包,将正常软件在Android运行过程中抓取9个第二网络数据包;则对全部5+7+9=21个第三网络数据包进行协议解析可以得到21个第三json文件。
步骤212,对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,当该最长公共子串包含在任一个操作系统对应的第三json文件中时,该最长公共子串不作为所述恶意软件的特征。
例如,将正常软件在Windows 7中文版运行过程中抓取5个第三网络数据包,则Windows 7中文版对应有5个第三json文件;将正常软件在iOS运行过程中抓取7个第三网络数据包,则iOS对应有7个第三json文件;将正常软件在Android运行过程中抓取9个第三网络数据包;则Android对应有9个第三json文件。则判断一个最长公共子串是否包含在Windows 7中文版对应的5个第三json文件中,只要这5个第二json文件中任意一个第三json文件都包含该最长公共子串,则该最长公共子串不为正常流量特征,可以作为恶意软件的特征;iOS、Android的判断过程也是如此。只要该最长公共子串包含在Windows 7中文版、iOS、Android任一个操作系统对应的第三json文件中时,则该最长公共子串为正常流量特征,不作为恶意软件的特征。
本步骤中的目的是为了避免将正常流量特征作为恶意软件的特征,提升恶意软件特征的准确度。
需要说明地是,上述步骤207-209与步骤210-212不存在固定的前后顺序。
本发明实施例提供的技术方案,通过判断确定的最长公共子串是否包含在其他操作系统的正常json文件中,从而能够验证确定的最长公共子串是否是正常流量特征,从而不仅能够自动提取恶意软件的特征,而且提升了恶意软件特征的准确性。
图5为本发明另一实施例提供的一种确定恶意软件特征的方法的流程示意图,如图5所示,该方法包括:
步骤501,将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
在一示例中,可以将恶意软件在三个操作系统中运行,如Windows 7中文版、Windows 7英文版、Windows 10中文版;并分别在这三个操作系统运行过程中,分别抓取一个或者多个第一网络数据包,例如,将恶意软件在Windows 7中文版运行过程中抓取5个第一网络数据包,将恶意软件在Windows 7英文版运行过程中抓取7个第一网络数据包,将恶意软件在Windows 10中文版运行过程中抓取9个第一网络数据包。
步骤502,对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第一网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第一json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将恶意软件在Windows 7中文版运行过程中抓取5个第一网络数据包,将恶意软件在Windows 7英文版运行过程中抓取7个第一网络数据包,将恶意软件在Windows 10中文版运行过程中抓取9个第一网络数据包;则对全部5+7+9=21个第一网络数据包进行协议解析可以得到21个第一json文件。
步骤503,根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
在一示例中,所述根据相似度算法确定全部json文件中最相似的两个第一json文件,包括:
使用simhash以及海明距离确定全部第一json文件中距离最近的两个第一json文件。
例如,如上所述得到21个第一json文件;计算该21个第一json文件对应simhash的海明距离,构建距离矩阵,求出距离最近的两个第一json文件。
步骤504,对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
例如,距离最近的两个第一json文件1、2,文件1有2个字符串,文件2有3个字符串,分别由文件1中的一个字符串和文件2中的一个字符串两两组成一个字符串二元组,那么其共存着3*2=6个字符串二元组。
步骤505,对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
例如,距离最近的两个第一json文件1、2,文件1有2个字符串,文件2有3个字符串,那么其共存着3*2=6个字符串二元组,计算每一个字符串二元组中两个字符串的莱文斯坦比,则可以得到6个莱文斯坦比,例如分别为95%、90%、85%、75%、70%、60%;假设预设阈值为80%,则莱文斯坦比超过阈值80%的字符串共有3个。
步骤506,根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串;
在一示例中,对于确定的每一个字符串二元组中的字符串,可以通过搜索得到该字符串中可能存在的主机信息,计算出若干主机信息之间的间隔符,利用该该将间隔符对该字符串进行分句;然后通过最长公共子串算法求出每一个字符串二元组中匹配的字符串,判断该匹配的字符串中是否包含间隔符,如果包含则截取出只包含单个间隔符的匹配串作为最长公共子串;如果不包含则。
步骤507,在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
其中,上述正常运行是指没有嵌入恶意软件的前提下的操作系统的常规运行。
在一示例中,可以将正常软件在一个或者多个操作系统中正常运行,如Windows 7中文版、Windows 7英文版、Windows 10中文版、Linux、iOS、Android等操作系统;并分别在一个或者多个操作系统运行过程中,分别抓取一个或者多个第三网络数据包,例如,将正常软件在Windows 7中文版正常运行过程中抓取5个第三网络数据包,将正常软件在iOS运行过程中抓取7个第三网络数据包,将正常软件在Android运行过程中抓取9个第三网络数据包。
步骤508,对抓取的全部第三网络数据包中的每一个第三网络数据包分别进行协议解析得到对应的第三json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第三网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第三json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将正常软件在Windows 7中文版运行过程中抓取5个第二网络数据包,将正常软件在iOS运行过程中抓取7个第二网络数据包,将正常软件在Android运行过程中抓取9个第二网络数据包;则对全部5+7+9=21个第三网络数据包进行协议解析可以得到21个第三json文件。
步骤509,对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,当该最长公共子串包含在任一个操作系统对应的第三json文件中时,该最长公共子串不作为所述恶意软件的特征。
例如,将正常软件在Windows 7中文版运行过程中抓取5个第三网络数据包,则Windows 7中文版对应有5个第三json文件;将正常软件在iOS运行过程中抓取7个第三网络数据包,则iOS对应有7个第三json文件;将正常软件在Android运行过程中抓取9个第三网络数据包;则Android对应有9个第三json文件。则判断一个最长公共子串是否包含在Windows 7中文版对应的5个第三json文件中,只要这5个第二json文件中任意一个第三json文件都包含该最长公共子串,则该最长公共子串不为正常流量特征,可以作为恶意软件的特征;iOS、Android的判断过程也是如此。只要该最长公共子串包含在Windows 7中文版、iOS、Android任一个操作系统对应的第三json文件中时,则该最长公共子串为正常流量特征,不作为恶意软件的特征。
本步骤中的目的是为了避免将正常流量特征作为恶意软件的特征,提升恶意软件特征的准确度。
本发明实施例提供的技术方案,通过判断确定的最长公共子串是否包含在其他操作系统的正常json文件中,从而能够验证确定的最长公共子串是否是正常流量特征,从而不仅能够自动提取恶意软件的特征,而且提升了恶意软件特征的准确性。
在上述实施例的基础上,本发明一实施例还提供了一种恶意软件的检测方法,如图6所示,该方法包括:
步骤601,将待检测软件在一个操作系统中运行,在运行过程中抓取一个或者多个第四网络数据包;
例如,将待检测软件在Windows 7中文版运行过程中抓取5个第一网络数据包;或者,将待检测软件在Windows 7英文版运行过程中抓取7个第一网络数据包;或者将待检测软件在Windows 10中文版运行过程中抓取9个第一网络数据包。
步骤602,对抓取的全部第四网络数据包中的每一个第四网络数据包进行协议解析得到对应的第四json文件;
其中,由于数据包在网络传输的过程中会进行多种协议的封装,例如,TCP/IP协议数据包,一般由应用层、传输层、网络层、数据链路层封装而成;因此对网络数据包进行协议解析,可以得到包含不同协议数据的json(JavaScript Object Notation,Js对象标记)文件。例如,对第四网络数据包进行协议解析,可以得到包含不同协议(例如HTTP(HyperTextTransfer Protocol,超文本传输协议)、DNS(域名系统,Domain Name System)、TCP(传输控制协议,Transmission Control Protocol)、UDP(用户数据报协议,User DatagramProtocol)等)数据的第四json(JavaScript Object Notation,Js对象标记)文件。其中,对网络数据包进行协议解析的实现为现有技术在此不再赘述。
例如,将待检测软件在Windows 7中文版运行过程中抓取的5个第四网络数据包分别进行协议解析可以得到5个第四json文件。
步骤603,当恶意软件的特征包含的一个或者多个最长公共子串中至少一个最长公共子串包含在第四json文件中时,确定该待检测文件为恶意软件。
在一示例中,当恶意软件的特征包含的一个或者多个最长公共子串中全部最长公共子串没有包含在第四json文件中时,确定该待检测文件为正常软件。
在一示例中,判断恶意软件的特征一个或者多个最长公共子串是否包含在第四json文件中,包括:
针对每一个最长公共子串执行如下操作:
当该最长公共子串包含在任一个第四json文件中时,表示该最长公共子串包含在第四json文件中;
当该最长公共子串没有包含在全部第四json文件中时,表示该最长公共子串没有包含在第四json文件中。
例如,将正常软件在Windows 7中文版运行过程中抓取5个第四网络数据包,则Windows 7中文版对应有5个第四json文件。则判断一个最长公共子串是否包含在Windows7中文版对应的5个第四json文件中,只要这5个第四json文件中任意一个第四json文件包含该最长公共子串就表示该待检测软件为恶意软件;否则,只要这5个第四json文件全部都不包含该最长公共子串就表示该待检测软件为正常软件。
本发明实施例提供的技术方案,能够自动检测恶意软件。
图7为本发明一实施例提供的一种电子装置的结构示意图,如图7所示,该装置包括:
抓取单元,设置为将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
解析单元,设置为对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
第一确定单元,设置为根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
组成单元,设置为对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
第二确定单元,设置为对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
第三确定单元,设置为根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。
在一示例中,所述根据相似度算法确定全部第一json文件中最相似的两个第一json文件,包括:
使用simhash以及海明距离确定全部第一json文件中距离最近的两个第一json文件。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
将所述恶意软件分别在与所述两个或者两个以上操作系统不同的一个或者多个其他操作系统中运行,在每一个其他操作系统的运行过程中分别抓取一个或者多个第二网络数据包;
对抓取的全部第二网络数据包中的每一个第二网络数据包进行协议解析得到对应的第二json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串包含在每个所述其他操作系统对应的第二json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征还包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对包含在每个所述其他操作系统对应的第二json文件中的一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
在一示例中,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。。
在一示例中,所述根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,包括:
对所述一个或者多个字符串二元组中每一个字符串分别执行如下操作:通过搜索得到该字符串中存在的主机信息,计算出主机信息之间的间隔符,利用该间隔符对该字符串进行分句;
通过最长公共子串算法求出每一个字符串二元组中匹配的字符串,判断该匹配的字符串中是否包含间隔符,如果包含则截取出只包含单个间隔符的匹配串作为最长公共子串;如果不包含则直接将该匹配的字符串作为最长公共子串。
本发明实施例提供的技术方案,能够自动提取恶意软件的特征,大大提升了工作效率。
图8为本发明一实施例提供的另一种电子装置的结构示意图,如图8所示,该装置包括:
抓取单元,设置为将待检测软件在一个操作系统中运行,在运行过程中抓取一个或者多个第四网络数据包;
解析单元,设置为对抓取的全部第四网络数据包中的每一个第四网络数据包进行协议解析得到对应的第四json文件;
确定单元,设置为当恶意软件的特征包含的一个或者多个最长公共子串中至少一个最长公共子串包含在第四json文件中时,确定该待检测文件为恶意软件;
其中,所述恶意软件的特征是通过上述任一项所述的确定恶意软件特征的方法确定的。
本发明实施例还提供了一种电子装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一项所述确定恶意软件特征的方法,或者上述所述恶意软件的检测方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现上述任一项所述确定恶意软件特征的方法,或者上述所述恶意软件的检测方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (10)

1.一种确定恶意软件特征的方法,包括:
将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。
2.根据权利要求1所述的方法,其特征在于,所述根据相似度算法确定全部第一json文件中最相似的两个第一json文件,包括:
使用simhash以及海明距离确定全部第一json文件中距离最近的两个第一json文件。
3.根据权利要求1所述的方法,其特征在于,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
将所述恶意软件分别在与所述两个或者两个以上操作系统不同的一个或者多个其他操作系统中运行,在每一个其他操作系统的运行过程中分别抓取一个或者多个第二网络数据包;
对抓取的全部第二网络数据包中的每一个第二网络数据包进行协议解析得到对应的第二json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串包含在每个所述其他操作系统对应的第二json文件中时,将该最长公共子串作为所述恶意软件的特征。
4.根据权利要求3所述的方法,其特征在于,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征还包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对包含在每个所述其他操作系统对应的第二json文件中的一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
5.根据权利要求1所述的方法,其特征在于,所述根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征包括:
在一个或者多个操作系统正常运行过程中,分别抓取一个或者多个第三网络数据包;
对抓取的全部第三网络数据包中的每一个第三网络数据包进行协议解析得到对应的第三json文件;
对所述一个或者多个最长公共子串中的每一个最长公共子串分别执行如下操作:
当该最长公共子串没有包含在每一个操作系统对应的第三json文件中时,将该最长公共子串作为所述恶意软件的特征。
6.根据权利要求1所述的方法,其特征在于,所述根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,包括:
对所述一个或者多个字符串二元组中每一个字符串分别执行如下操作:通过搜索得到该字符串中存在的主机信息,计算出主机信息之间的间隔符,利用该间隔符对该字符串进行分句;
通过最长公共子串算法求出每一个字符串二元组中匹配的字符串,判断该匹配的字符串中是否包含间隔符,如果包含则截取出只包含单个间隔符的匹配串作为最长公共子串;如果不包含则直接将该匹配的字符串作为最长公共子串。
7.一种恶意软件的检测方法,包括:
将待检测软件在一个操作系统中运行,在运行过程中抓取一个或者多个第四网络数据包;
对抓取的全部第四网络数据包中的每一个第四网络数据包进行协议解析得到对应的第四json文件;
当恶意软件的特征包含的一个或者多个最长公共子串中至少一个最长公共子串包含在第四json文件中时,确定该待检测文件为恶意软件;
其中,所述恶意软件的特征是通过如权利要求1-6中任一项所述确定恶意软件特征的方法确定的。
8.一种电子装置,其特征在于,包括:
抓取单元,设置为将恶意软件分别在两个或者两个以上操作系统中运行,在每一个操作系统的运行过程中分别抓取一个或者多个第一网络数据包;
解析单元,设置为对抓取的全部第一网络数据包中的每一个第一网络数据包分别进行协议解析得到对应的第一json文件;
第一确定单元,设置为根据相似度算法确定全部第一json文件中最相似的两个第一json文件;
组成单元,设置为对于所述最相似的两个第一json文件,将其中一个json文件中的每个字符串,和其中另一个json文件中的每个字符串,分别两两组成字符串二元组;
第二确定单元,设置为对于所述最相似的两个第一json文件所组成的全部字符串二元组,分别计算莱温斯坦比,确定莱文斯坦比超过预设阈值的一个或者多个字符串二元组;
第三确定单元,设置为根据最长公共子串算法确定所述一个或者多个字符串二元组中每一个字符串二元组中的最长公共子串,根据确定出的一个或者多个最长公共子串确定所述恶意软件的特征。
9.一种电子装置,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述确定恶意软件特征的方法,或者如权利要求7所述恶意软件的检测方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现如权利要求1-6任一项中所述确定恶意软件特征的方法,或者如权利要求7所述恶意软件的检测方法。
CN202010388744.0A 2020-05-09 2020-05-09 确定恶意软件特征的方法、恶意软件的检测方法及装置 Active CN111737693B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010388744.0A CN111737693B (zh) 2020-05-09 2020-05-09 确定恶意软件特征的方法、恶意软件的检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010388744.0A CN111737693B (zh) 2020-05-09 2020-05-09 确定恶意软件特征的方法、恶意软件的检测方法及装置

Publications (2)

Publication Number Publication Date
CN111737693A true CN111737693A (zh) 2020-10-02
CN111737693B CN111737693B (zh) 2023-06-02

Family

ID=72646726

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010388744.0A Active CN111737693B (zh) 2020-05-09 2020-05-09 确定恶意软件特征的方法、恶意软件的检测方法及装置

Country Status (1)

Country Link
CN (1) CN111737693B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110041179A1 (en) * 2009-08-11 2011-02-17 F-Secure Oyj Malware detection
WO2012027669A1 (en) * 2010-08-26 2012-03-01 Verisign, Inc. Method and system for automatic detection and analysis of malware
CN104243407A (zh) * 2013-06-13 2014-12-24 华为技术有限公司 一种恶意软件网络入侵检测特征码的生成方法和设备
CN104715194A (zh) * 2013-12-13 2015-06-17 北京启明星辰信息安全技术有限公司 恶意软件检测方法和装置
CN106650453A (zh) * 2016-12-30 2017-05-10 北京启明星辰信息安全技术有限公司 一种检测方法和装置
RU2634211C1 (ru) * 2016-07-06 2017-10-24 Общество с ограниченной ответственностью "Траст" Способ и система анализа протоколов взаимодействия вредоносных программ с центрами управления и выявления компьютерных атак
CN107423621A (zh) * 2017-03-21 2017-12-01 湘潭大学 一种针对恶意软件变种的高效识别算法
CN108347430A (zh) * 2018-01-05 2018-07-31 国网山东省电力公司济宁供电公司 基于深度学习的网络入侵检测和漏洞扫描方法及装置
US10192052B1 (en) * 2013-09-30 2019-01-29 Fireeye, Inc. System, apparatus and method for classifying a file as malicious using static scanning
US10462173B1 (en) * 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110041179A1 (en) * 2009-08-11 2011-02-17 F-Secure Oyj Malware detection
WO2012027669A1 (en) * 2010-08-26 2012-03-01 Verisign, Inc. Method and system for automatic detection and analysis of malware
CN104243407A (zh) * 2013-06-13 2014-12-24 华为技术有限公司 一种恶意软件网络入侵检测特征码的生成方法和设备
US10192052B1 (en) * 2013-09-30 2019-01-29 Fireeye, Inc. System, apparatus and method for classifying a file as malicious using static scanning
CN104715194A (zh) * 2013-12-13 2015-06-17 北京启明星辰信息安全技术有限公司 恶意软件检测方法和装置
US10462173B1 (en) * 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
RU2634211C1 (ru) * 2016-07-06 2017-10-24 Общество с ограниченной ответственностью "Траст" Способ и система анализа протоколов взаимодействия вредоносных программ с центрами управления и выявления компьютерных атак
CN106650453A (zh) * 2016-12-30 2017-05-10 北京启明星辰信息安全技术有限公司 一种检测方法和装置
CN107423621A (zh) * 2017-03-21 2017-12-01 湘潭大学 一种针对恶意软件变种的高效识别算法
CN108347430A (zh) * 2018-01-05 2018-07-31 国网山东省电力公司济宁供电公司 基于深度学习的网络入侵检测和漏洞扫描方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SIEGFRIED RASTHOFER,STEVEN ARZT,STEFAN TRILLER,MICHAEL PRADEL: "Making malory behave maliciously: targeted fuzzing of android execution environments", 《PROCEEDINGS OF THE 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING》, pages 300 - 311 *
刘洋: "基于提高触发效率的硬件木马检测方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 03, pages 138 - 130 *
黎恒: "基于二进制代码同源性的恶意程序检测技术的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 08, pages 138 - 102 *

Also Published As

Publication number Publication date
CN111737693B (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
CN107066883B (zh) 用于阻断脚本执行的系统和方法
Canali et al. Prophiler: a fast filter for the large-scale detection of malicious web pages
US10225280B2 (en) System and method for verifying and detecting malware
CN111737696A (zh) 一种恶意文件检测的方法、系统、设备及可读存储介质
US20200304521A1 (en) Bot Characteristic Detection Method and Apparatus
Chen et al. Worm epidemics in high-speed networks
CN110730175A (zh) 一种基于威胁情报的僵尸网络检测方法及检测系统
US8955138B1 (en) Systems and methods for reevaluating apparently benign behavior on computing devices
Li et al. Hunting the red fox online: Understanding and detection of mass redirect-script injections
CA2545916A1 (en) Apparatus method and medium for detecting payload anomaly using n-gram distribution of normal data
CN1885794A (zh) 用于识别和防止恶意入侵的系统和方法
Kaur et al. Automatic attack signature generation systems: A review
US11252167B2 (en) System and method for detecting and classifying malware
US7325185B1 (en) Host-based detection and prevention of malicious code propagation
US10645107B2 (en) System and method for detecting and classifying malware
CN113890758A (zh) 一种威胁情报方法、装置、设备及计算机存储介质
Hong et al. APT attack response system through AM-HIDS
CN112583827A (zh) 一种数据泄露检测方法及装置
CN111737693B (zh) 确定恶意软件特征的方法、恶意软件的检测方法及装置
CN115603985A (zh) 入侵检测方法及电子设备、存储介质
CN113824678B (zh) 处理信息安全事件的系统、方法和非暂时性计算机可读介质
CN111371917B (zh) 一种域名检测方法及系统
Samuel et al. Hunting malware: An example using gh0st
Judy et al. Detection and Classification of Malware for Cyber Security using Machine Learning Algorithms
CN114301689B (zh) 校园网络安全防护方法、装置、计算设备及存储介质

Legal Events

Date Code Title Description
PB01 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