CN114021138B - 一种同源分析知识库的构建方法、同源分析方法及装置 - Google Patents
一种同源分析知识库的构建方法、同源分析方法及装置 Download PDFInfo
- Publication number
- CN114021138B CN114021138B CN202210005828.0A CN202210005828A CN114021138B CN 114021138 B CN114021138 B CN 114021138B CN 202210005828 A CN202210005828 A CN 202210005828A CN 114021138 B CN114021138 B CN 114021138B
- Authority
- CN
- China
- Prior art keywords
- file
- character strings
- knowledge base
- meaningful
- homology
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/561—Virus type analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Virology (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种同源分析知识库的构建方法、同源分析方法及装置,该方法包括:收集种子样本文件;收集种子样本文件在沙箱中运行时产生的中间文件;对种子样本文件和中间文件进行格式识别,得到格式识别结果;基于格式识别结果,提取种子样本文件和中间文件中包含的文件字符串;对文件字符串进行过滤和分类,得到有意义字符串;获取与有意义字符串相对应的背景信息;根据有意义字符串和背景信息,构建同源分析知识库。可见,实施这种实施方式,能够创建一个用于分析恶意字符串的同源分析知识库,以使该同源分析数据库可以用于对恶意代码进行快速分类,从而实现高效确定恶意代码的来源,和追踪其归属的家族或组织的效果。
Description
技术领域
本申请涉及网络安全权领域,具体而言,涉及一种同源分析知识库的构建方法、同源分析方法及装置。
背景技术
传统上,为了应对基于恶意代码的网络攻击,业界开发了反病毒软件等安全产品。但是,随着恶意代码越来越多和越来越复杂,传统的分析方式胜任当前环境下的分析工作。因此,如何对恶意代码进行快速分类,并判断恶意代码来源,追踪其归属的家族或组织成为了当前急需解决的问题之一。
发明内容
本申请实施例的目的在于提供一种同源分析知识库的构建方法、同源分析方法及装置,能够创建一个用于分析恶意字符串的同源分析知识库,以使该同源分析数据库可以用于对恶意代码进行快速分类,从而实现高效确定恶意代码的来源,和追踪其归属的家族或组织的效果。
本申请实施例第一方面提供了一种同源分析知识库的构建方法,包括:
收集种子样本文件;
收集所述种子样本文件在沙箱中运行时产生的中间文件;
对所述种子样本文件和所述中间文件进行格式识别,得到格式识别结果;
基于所述格式识别结果,提取所述种子样本文件和所述中间文件中包含的文件字符串;
对所述文件字符串进行过滤和分类,得到有意义字符串;
获取与所述有意义字符串相对应的背景信息;
根据所述有意义字符串和所述背景信息,构建同源分析知识库。
在上述实现过程中,该方法可以获取种子样本文件,并通过沙箱允许种子样本文件得到中间文件;当获取到种子样本文件和中间文件时,对这两个文件进行格式识别,并获取与格式相对应的文件字符串;此后,该方法再在文件字符串中提取有意义字符串,并匹配对应的背景信息,从而使其能够用于构建同源分析知识库。可见,实施这种实施方式,能够创建一个字符串与家族组织之间的同源分析知识库,从而使得该同源分析数据库能够用于对恶意代码进行快速分类,同时还能够高效地确定恶意代码的来源,并追踪其归属的家族组织。
进一步地,所述收集种子样本文件的步骤包括:
收集原始样本文件;
对所述原始样本进行分类整理,得到种子样本文件;其中,所述种子样本文件包括所述种子样本文件为类库相关文件、壳相关文件、应用程序中的一种或者多种。
进一步地,所述对所述文件字符串进行过滤和分类,得到有意义字符串的步骤包括:
过滤字符串长度小于预设长度的所述文件字符串,得到剩余字符串;
通过预设的正则表达式对所述剩余字符串进行识别分类,得到有意义字符串。
进一步地,所述获取与所述有意义字符串相对应的背景信息的步骤包括:
判断所述有意义字符串是否在正常类库中出现;
若是,则获取对应类库的背景信息;
若否,则判断所述有意义字符串是否在壳中出现;
若是,则获取对应壳的背景信息;
若否,则获取对应常见应用名、对应木马家族名或对应APT组织名的背景信息。
本申请实施例第二方面提供了一种同源分析方法,所述同源分析方法中使用的同源分析知识库是通过本申请实施例第一方面中任一项所述的同源分析知识库的构建方法进行构建得到的,包括:
获取待分析样本文件;
收集所述待分析样本文件在沙箱中运行时产生的中间文件;
对所述待分析样本文件和所述中间文件进行格式识别,得到格式识别结果;
基于所述格式识别结果,提取所述待分析样本文件和所述中间文件中包含的文件字符串;
对所述文件字符串进行过滤和分类,得到有意义字符串;
根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果。
在上述实现过程中,该方法能够接收待分析样本文件,并通过同源分析知识库对该待分析样本文件进行相应的分析,从而高效的确定出待分析样本中的有意义字符串;同时,该方法还能够根据同源分析知识库判断有意义字符串是否为恶意代码,以及该有意义字符串从属于哪个木马家族或APT组织。
进一步地,所述根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果的步骤包括:
在所述同源分析知识库中对所述有意义字符串进行全词查询,并检测是否查询到匹配结果;
当查询到匹配结果时,获取所述匹配结果中的同源字符串;
根据所述有意义字符串和所述同源字符串之间的字符串命中数量进行计算,得到同源度;
根据所述同源字符串和所述同源度,确定与所述有意义字符串相匹配的同源结果。
本申请实施例第三方面提供了一种同源分析知识库的构建装置,所述同源分析知识库的构建装置包括:
第一收集单元,用于收集种子样本文件;
所述第一收集单元,还用于收集所述种子样本文件在沙箱中运行时产生的中间文件;
第一识别单元,用于对所述种子样本文件和所述中间文件进行格式识别,得到格式识别结果;
第一提取单元,用于基于所述格式识别结果,提取所述种子样本文件和所述中间文件中包含的文件字符串;
第一过滤单元,用于对所述文件字符串进行过滤和分类,得到有意义字符串;
第一获取单元,用于获取与所述有意义字符串相对应的背景信息;
第一构建单元,用于根据所述有意义字符串和所述背景信息,构建同源分析知识库。
本申请实施例第四方面提供了一种同源分析装置,同源分析装置中使用的同源分析知识库是通过本社区宁实施例第三方面所述的同源分析知识库的构建装置构建的,所述同源分析装置包括:
第二获取单元,用于获取待分析样本文件;
第二收集单元,用于收集所述待分析样本文件在沙箱中运行时产生的中间文件;
第二识别单元,用于对所述待分析样本文件和所述中间文件进行格式识别,得到格式识别结果;
第二提取单元,用于基于所述格式识别结果,提取所述待分析样本文件和所述中间文件中包含的文件字符串;
第二过滤单元,用于对所述文件字符串进行过滤和分类,得到有意义字符串;
第二确定单元,用于根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果。
本申请实施例第五方面提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例第一方面中任一项所述的同源分析知识库的构建方法。
本申请实施例第六方面提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例第一方面中任一项所述的同源分析知识库的构建方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种同源分析知识库的构建方法的流程示意图;
图2为本申请实施例提供的一种同源分析方法的流程示意图;
图3为本申请实施例提供的一种同源分析知识库的构建装置的结构示意图;
图4为本申请实施例提供的一种同源分析装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参看图1,图1为本申请实施例提供了一种同源分析知识库的构建方法的流程示意图。其中,该同源分析知识库的构建方法包括:
S101、收集种子样本文件。
本实施例中,该方法可以收集各类样本文件,并将其用作同源分析知识库构建的种子样本文件。
作为一种可选的实施方式,收集种子样本文件的步骤包括:
收集原始样本文件;
对原始样本进行分类整理,得到种子样本文件;其中,种子样本文件包括种子样本文件为类库相关文件、壳相关文件、应用程序中的一种或者多种。
本实施例中,该方法可以对收集到的种子样本文件进行分类整理,得到具体的三大类文件。其中,第一类为类库相关文件(如msvcrt.dll,微软在Windows操作系统中提供的C语言运行库执行文件);第二类为壳相关文件(如UPX壳);第三类为应用程序,该应用程序可恶意包含系统应用、第三方应用(如Chrome浏览器)、木马家族样本和APT组织样本等。
S102、收集种子样本文件在沙箱中运行时产生的中间文件。
本实施例中,该方法可以将收集到的种子样本文件投入到沙箱中运行,收集运行过程中产生的可执行文件等中间文件。
本实施例中,该方法可以优先判断种子样本文件是否为壳样本,如果是壳样本,那么无需对其进行动态分析。
S103、对种子样本文件和中间文件进行格式识别,得到格式识别结果。
本实施例中,格式识别结果用于表示种子样本文件和中间文件的文件格式。
S104基于格式识别结果,提取种子样本文件和中间文件中包含的文件字符串。
本实施例中,该方法可以对上述的种子样本文件和中间文件进行静态分析,从而提取出种子样本文件和中间文件包含的文件字符串。
S105、对文件字符串进行过滤和分类,得到有意义字符串。
作为一种可选的实施方式,对文件字符串进行过滤和分类,得到有意义字符串的步骤包括:
过滤字符串长度小于预设长度的文件字符串,得到剩余字符串;
通过预设的正则表达式对剩余字符串进行识别分类,得到有意义字符串。
本实施例中,该方法可以对上述的文件字符串进行过滤和分类。
在本实施例中,该方法可以先通过预设的程序将长度小于6的字符串自动过滤掉,从而避免长度少于6的字符串对分类或分析的干扰,进而有利于提高后续的处理效率;然后该方法再通过预设的正则表达式对字符串进行识别,从而将字符串分为“通用”、“网络相关”(包含IP、Domain、URL)、“路径相关”(文件路径)、“注册表”等分类,并确定该些分类下的文本字符串为有意义字符串。
S106、获取与有意义字符串相对应的背景信息。
作为一种可选的实施方式,获取与有意义字符串相对应的背景信息的步骤包括:
判断有意义字符串是否在正常类库中出现;
若是,则获取对应类库的背景信息;
若否,则判断有意义字符串是否在壳中出现;
若是,则获取对应壳的背景信息;
若否,则获取对应常见应用名、对应木马家族名或对应APT组织名的背景信息。
本实施例中,当有意义字符串在正常类库中出现时,则将该字符串标识为对应类库相关;当有意义字符串未在收录的正常类库中出现,但在壳中出现时,则将该字符串标识为对应壳相关;当有意义字符串既不在正常类库中出现,也不在常见壳样本中出现,则将该字符串标识为具体的常见应用名、木马家族名或APT组织名相关。
一个字符串可能属于同一大类下的多个,比如可能同时属于多个APT组织。
S107、根据有意义字符串和背景信息,构建同源分析知识库。
本实施例中,该方法能够以有意义字符串为主键,确定其对应的类库、常见应用、木马家族、关联样本等背景信息。然后,该方法基于上述有意义字符串和背景信息构建与字符串分类相关属性相对应的同源分析知识库。
在本实施例中,同源分析知识库对应于字符串分类的相关属性。可以理解的是,当字符串为类库相关字符串时,该同源分析知识库为类库相关同源分析知识库。其中,字符串的相关属性可以为上述的三大类文件属性,如类库相关属性、壳相关属性以及应用程序相关属性。
本申请实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
在本申请实施例中,该方法的执行主体还可以为智能手机、平板电脑等智能设备,对此本实施例中不作任何限定。
可见,实施本实施例所描述的同源分析知识库的构建方法,能够自动提取类库、壳、木马家族、APT组织和常见应用样本的字符串形成同源分析知识库,从而使得后续的分析过程可以基于该同源分析知识库,进而避免对人工的过多依赖,降低人力成本。同时,该方法还能够对文件字符串进行了长度过滤,从而有效降低了无意义字符串的干扰,进而有利于提高同源分析知识库的构建效率和同源分析时的匹配效率。该方法还能够对字符串进行了分类,从而使得同源结果展示的信息更丰富;使用沙箱动态运行待分析样本文件获取中间文件作为新的输入,能够一定程度上能对抗加壳、加密和混淆等对抗手段对同源效果的影响。另外,该方法还能够通过人工持续地输入验证过的属于某家族、某APT组织、类库或壳相关的样本,从而实现同源分析知识库的持续丰富效果。
实施例2
请参看图2,图2为本申请实施例提供了一种同源分析方法的流程示意图。其中,该同源分析方法包括:
S201、获取待分析样本文件。
本实施例中,该方法接收要进行同源分析的待分析样本文件。
S202、收集待分析样本文件在沙箱中运行时产生的中间文件。
本实施例中,该方法使用沙箱分析输入的待分析样本文件,获取中间文件。
S203、对待分析样本文件和中间文件进行格式识别,得到格式识别结果。
S204、基于格式识别结果,提取待分析样本文件和中间文件中包含的文件字符串。
本实施例中,该方法可以对待分析样本文件和中间文件进行静态分析得到其包含的文件字符串。
S205、对文件字符串进行过滤和分类,得到有意义字符串。
本实施例中,该方法先利用程序过滤掉长度小于6的字符串,然后通过预设的正则等对字符串进行识别,将字符串分为“通用”、“网络相关”(包含IP、Domain、URL)、“路径相关”(文件路径)、“注册表”等分类,得到有意义字符串。
S206、在同源分析知识库中对有意义字符串进行全词查询,并检测是否查询到匹配结果;若是,则执行步骤S207;若否,则结束本流程。
本实施例中,该方法在获取到有意义字符串之后,结合有意义字符串的长度和分类去同源分析知识库中进行全词查询,如果无匹配结果,则无同源结果;如果有匹配结果,则输出同源结果。其中,同源结果包括同源字符串和同源度。
S207、获取匹配结果中的同源字符串。
S208、根据有意义字符串和同源字符串之间的字符串命中数量进行计算,得到同源度。
举例来说,同源结果从两个维度展示,一个维度是字符串,如下表。
另外,同源结果的另一个维度是按具体同源相关度降序展示。
具体来说,该方法中对命中的字符串数量进行计数(数字越大,认为同源度越高),按三大类的具体子类名进行累加,假设某样本提取了100个字符串,其中55个在同源知识库能命中,且其中30个与SubClass1相关、19个与SubClass2相关,7个与SubClass3相关。则结果输出,SubClass1:30,SubClass2:19,SubClass3:7,Unknown:44。
S209、根据同源字符串和同源度,确定与有意义字符串相匹配的同源结果。
本实施例中,该方法对于上述的中间文件,还可以单独展示同源结果。
本申请实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
在本申请实施例中,该方法的执行主体还可以为智能手机、平板电脑等智能设备,对此本实施例中不作任何限定。
可见,实施本实施例所描述的同源分析方法,能够在同源分析的过程中结合字符串长度和字符串分类进行匹配分析,进一步提高分析效率和分析精度;另外,该方法还能够基于同源分析知识库自动对新输入的待分析样本文件进行分析,并选择性地将高价值的样本呈现给分析人员,从而有利于辅助分析人员进行同源和关联分析,并有利于辅助分析人员发现并及时跟进高价值网络攻击线索。
实施例3
请参看图3,图3为本申请实施例提供的一种同源分析知识库的构建装置的结构示意图。如图3所示,该同源分析知识库的构建装置包括:
第一收集单元310,用于收集种子样本文件;
第一收集单元310,还用于收集种子样本文件在沙箱中运行时产生的中间文件;
第一识别单元320,用于对种子样本文件和中间文件进行格式识别,得到格式识别结果;
第一提取单元330,用于基于格式识别结果,提取种子样本文件和中间文件中包含的文件字符串;
第一过滤单元340,用于对文件字符串进行过滤和分类,得到有意义字符串;
第一获取单元350,用于获取与有意义字符串相对应的背景信息;
第一构建单元360,用于根据有意义字符串和背景信息,构建同源分析知识库。
作为一种可选的实施方式,第一收集单元310包括:
收集子单元311,用于收集原始样本文件;
分类子单元312,用于对原始样本进行分类整理,得到种子样本文件;其中,种子样本文件包括种子样本文件为类库相关文件、壳相关文件、应用程序中的一种或者多种。
作为一种可选的实施方式,第一过滤单元340包括:
过滤子单元341,用于过滤字符串长度小于预设长度的文件字符串,得到剩余字符串;
识别子单元342,用于通过预设的正则表达式对剩余字符串进行识别分类,得到有意义字符串。
作为一种可选的实施方式,第一获取单元350包括:
判断子单元351,用于判断有意义字符串是否在正常类库中出现;
第一获取子单元352,用于当有意义字符串在正常类库中出现时,获取对应类库的背景信息;
判断子单元351,还用于当有意义字符串未在正常类库中出现时,则判断有意义字符串是否在壳中出现;
第一获取子单元352,还用于当有意义字符串在壳中出现时,获取对应壳的背景信息;
第一获取子单元352,还用于当有意义字符串未在壳中出现时,获取对应常见应用名、对应木马家族名或对应APT组织名的背景信息。
本申请实施例中,对于同源分析知识库的构建装置的解释说明可以参照实施例1中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的同源分析知识库的构建装置,能够创建一个字符串与家族组织之间的同源分析知识库,从而使得该同源分析数据库能够用于对恶意代码进行快速分类,同时还能够高效地确定恶意代码的来源,并追踪其归属的家族组织。
实施例4
请参看图4,图4为本申请实施例提供的一种同源分析装置的结构示意图。如图4所示,该同源分析装置包括:
第二获取单元410,用于获取待分析样本文件;
第二收集单元420,用于收集待分析样本文件在沙箱中运行时产生的中间文件;
第二识别单元430,用于对待分析样本文件和中间文件进行格式识别,得到格式识别结果;
第二提取单元440,用于基于格式识别结果,提取待分析样本文件和中间文件中包含的文件字符串;
第二过滤单元450,用于对文件字符串进行过滤和分类,得到有意义字符串;
第二确定单元460,用于根据同源分析知识库,确定与有意义字符串相匹配的同源结果。
作为一种可选的实施方式,第二确定单元460包括:
查询子单元461,用于在同源分析知识库中对有意义字符串进行全词查询,并检测是否查询到匹配结果;
第二获取子单元462,用于当查询到匹配结果时,获取匹配结果中的同源字符串;
计算子单元463,用于根据有意义字符串和同源字符串之间的字符串命中数量进行计算,得到同源度;
确定子单元464,用于根据同源字符串和同源度,确定与有意义字符串相匹配的同源结果。
本申请实施例中,对于同源分析装置的解释说明可以参照实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的同源分析装置,能够接收待分析样本文件,并通过同源分析知识库对该待分析样本文件进行相应的分析,从而高效的确定出待分析样本中的有意义字符串;同时,该方法还能够根据同源分析知识库判断有意义字符串是否为恶意代码,以及该有意义字符串从属于哪个木马家族或APT组织。
本申请实施例提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例1中的同源分析知识库的构建方法或本申请实施例2中的同源分析方法。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例1中的同源分析知识库的构建方法或本申请实施例2中的同源分析方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (8)
1.一种同源分析知识库的构建方法,其特征在于,包括:
收集种子样本文件;
收集所述种子样本文件在沙箱中运行时产生的中间文件;
对所述种子样本文件和所述中间文件进行格式识别,得到格式识别结果;
基于所述格式识别结果,提取所述种子样本文件和所述中间文件中包含的文件字符串;
对所述文件字符串进行过滤和分类,得到有意义字符串;
获取与所述有意义字符串相对应的背景信息;
根据所述有意义字符串和所述背景信息,构建同源分析知识库;
其中,所述收集种子样本文件的步骤包括:
收集原始样本文件;
对所述原始样本进行分类整理,得到种子样本文件;其中,所述种子样本文件包括所述种子样本文件为类库相关文件、壳相关文件、应用程序中的一种或者多种;
其中,收集所述种子样本文件在沙箱中运行时产生的中间文件的步骤包括:
收集所述类库相关文件和所述应用程序中在沙箱中运行时产生的中间文件;
其中,所述对所述文件字符串进行过滤和分类,得到有意义字符串的步骤包括:
过滤字符串长度小于预设长度的所述文件字符串,得到剩余字符串;
通过预设的正则表达式对所述剩余字符串进行识别分类,得到通用分类、网络相关分类、路径相关分类和注册表分类;并确定所述通用分类、所述网络相关分类、所述路径相关分类和所述注册表分类下的文本字符串为有意义字符串。
2.根据权利要求1所述的同源分析知识库的构建方法,其特征在于,所述获取与所述有意义字符串相对应的背景信息的步骤包括:
判断所述有意义字符串是否在正常类库中出现;
若是,则获取对应类库的背景信息;
若否,则判断所述有意义字符串是否在壳中出现;
若是,则获取对应壳的背景信息;
若否,则获取对应常见应用名、对应木马家族名或对应APT组织名的背景信息。
3.一种同源分析方法,其特征在于,所述同源分析方法中使用的同源分析知识库是通过权利要求1至2中任一项所述的同源分析知识库的构建方法进行构建得到的,包括:
获取待分析样本文件;
收集所述待分析样本文件在沙箱中运行时产生的中间文件;
对所述待分析样本文件和所述中间文件进行格式识别,得到格式识别结果;
基于所述格式识别结果,提取所述待分析样本文件和所述中间文件中包含的文件字符串;
对所述文件字符串进行过滤和分类,得到有意义字符串;
根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果。
4.根据权利要求3所述的同源分析方法,其特征在于,所述根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果的步骤包括:
在所述同源分析知识库中对所述有意义字符串进行全词查询,并检测是否查询到匹配结果;
当查询到匹配结果时,获取所述匹配结果中的同源字符串;
根据所述有意义字符串和所述同源字符串之间的字符串命中数量进行计算,得到同源度;
根据所述同源字符串和所述同源度,确定与所述有意义字符串相匹配的同源结果。
5.一种同源分析知识库的构建装置,其特征在于,所述同源分析知识库的构建装置包括:
第一收集单元,用于收集种子样本文件;
所述第一收集单元,还用于收集所述种子样本文件在沙箱中运行时产生的中间文件;
第一识别单元,用于对所述种子样本文件和所述中间文件进行格式识别,得到格式识别结果;
第一提取单元,用于基于所述格式识别结果,提取所述种子样本文件和所述中间文件中包含的文件字符串;
第一过滤单元,用于对所述文件字符串进行过滤和分类,得到有意义字符串;
第一获取单元,用于获取与所述有意义字符串相对应的背景信息;
第一构建单元,用于根据所述有意义字符串和所述背景信息,构建同源分析知识库;
所述第一收集单元包括:
收集子单元,用于收集原始样本文件;
分类子单元,用于对原始样本进行分类整理,得到种子样本文件;其中,种子样本文件包括种子样本文件为类库相关文件、壳相关文件、应用程序中的一种或者多种;
其中,所述第一收集单元具体用于收集所述类库相关文件和所述应用程序中在沙箱中运行时产生的中间文件;
其中,所述第一过滤单元包括:
过滤子单元,用于过滤字符串长度小于预设长度的文件字符串,得到剩余字符串;
识别子单元,用于通过预设的正则表达式对所述剩余字符串进行识别分类,得到通用分类、网络相关分类、路径相关分类和注册表分类;并确定所述通用分类、所述网络相关分类、所述路径相关分类和所述注册表分类下的文本字符串为有意义字符串。
6.一种同源分析装置,其特征在于,同源分析装置中使用的同源分析知识库是通过权利要求5所述的同源分析知识库的构建装置构建的,所述同源分析装置包括:
第二获取单元,用于获取待分析样本文件;
第二收集单元,用于收集所述待分析样本文件在沙箱中运行时产生的中间文件;
第二识别单元,用于对所述待分析样本文件和所述中间文件进行格式识别,得到格式识别结果;
第二提取单元,用于基于所述格式识别结果,提取所述待分析样本文件和所述中间文件中包含的文件字符串;
第二过滤单元,用于对所述文件字符串进行过滤和分类,得到有意义字符串;
第二确定单元,用于根据所述同源分析知识库,确定与所述有意义字符串相匹配的同源结果。
7.一种电子设备,其特征在于,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行权利要求1至2中任一项所述的同源分析知识库的构建方法。
8.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行权利要求1至2任一项所述的同源分析知识库的构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210005828.0A CN114021138B (zh) | 2022-01-05 | 2022-01-05 | 一种同源分析知识库的构建方法、同源分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210005828.0A CN114021138B (zh) | 2022-01-05 | 2022-01-05 | 一种同源分析知识库的构建方法、同源分析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114021138A CN114021138A (zh) | 2022-02-08 |
CN114021138B true CN114021138B (zh) | 2022-04-12 |
Family
ID=80069513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210005828.0A Active CN114021138B (zh) | 2022-01-05 | 2022-01-05 | 一种同源分析知识库的构建方法、同源分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114021138B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101251002B1 (ko) * | 2010-12-20 | 2013-04-04 | 한국인터넷진흥원 | 악성코드 자동 분석 시스템 및 그 방법 |
CN105512555B (zh) * | 2014-12-12 | 2018-05-25 | 哈尔滨安天科技股份有限公司 | 基于文件字符串聚类的划分同源家族和变种的方法及系统 |
CN110222715B (zh) * | 2019-05-07 | 2021-07-27 | 国家计算机网络与信息安全管理中心 | 一种基于动态行为链和动态特征的样本同源分析方法 |
-
2022
- 2022-01-05 CN CN202210005828.0A patent/CN114021138B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114021138A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309251B (zh) | 文本数据的处理方法、装置和计算机可读存储介质 | |
CN111723371A (zh) | 构建恶意文件的检测模型以及检测恶意文件的方法 | |
CN112328936A (zh) | 一种网站识别方法、装置、设备及计算机可读存储介质 | |
CN111651768B (zh) | 计算机二进制程序的链接库函数名识别方法及装置 | |
CN112632529A (zh) | 漏洞识别方法、设备、存储介质及装置 | |
CN107391684B (zh) | 一种威胁情报生成的方法及系统 | |
CN115292674A (zh) | 一种基于用户评论数据的欺诈应用检测方法及系统 | |
CN112200196A (zh) | 钓鱼网站检测方法、装置、设备及计算机可读存储介质 | |
CN112035723A (zh) | 资源库的确定方法和装置、存储介质及电子装置 | |
CN109492401B (zh) | 一种内容载体风险检测方法、装置、设备及介质 | |
CN108388556B (zh) | 同类实体的挖掘方法及系统 | |
CN112016317A (zh) | 基于人工智能的敏感词识别方法、装置及计算机设备 | |
CN114021138B (zh) | 一种同源分析知识库的构建方法、同源分析方法及装置 | |
CN114021116B (zh) | 一种同源分析知识库的构建方法、同源分析方法及装置 | |
CN111539383A (zh) | 公式知识点识别方法及装置 | |
CN108287831A (zh) | 一种url分类方法和系统、数据处理方法和系统 | |
CN110598115A (zh) | 一种基于人工智能多引擎的敏感网页识别方法及系统 | |
CN111813964B (zh) | 基于生态环境的数据处理方法及相关设备 | |
CN112131215B (zh) | 自底向上的数据库信息获取方法及装置 | |
NG et al. | Application of sequential analysis on runtime behavior for ransomware classification | |
Dubettier et al. | File type identification tools for digital investigations | |
CN112597498A (zh) | 一种webshell的检测方法、系统、装置及可读存储介质 | |
Wahyudi et al. | Algorithm Evaluation for Classification “Phishing Website” Using Several Classification Algorithms | |
Jaiswal et al. | Generating Association Rules for Social Media Analysis | |
CN103761477A (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 |