CN116956295B - 基于文件图谱拟合的安全检测方法、装置及设备 - Google Patents
基于文件图谱拟合的安全检测方法、装置及设备 Download PDFInfo
- Publication number
- CN116956295B CN116956295B CN202311214397.XA CN202311214397A CN116956295B CN 116956295 B CN116956295 B CN 116956295B CN 202311214397 A CN202311214397 A CN 202311214397A CN 116956295 B CN116956295 B CN 116956295B
- Authority
- CN
- China
- Prior art keywords
- file
- sample
- target
- software package
- detection result
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 339
- 239000013598 vector Substances 0.000 claims abstract description 315
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000001228 spectrum Methods 0.000 claims description 68
- 238000012545 processing Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 71
- 230000002159 abnormal effect Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 11
- 238000003058 natural language processing Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 8
- 241000700605 Viruses Species 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 7
- 230000015654 memory Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 102100035309 GRIP and coiled-coil domain-containing protein 1 Human genes 0.000 description 3
- 101001024398 Homo sapiens GRIP and coiled-coil domain-containing protein 1 Proteins 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 102100028617 GRIP and coiled-coil domain-containing protein 2 Human genes 0.000 description 1
- 101001058870 Homo sapiens GRIP and coiled-coil domain-containing protein 2 Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- 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/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种基于文件图谱拟合的安全检测方法、装置及设备,该方法包括:获取目标软件包对应的目标文件图谱,目标文件图谱包括每个目标文件的文件描述向量;基于目标文件图谱和样本软件包对应的样本文件图谱,确定目标文件的安全检测结果,样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果;其中,若基于目标文件图谱和样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果。通过本申请方案,能够节约处理资源,减少检测时间,软件包的安全检测效率比较高。
Description
技术领域
本申请涉及信息安全技术领域,尤其是涉及一种基于文件图谱拟合的安全检测方法、装置及设备。
背景技术
随着软件技术的不断发展,软件包也越来越大,在软件包发布之前,需要对软件包进行多轮版本的安全检测,比如说,对软件包的每个文件进行病毒扫描、软件成分分析等安全检测,得到每个文件的安全检测结果。若某文件的安全检测结果表示该文件存在异常(如该文件存在漏洞等),则需要对该文件进行修复,从而避免已发布的软件包存在异常文件,避免软件包存在安全隐患。
但是,由于软件包通常包括大量文件,对每个文件进行安全检测时,需要占用大量处理资源,消耗大量检测时间,软件包的安全检测效率比较低。
发明内容
有鉴于此,本申请提供一种基于文件图谱拟合的安全检测方法、装置及设备,能够节约处理资源,减少检测时间,软件包的安全检测效率比较高。
本申请提供一种基于文件图谱拟合的安全检测方法,所述方法包括:
获取目标软件包对应的目标文件图谱;其中,所述目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,所述目标文件图谱包括每个目标文件的文件描述向量;
基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,所述样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,所述样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果;
其中,若基于所述目标文件图谱和所述样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;所述第一目标文件是目标软件包中任一目标文件,所述第一样本文件是样本软件包中任一样本文件。
本申请提供一种基于文件图谱拟合的安全检测装置,所述装置包括:
获取模块,用于获取目标软件包对应的目标文件图谱;其中,所述目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,所述目标文件图谱包括每个目标文件的文件描述向量;
确定模块,用于基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,所述样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,所述样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果;其中,所述确定模块基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:
若基于所述目标文件图谱和所述样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;其中,所述第一目标文件是目标软件包中任一目标文件,所述第一样本文件是样本软件包中任一样本文件。
另一方面,本申请提供一种电子设备,包括:处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令;其中,处理器用于执行机器可执行指令,以实现上述的基于文件图谱拟合的安全检测方法。
另一方面,本申请提供一种机器可读存储介质,所述机器可读存储介质存储有能够被处理器执行的机器可执行指令;其中,所述处理器用于执行所述机器可执行指令,以实现上述的基于文件图谱拟合的安全检测方法。
另一方面,本申请提供一种计算机程序,所述计算机程序存储于机器可读存储介质,当处理器执行所述机器可读存储介质中的所述计算机程序时,促使所述处理器实现上述的基于文件图谱拟合的安全检测方法。
由以上技术方案可见,本申请实施例中,基于目标软件包对应的目标文件图谱和样本软件包对应的样本文件图谱确定目标文件的安全检测结果,若基于目标文件图谱和样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,将第一样本文件的安全检测结果作为第一目标文件的安全检测结果,复用第一样本文件的安全检测结果作为第一目标文件的安全检测结果,避免对第一目标文件进行病毒扫描、软件成分分析等安全检测,能够节约处理资源,减少检测时间,软件包的安全检测效率比较高。通过复用样本文件图谱的已检测结果,提升安全扫描的效率,提升检测结果复用率,提升安全检测速度,提升文件的安全检测效率,避免重复文件反复占用检测资源。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是基于文件图谱拟合的安全检测方法的流程示意图;
图2是本申请一种实施方式中的样本文件图谱的示意图;
图3是本申请一种实施方式中的样本指令图谱的示意图;
图4是基于文件图谱拟合的安全检测方法的流程示意图;
图5是基于文件图谱拟合的安全检测装置的结构示意图;
图6是本申请一种实施方式中的电子设备的硬件结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例提出一种基于文件图谱拟合的安全检测方法,可以应用于任意类型的电子设备,参见图1所示,为该方法的流程示意图,该方法包括:
步骤101、获取目标软件包对应的目标文件图谱;其中,目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,目标文件图谱可以包括每个目标文件的文件描述向量。
步骤102、基于目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果。其中,在确定目标文件的安全检测结果时,若基于目标文件图谱和样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;第一目标文件是目标软件包中任一目标文件,第一样本文件是样本软件包中任一样本文件。
在一种可能的实施方式中,目标文件图谱包括目标软件包的软件包描述向量,样本文件图谱包括样本软件包的软件包描述向量和安全检测结果;基于目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果,可以包括但不限于:若基于目标文件图谱和样本文件图谱确定目标软件包的软件包描述向量与样本软件包的软件包描述向量匹配,则将样本软件包的安全检测结果确定为目标软件包的安全检测结果,基于样本软件包中每个样本文件的安全检测结果确定目标软件包中每个目标文件的安全检测结果。
在一种可能的实施方式中,目标文件图谱包括每个目标功能组件的组件描述向量,样本文件图谱包括每个样本功能组件的组件描述向量和安全检测结果;基于目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果,可以包括但不限于:若基于目标文件图谱和样本文件图谱确定第一目标功能组件的组件描述向量与第一样本功能组件的组件描述向量匹配,则将第一样本功能组件的安全检测结果确定为第一目标功能组件的安全检测结果,基于第一样本功能组件中每个样本文件的安全检测结果确定第一目标功能组件中每个目标文件的安全检测结果;其中,第一目标功能组件是目标软件包中任一目标功能组件,第一样本功能组件是样本软件包中任一样本功能组件。
在一种可能的实施方式中,若基于目标文件图谱和样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配,则可以对第二目标文件进行安全扫描得到第二目标文件的安全检测结果。或者,
若基于目标文件图谱和样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配,则可以获取目标软件包对应的目标指令图谱,目标指令图谱包括每个目标文件的指令句向量;基于目标指令图谱和样本软件包对应的已存储的样本指令图谱,确定第二目标文件的安全检测结果;其中,样本指令图谱包括每个样本文件的指令句向量和该样本文件的安全检测结果。其中,在确定第二目标文件的安全检测结果时,若基于目标指令图谱和样本指令图谱确定第二目标文件的指令句向量与第二样本文件的指令句向量匹配,则将第二样本文件的安全检测结果确定为第二目标文件的安全检测结果,第二样本文件可以是样本软件包中任一样本文件;若基于目标指令图谱和样本指令图谱确定第二目标文件的指令句向量与每个样本文件的指令句向量均不匹配,则对第二目标文件进行安全扫描得到第二目标文件的安全检测结果。
在一种可能的实施方式中,在确定第二目标文件的安全检测结果时,还可以基于目标软件包对应的目标编译信息从网络模型集合中选取目标网络模型,其中,网络模型集合可以包括采用不同编译信息的样本数据训练的多个网络模型,且目标网络模型是采用目标编译信息的样本数据训练的。将第二目标文件的指令句向量和样本软件包中的样本文件的指令句向量输入给目标网络模型,由目标网络模型输出第二目标文件的指令句向量与该样本文件的指令句向量之间的匹配相似度;若匹配相似度不小于相似度阈值,则确定第二目标文件的指令句向量与该样本文件的指令句向量匹配;若匹配相似度小于相似度阈值,则确定第二目标文件的指令句向量与该样本文件的指令句向量不匹配。
在一种可能的实施方式中,基于目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果,可以包括但不限于:若基于目标软件包的第一更新时间与样本软件包的第二更新时间确定样本文件图谱位于有效期内,则基于目标文件图谱和样本文件图谱确定目标文件的安全检测结果。若基于第一更新时间与第二更新时间确定样本文件图谱不位于有效期内,针对目标软件包中的每个目标文件,对该目标文件进行安全扫描得到该目标文件的安全检测结果。其中,若第一更新时间与第二更新时间的差值小于预设时长阈值,则样本文件图谱位于有效期内,否则,样本文件图谱不位于有效期内。
在一种可能的实施方式中,基于目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果之后,还可以将目标文件图谱存储为样本文件图谱,在样本文件图谱中记录目标文件的安全检测结果;将目标指令图谱存储为样本指令图谱,在样本指令图谱中记录目标文件的安全检测结果。其中,在获取目标软件包对应的目标文件图谱时,目标文件的文件描述向量的获取方式可以包括但不限于:获取目标文件对应的参数信息,参数信息包括以下至少一种:文件名、文件类型、文件hash、文件大小;对参数信息进行语义特征提取,得到目标文件的文件描述向量。
其中,在获取目标软件包对应的目标指令图谱时,目标文件的指令句向量的获取方式可以包括但不限于:获取目标文件对应的指令信息,目标文件包括多个函数段,指令信息包括每个函数段的函数名称和函数段内指令的指令名称;对指令信息进行语义特征提取,得到目标文件的指令句向量。
由以上技术方案可见,本申请实施例中,基于目标软件包对应的目标文件图谱和样本软件包对应的样本文件图谱确定目标文件的安全检测结果,若基于目标文件图谱和样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,将第一样本文件的安全检测结果作为第一目标文件的安全检测结果,复用第一样本文件的安全检测结果作为第一目标文件的安全检测结果,避免对第一目标文件进行病毒扫描、软件成分分析等安全检测,能够节约处理资源,减少检测时间,软件包的安全检测效率比较高。通过复用样本文件图谱的已检测结果,提升安全扫描的效率,提升检测结果复用率,提升安全检测速度,提升文件的安全检测效率,避免重复文件反复占用检测资源。
以下结合具体应用场景,对本申请实施例的技术方案进行说明。
本申请实施例中提出一种基于文件图谱拟合的安全检测方法,该方法可以涉及文件图谱库构建过程和基于文件图谱库的安全检测过程。其中,在文件图谱库构建过程中,可以构建文件图谱库,该文件图谱库可以存储多个样本文件图谱。在基于文件图谱库的安全检测过程中,可以基于目标软件包对应的目标文件图谱和文件图谱库中的样本文件图谱对目标软件包进行安全检测。
针对文件图谱库构建过程,为了构建文件图谱库,可以采用如下步骤:
步骤S11、获取样本软件包(可以是多个样本软件包)。
示例性的,样本软件包是已经完成安全检测的软件包,即已经获知样本软件包的安全检测结果。比如说,已经对样本软件包的每个文件进行病毒扫描、软件成分分析等安全检测,得到样本软件包的每个文件的安全检测结果。
示例性的,样本软件包可以包括至少一个功能组件,为了区分方便,将样本软件包中的功能组件称为样本功能组件。比如说,样本软件包可以包括用于实现加密功能的样本功能组件、用于实现数据存储功能的样本功能组件等。样本功能组件可以是自定义功能组件,也可以是第三方开源组件,对此不做限制。
针对每个样本功能组件,该样本功能组件可以包括至少一个文件,为了区分方便,将样本功能组件中的文件称为样本文件。比如说,样本功能组件可以包括密码库文件、资源文件、程序文件、数据库文件等类型的样本文件。
步骤S12、针对样本软件包的每个样本文件(即所有样本功能组件中的样本文件),获取该样本文件的文件描述向量和该样本文件的安全检测结果。
示例性的,针对样本软件包的每个样本文件,在对该样本文件进行病毒扫描、软件成分分析等安全检测时,可以得到该样本文件的安全检测结果,并在指定存储介质中存储该样本文件的安全检测结果。基于此,在构建文件图谱库时,可以从指定存储介质中获取该样本文件的安全检测结果。其中,该安全检测结果表示该样本文件正常或异常,在该样本文件异常时,该安全检测结果还可以表示该样本文件的异常类型,如存在漏洞等,对此安全检测结果不做限制。
示例性的,针对样本软件包的每个样本文件,获取该样本文件对应的参数信息,该参数信息可以包括但不限于以下至少一种:文件名、文件类型、文件hash、文件大小。对该参数信息进行语义特征提取,得到该样本文件的文件描述向量。比如说,可以采用NLP(Natural Language Processing,自然语言处理)模型对该参数信息进行语义特征提取,得到该样本文件的文件描述向量。
比如说,参数信息是样本文件的固有属性,可以从样本文件的配置数据(即样本软件包中针对该样本文件的数据)中获取该样本文件对应的参数信息,也可以采用其它方式获取该样本文件对应的参数信息,对此不做限制。
在得到该样本文件对应的参数信息之后,可以采用NLP模型提取该参数信息的语义特征,也可以采用其它方式提取该参数信息的语义特征,对此不做限制。在得到该语义特征之后,可以基于该语义特征确定该样本文件的文件描述向量,比如说,将该语义特征作为文件描述向量,或者,采用某种算法对该语义特征进行处理后,将处理后的语义特征作为文件描述向量。
步骤S13、针对样本软件包的每个样本功能组件,获取该样本功能组件对应的组件描述向量和该样本功能组件对应的安全检测结果。
示例性的,可以基于该样本功能组件的每个样本文件的安全检测结果确定该样本功能组件的安全检测结果。比如说,若所有样本文件的安全检测结果均为正常,则该样本功能组件的安全检测结果表示该样本功能组件正常。若任一样本文件的安全检测结果为异常,则该样本功能组件的安全检测结果表示该样本功能组件异常。在该样本功能组件异常时,该安全检测结果可以表示该样本功能组件的异常类型,如存在异常类型A的样本文件时,该安全检测结果可以表示该样本功能组件为异常类型A,存在异常类型A和异常类型B的样本文件时,该安全检测结果可以表示该样本功能组件为异常类型A和异常类型B。
示例性的,针对样本软件包的每个样本功能组件,获取该样本功能组件对应的参数信息,该参数信息可以包括但不限于以下至少一种:组件名、组件类型、组件hash(即组件内的所有文件的hash值)、组件大小(即组件内的所有文件的大小)。对该参数信息进行语义特征提取,得到该样本功能组件的组件描述向量。比如说,采用NLP模型对该参数信息进行语义特征提取得到组件描述向量,或采用其它方式提取该参数信息的语义特征得到组件描述向量。
步骤S14、获取该样本软件包的软件包描述向量和安全检测结果。
示例性的,可以基于该样本软件包的每个样本功能组件的安全检测结果确定该样本软件包的安全检测结果。比如说,若所有样本功能组件的安全检测结果均为正常,则该样本软件包的安全检测结果表示该样本软件包正常。若任一样本功能组件的安全检测结果为异常,则该样本软件包的安全检测结果表示该样本软件包异常。在该样本软件包异常时,该安全检测结果可以表示该样本软件包的异常类型,如存在异常类型A的样本功能组件时,该安全检测结果可以表示该样本软件包为异常类型A,存在异常类型A和异常类型B的样本功能组件时,该安全检测结果可以表示该样本软件包为异常类型A和异常类型B。
示例性的,可以获取该样本软件包对应的参数信息,该参数信息可以包括但不限于以下至少一种:软件包名、软件包类型、软件包hash(即软件包内的所有文件的hash值)、软件包大小(即软件包内的所有文件的大小)。对该参数信息进行语义特征提取,得到该样本软件包的软件包描述向量。比如说,采用NLP模型对该参数信息进行语义特征提取得到软件包描述向量,或者,采用其它方式提取该参数信息的语义特征得到软件包描述向量。
步骤S15、基于该样本软件包的软件包描述向量和安全检测结果、该样本软件包的每个样本功能组件的组件描述向量和安全检测结果、该样本软件包的每个样本文件的文件描述向量和安全检测结果,构建该样本软件包对应的样本文件图谱。其中,该样本文件图谱可以包括该样本软件包的软件包描述向量和安全检测结果、该样本软件包的每个样本功能组件的组件描述向量和安全检测结果、该样本软件包的每个样本文件的文件描述向量和安全检测结果。
比如说,样本软件包的软件包描述向量和安全检测结果作为该样本文件图谱的第一级节点(即根节点)。每个样本功能组件的组件描述向量和安全检测结果作为该样本文件图谱的第二级节点(即叶子节点),每个样本功能组件的上一级节点均为第一级节点。每个样本文件的文件描述向量和安全检测结果作为该样本文件图谱的第三级节点(即叶子节点),每个样本文件的上一级节点均为第二级节点,且上一级节点是该样本文件对应的样本功能组件。
比如说,参见图2所示,为样本文件图谱的一个示例,第一级节点包括样本软件包的软件包描述向量和安全检测结果。第二级节点包括每个样本功能组件的组件描述向量和安全检测结果。第三级节点包括每个样本文件的文件描述向量和安全检测结果,且样本文件需要位于对应样本功能组件的下一级节点。
步骤S16、在文件图谱库中存储样本文件图谱,比如说,针对多个样本软件包,可以在文件图谱库中存储多个样本软件包对应的样本文件图谱。
示例性的,针对每个样本软件包,还可以获取该样本软件包对应的更新时间,并在文件图谱库中存储该样本软件包的样本文件图谱与该更新时间的对应关系,该更新时间作为该样本软件包的更新时间、该样本软件包的每个样本功能组件的更新时间、该样本软件包的每个样本文件的更新时间。
其中,若该样本软件包未发生修改,则将该样本软件包的创建时间作为该样本软件包对应的更新时间。或者,若该样本软件包发生修改,则将该样本软件包的最后一次修改时间作为该样本软件包对应的更新时间。
在一种可能的实施方式中,还可以在文件图谱库中存储该样本软件包对应的样本指令图谱,以下对样本指令图谱的存储过程进行说明。
步骤S17、针对样本软件包的每个样本文件,获取该样本文件的指令句向量和该样本文件的安全检测结果,安全检测结果的获取方式参见步骤S12。
示例性的,针对样本软件包的每个样本文件,获取该样本文件对应的指令信息,该样本文件包括多个函数段,该指令信息可以包括每个函数段的函数名称和各函数段内指令的指令名称。对该指令信息进行语义特征提取,得到该样本文件的指令句向量。比如说,可以采用NLP模型或者其它语义特征提取方式对该指令信息进行语义特征提取,得到该样本文件的指令句向量。
比如说,该样本文件可以是包括多个函数段的二进制文件,可以对样本文件进行切分得到多个函数段,针对每个函数段,还可以对该函数段进行切分得到该函数端内的多个指令,这样,就可以获取每个函数段的函数名称和各函数段内指令的指令名称,而上述信息就可以组成该样本文件对应的指令信息。当然,也可以采用其它方式获取样本文件对应的指令信息,对此不做限制。
在得到该样本文件对应的指令信息之后,可以采用NLP模型提取该指令信息的语义特征,也可以采用其它方式提取该指令信息的语义特征,对此不做限制。在得到该语义特征之后,可以基于该语义特征确定该样本文件的指令句向量,比如说,将该语义特征作为指令句向量,或者,采用某种算法对该语义特征进行处理后,将处理后的语义特征作为指令句向量,对此不做限制。
步骤S18、基于该样本软件包的每个样本文件的指令句向量和安全检测结果,构建该样本软件包对应的样本指令图谱,该样本指令图谱包括该样本软件包的每个样本文件的指令句向量和安全检测结果。或者,基于该样本软件包的软件包描述向量和安全检测结果、该样本软件包的每个样本功能组件的组件描述向量和安全检测结果、该样本软件包的每个样本文件的指令句向量和安全检测结果构建该样本指令图谱。其中,该样本指令图谱包括该样本软件包的软件包描述向量和安全检测结果、该样本软件包的每个样本功能组件的组件描述向量和安全检测结果、该样本软件包的每个样本文件的指令句向量和安全检测结果。
比如说,样本软件包的软件包描述向量和安全检测结果可以作为该样本指令图谱的第一级节点。每个样本功能组件的组件描述向量和安全检测结果可以作为该样本指令图谱的第二级节点。每个样本文件的指令句向量和安全检测结果可以作为该样本指令图谱的第三级节点。比如说,参见图3所示,为样本指令图谱的一个示例,第一级节点可以包括样本软件包的软件包描述向量和安全检测结果。第二级节点可以包括每个样本功能组件的组件描述向量和安全检测结果。第三级节点可以包括每个样本文件的指令句向量安全检测结果。
步骤S19、在文件图谱库中存储样本指令图谱,比如说,针对多个样本软件包,可以在文件图谱库中存储多个样本软件包对应的样本指令图谱。
示例性的,针对每个样本软件包,还可以获取该样本软件包对应的更新时间,并在文件图谱库中存储该样本软件包的样本指令图谱与该更新时间的对应关系,该更新时间作为该样本软件包的每个样本文件的更新时间。
在一种可能的实施方式中,样本指令图谱与样本文件图谱可以为相互独立的两个图谱,样本指令图谱与样本文件图谱也可以融合为一个图谱,如将样本软件包对应的样本指令图谱融合到该样本软件包对应的样本文件图谱上,或将样本软件包对应的样本文件图谱融合到该样本软件包对应的样本指令图谱上。
比如说,针对每个样本文件,将该样本文件的指令句向量融合到样本文件图谱即可,这样,该样本文件图谱包括该样本软件包的软件包描述向量和安全检测结果、该样本软件包的每个样本功能组件的组件描述向量和安全检测结果、该样本软件包的每个样本文件的文件描述向量、指令句向量和安全检测结果。
至此,完成文件图谱库构建过程,可以在文件图谱库中存储多个样本软件包对应的样本文件图谱和多个样本软件包对应的样本指令图谱。
针对基于文件图谱库的安全检测过程,参见图4所示,为基于文件图谱拟合的安全检测方法的流程示意图,该过程可以包括如下步骤:
步骤401、获取目标软件包对应的目标文件图谱。
比如说,可以采用如下步骤获取目标软件包对应的目标文件图谱:
步骤4011、获取目标软件包,目标软件包是待安全检测的软件包。
示例性的,目标软件包可以包括至少一个功能组件,可以将目标软件包中的功能组件称为目标功能组件。针对每个目标功能组件,该目标功能组件可以包括至少一个文件,可以将目标功能组件中的文件称为目标文件。
步骤4012、针对目标软件包的每个目标文件,获取该目标文件的文件描述向量。比如说,获取该目标文件对应的参数信息,该参数信息可以包括但不限于以下至少一种:文件名、文件类型、文件hash、文件大小。对该参数信息进行语义特征提取,得到该目标文件的文件描述向量。比如说,可以采用NLP模型对该参数信息进行语义特征提取,得到该目标文件的文件描述向量。
步骤4013、针对目标软件包的每个目标功能组件,获取该目标功能组件的组件描述向量。比如说,获取该目标功能组件对应的参数信息,该参数信息可以包括但不限于以下至少一种:组件名、组件类型、组件hash(即组件内的所有文件的hash值)、组件大小(即组件内的所有文件的大小)。对该参数信息进行语义特征提取,得到该目标功能组件的组件描述向量。比如说,可以采用NLP模型对该参数信息进行语义特征提取得到该组件描述向量。
步骤4014、获取目标软件包的软件包描述向量。比如说,获取目标软件包对应的参数信息,该参数信息包括但不限于以下至少一种:软件包名、软件包类型、软件包hash(软件包内的所有文件的hash值)、软件包大小(软件包内的所有文件的大小)。对该参数信息进行语义特征提取得到软件包描述向量。比如说,采用NLP模型对该参数信息进行语义特征提取得到软件包描述向量。
步骤4015、基于该目标软件包的软件包描述向量、该目标软件包的每个目标功能组件的组件描述向量、该目标软件包的每个目标文件的文件描述向量,构建该目标软件包对应的目标文件图谱。其中,该目标文件图谱可以包括该目标软件包的软件包描述向量、该目标软件包的每个目标功能组件的组件描述向量、该目标软件包的每个目标文件的文件描述向量。
比如说,目标软件包的软件包描述向量作为该目标文件图谱的第一级节点。每个目标功能组件的组件描述向量作为该目标文件图谱的第二级节点。每个目标文件的文件描述向量作为该目标文件图谱的第三级节点。
至此,成功得到该目标软件包对应的目标文件图谱。
步骤402、获取目标软件包对应的目标指令图谱。
比如说,可以采用如下步骤获取目标软件包对应的目标指令图谱:
步骤4021、针对目标软件包的每个目标文件,获取该目标文件的指令句向量。比如说,获取目标文件对应的指令信息,该目标文件包括多个函数段,该指令信息可以包括每个函数段的函数名称和各函数段内指令的指令名称。对该指令信息进行语义特征提取,得到该目标文件的指令句向量。比如说,可以采用NLP模型对该指令信息进行语义特征提取,得到该目标文件的指令句向量。
步骤4022、基于目标软件包的每个目标文件的指令句向量构建该目标软件包对应的目标指令图谱,目标指令图谱包括该目标软件包的每个目标文件的指令句向量。或者,基于目标软件包的软件包描述向量、目标软件包的每个目标功能组件的组件描述向量、目标软件包的每个目标文件的指令句向量构建目标指令图谱。其中,该目标指令图谱包括该目标软件包的软件包描述向量、该目标软件包的每个目标功能组件的组件描述向量、该目标软件包的每个目标文件的指令句向量。比如说,目标软件包的软件包描述向量作为该目标指令图谱的第一级节点,每个目标功能组件的组件描述向量作为该目标指令图谱的第二级节点,每个目标文件的指令句向量作为该目标指令图谱的第三级节点。
至此,成功得到该目标软件包对应的目标指令图谱。
步骤403、基于目标软件包对应的目标文件图谱和样本软件包对应的样本文件图谱,确定目标软件包的软件包描述向量与样本软件包的软件包描述向量是否匹配。如果是,则执行步骤404,如果否,则执行步骤405。
由于目标文件图谱包括目标软件包的软件包描述向量,样本文件图谱包括样本软件包的软件包描述向量,因此,基于目标文件图谱和样本文件图谱可以确定目标软件包的软件包描述向量与样本软件包的软件包描述向量是否匹配。
示例性的,若目标软件包的软件包描述向量与样本软件包的软件包描述向量之间的匹配相似度不小于相似度阈值(可以根据经验配置,如95%、98%、100%等),即二者比较相似,则确定目标软件包的软件包描述向量与样本软件包的软件包描述向量匹配。若目标软件包的软件包描述向量与样本软件包的软件包描述向量之间的匹配相似度小于相似度阈值,即二者不相似,则确定目标软件包的软件包描述向量与样本软件包的软件包描述向量不匹配。
其中,该匹配相似度可以是距离相似度(如欧式距离),也可以是余弦相似度,还可以是其它类型的相似度,对此匹配相似度的类型不做限制。
其中,已知目标软件包的软件包描述向量与样本软件包的软件包描述向量,可以采用网络模型计算匹配相似度,也可以采用相似度算法计算匹配相似度,还可以采用其它方式计算匹配相似度,对此匹配相似度的计算方式不做限制。
其中,若目标软件包的软件包描述向量与文件图谱库中的任一样本软件包的软件包描述向量之间的匹配相似度不小于相似度阈值,则确定目标软件包的软件包描述向量与该样本软件包的软件包描述向量匹配,则执行步骤404。
若目标软件包的软件包描述向量与文件图谱库中的所有样本软件包的软件包描述向量之间的匹配相似度均小于相似度阈值,则确定目标软件包的软件包描述向量与所有样本软件包的软件包描述向量均不匹配,执行步骤405。
步骤404、将该样本软件包的安全检测结果确定为该目标软件包的安全检测结果,基于该样本软件包中每个样本功能组件的安全检测结果确定该目标软件包中每个目标功能组件的安全检测结果,基于该样本软件包中每个样本文件的安全检测结果确定该目标软件包中每个目标文件的安全检测结果。
比如说,在目标软件包的软件包描述向量与样本软件包的软件包描述向量匹配时,表示该目标软件包与该样本软件包相同,如该样本软件包包括样本功能组件a1和样本功能组件a2,样本功能组件a1包括样本文件a11和样本文件a12,样本功能组件a2包括样本文件a21,该目标软件包也包括目标功能组件a1和目标功能组件a2,目标功能组件a1包括目标文件a11和目标文件a12,目标功能组件a2包括目标文件a21。基于此,将样本软件包的安全检测结果作为目标软件包的安全检测结果,将样本功能组件a1的安全检测结果作为目标功能组件a1的安全检测结果,将样本功能组件a2的安全检测结果作为目标功能组件a2的安全检测结果,将样本文件a11的安全检测结果作为目标文件a11的安全检测结果,将样本文件a12的安全检测结果作为目标文件a12的安全检测结果,将样本文件a21的安全检测结果作为目标文件a21的安全检测结果。
至此,基于样本文件的安全检测结果得到目标文件的安全检测结果,而不需要对目标文件进行安全检测,通过复用样本文件图谱的已检测结果,提升安全扫描的效率,提升安全检测速度,提升目标文件的安全检测效率。
在一种可能的实施方式中,考虑到样本软件包会发生更新,和/或,软件包的安全检测方式会发生更新(如增加漏洞类型),上述更新导致样本软件包对应的样本文件图谱发生变化(如导致软件包描述向量和/或安全检测结果发生变化),因此,可以为样本文件图谱设置有效期(根据经验配置,如10天、20天、30天等),当样本文件图谱位于有效期内时,允许基于该样本文件图谱内的安全检测结果确定目标文件的安全检测结果,当样本文件图谱不位于有效期内时,不允许基于该样本文件图谱内的安全检测结果确定目标文件的安全检测结果。
基于此,若基于目标软件包的第一更新时间与样本软件包的第二更新时间确定样本文件图谱位于有效期内,则执行步骤404。若基于第一更新时间与第二更新时间确定样本文件图谱不位于有效期内,则不执行步骤404,执行步骤405。
若目标软件包未发生修改,则目标软件包的创建时间作为第一更新时间;若目标软件包发生修改,则目标软件包的最后一次修改时间作为第一更新时间。若样本软件包未发生修改,则样本软件包的创建时间作为第二更新时间;若样本软件包发生修改,则样本软件包的最后一次修改时间作为第二更新时间。
若第一更新时间与第二更新时间的差值小于预设时长阈值(如30天等),则样本文件图谱位于有效期内,否则,若第一更新时间与第二更新时间的差值大于或等于预设时长阈值,则样本文件图谱不位于有效期内。
步骤405、基于目标软件包对应的目标文件图谱和样本软件包对应的样本文件图谱,针对目标软件包中的每个目标功能组件,确定该目标功能组件的组件描述向量与样本软件包中的样本功能组件的组件描述向量是否匹配。
如果是,则可以执行步骤406,如果否,则可以执行步骤407。
由于目标文件图谱包括目标功能组件的组件描述向量,样本文件图谱包括样本功能组件的组件描述向量,因此,基于目标文件图谱和样本文件图谱可以确定目标功能组件的组件描述向量与样本功能组件的组件描述向量是否匹配。
示例性的,若目标功能组件的组件描述向量与样本功能组件的组件描述向量之间的匹配相似度不小于相似度阈值,则确定目标功能组件的组件描述向量与样本功能组件的组件描述向量匹配。若该匹配相似度小于相似度阈值,则确定目标功能组件的组件描述向量与样本功能组件的组件描述向量不匹配。
其中,若目标功能组件的组件描述向量与文件图谱库中的任一样本功能组件的组件描述向量之间的匹配相似度不小于相似度阈值,则确定目标功能组件的组件描述向量与该样本功能组件的组件描述向量匹配,执行步骤406。为了区分方便,可以将该目标功能组件称为第一目标功能组件,第一目标功能组件是目标软件包中任一目标功能组件,可以将该样本功能组件称为第一样本功能组件,第一样本功能组件是样本软件包中任一样本功能组件。
其中,若目标功能组件的组件描述向量与文件图谱库中的所有样本功能组件的组件描述向量之间的匹配相似度均小于相似度阈值,则确定目标功能组件的组件描述向量与所有样本功能组件的组件描述向量均不匹配,执行步骤407。为了区分方便,可以将该目标功能组件称为第二目标功能组件。
步骤406、针对每个第一目标功能组件,将第一样本功能组件的安全检测结果确定为第一目标功能组件的安全检测结果,基于第一样本功能组件中每个样本文件的安全检测结果确定第一目标功能组件中每个目标文件的安全检测结果。
比如说,第一目标功能组件的组件描述向量与第一样本功能组件的组件描述向量匹配时,表示第一目标功能组件与第一样本功能组件相同,如第一样本功能组件b1包括样本文件b11,第一目标功能组件b1包括目标文件b11。基于此,将第一样本功能组件b1的安全检测结果作为第一目标功能组件b1的安全检测结果,将样本文件b11的安全检测结果作为目标文件b11的安全检测结果。
至此,基于样本文件的安全检测结果得到目标文件的安全检测结果,而不需要对目标文件进行安全检测,提升目标文件的安全检测效率。
示例性的,若基于第一目标功能组件的第一更新时间与第一样本功能组件的第二更新时间确定样本文件图谱位于有效期内,则执行步骤406。若基于第一更新时间与第二更新时间确定样本文件图谱不位于有效期内,则执行步骤407。其中,第一目标功能组件的第一更新时间可以为目标软件包的第一更新时间,第一样本功能组件的第二更新时间可以为样本软件包的第二更新时间。
步骤407、基于目标软件包对应的目标文件图谱和样本软件包对应的样本文件图谱,针对第二目标功能组件中的每个目标文件,确定该目标文件的文件描述向量与样本软件包中的样本文件的文件描述向量是否匹配。
如果是,则可以执行步骤408,如果否,则可以执行步骤409。
由于目标文件图谱包括目标文件的文件描述向量,样本文件图谱包括样本文件的文件描述向量,因此,基于目标文件图谱和样本文件图谱可以确定目标文件的文件描述向量与样本文件的文件描述向量是否匹配。
示例性的,若目标文件的文件描述向量与样本文件的文件描述向量之间的匹配相似度不小于相似度阈值(可以根据经验配置),则确定目标文件的文件描述向量与样本文件的文件描述向量匹配。若该匹配相似度小于相似度阈值,则确定目标文件的文件描述向量与样本文件的文件描述向量不匹配。
其中,若目标文件的文件描述向量与文件图谱库中的任一样本文件的文件描述向量之间的匹配相似度不小于相似度阈值,则确定目标文件的文件描述向量与该样本文件的文件描述向量匹配,执行步骤408。可以将该目标文件称为第一目标文件,第一目标文件是第二目标功能组件中任一目标文件,可以将该样本文件称为第一样本文件,第一样本文件是样本软件包中任一样本文件。若目标文件的文件描述向量与文件图谱库中所有样本文件的文件描述向量之间的匹配相似度均小于相似度阈值,则确定目标文件的文件描述向量与所有样本文件的文件描述向量均不匹配,执行步骤409,将该目标文件称为第二目标文件。
步骤408、针对每个第一目标文件,将第一样本文件的安全检测结果确定为该第一目标文件的安全检测结果。比如说,第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配时,表示第一目标文件与第一样本文件相同,基于此,可以将第一样本文件的安全检测结果作为第一目标文件的安全检测结果。至此,基于样本文件的安全检测结果得到目标文件的安全检测结果,而不需要对目标文件进行安全检测,提升目标文件的安全检测效率。
示例性的,若基于第一目标文件的第一更新时间与第一样本文件的第二更新时间确定样本文件图谱位于有效期内,则可以执行步骤408。若基于第一更新时间与第二更新时间确定样本文件图谱不位于有效期内,则可以执行步骤409。其中,第一目标文件的第一更新时间可以为目标软件包的第一更新时间,第一样本文件的第二更新时间可以为样本软件包的第二更新时间。
步骤409、针对目标软件包中的每个第二目标文件,若基于目标文件图谱和样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配,则对该第二目标文件进行安全扫描得到该第二目标文件的安全检测结果,如进行病毒扫描、软件成分分析等安全扫描,对此扫描方式不做限制。
综上所述,针对第二目标功能组件中的第一目标文件和第二目标文件,可以得到第一目标文件的安全检测结果和第二目标文件的安全检测结果,基于第一目标文件的安全检测结果和第二目标文件的安全检测结果可以确定第二目标功能组件的安全检测结果,基于第一目标功能组件的安全检测结果和第二目标功能组件的安全检测结果可以确定目标软件包的安全检测结果。
在一种可能的实施方式中,考虑到软件包需要适应各种系统平台,即针对各种系统平台分别生成软件包,这样,导致不同软件包内的文件的文件描述向量不同,但是,不同软件包内的文件的指令集一致,安全检测结果也一致,因此,当基于目标文件图谱和样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配时,还可以比较目标指令图谱和样本指令图谱,基于目标指令图谱和样本指令图谱确认是否存在相似或相同文件。
示例性的,作为步骤409的一种替代方式,可以采用如下方式确定第二目标文件的安全检测结果:基于目标指令图谱和样本指令图谱确定第二目标文件的安全检测结果。比如说,若基于目标指令图谱和样本指令图谱确定第二目标文件的指令句向量与第二样本文件的指令句向量匹配,则可以将第二样本文件的安全检测结果作为第二目标文件的安全检测结果,第二样本文件可以是样本软件包中任一样本文件。若基于目标指令图谱和样本指令图谱确定第二目标文件的指令句向量与每个样本文件的指令句向量均不匹配,则可以对该第二目标文件进行安全扫描得到该第二目标文件的安全检测结果。
目标指令图谱包括目标文件的指令句向量,样本指令图谱包括样本文件的指令句向量,基于目标指令图谱和样本指令图谱,可以确定第二目标文件的指令句向量与样本文件的指令句向量是否匹配。若第二目标文件的指令句向量与样本文件的指令句向量之间的匹配相似度不小于相似度阈值,确定第二目标文件的指令句向量与该样本文件的指令句向量匹配。若该匹配相似度小于相似度阈值,确定第二目标文件的指令句向量与该样本文件的指令句向量不匹配。
其中,若第二目标文件的指令句向量与文件图谱库中的任一样本文件的指令句向量之间的匹配相似度不小于相似度阈值,则确定第二目标文件的指令句向量与该样本文件的指令句向量匹配,将该样本文件称为第二样本文件,并将第二样本文件的安全检测结果作为第二目标文件的安全检测结果。若第二目标文件的指令句向量与文件图谱库中所有样本文件的指令句向量之间的匹配相似度均小于相似度阈值,则确定第二目标文件的指令句向量与所有样本文件的指令句向量均不匹配,对该第二目标文件进行安全扫描得到安全检测结果。
示例性的,若基于第二目标文件的第一更新时间与第二样本文件的第二更新时间确定样本指令图谱位于有效期内,则将第二样本文件的安全检测结果作为第二目标文件的安全检测结果。若基于第一更新时间与第二更新时间确定样本指令图谱不位于有效期内,则对该第二目标文件进行安全扫描得到安全检测结果。其中,第二目标文件的第一更新时间可以为目标软件包的第一更新时间,第二样本文件的第二更新时间可以为样本软件包的第二更新时间。
在一种可能的实施方式中,为了计算第二目标文件的指令句向量与样本文件的指令句向量之间的匹配相似度,可以采用网络模型计算匹配相似度,也可以采用相似度算法计算匹配相似度,还可以采用其它方式计算匹配相似度,对此匹配相似度的计算方式不做限制,以采用网络模型计算匹配相似度为例。
示例性的,可以采用不同编译信息的样本数据训练多个网络模型,并将多个网络模型添加到网络模型集合中,以下对网络模型的训练过程进行说明。
比如说,可以获取初始模型,该初始模型可以是基于深度学习的模型,也可以是基于神经网络的模型,对此初始模型的结构不做限制。比如说,该初始模型可以是孪生神经网络(如结合CNN(卷积神经网络)和LSTM(长短期记忆网络)构建的孪生神经网络),也可以是其它类型的模型。
比如说,可以获取多个编译信息的样本数据,考虑到软件包需要适应各种系统平台,即针对各种系统平台分别生成软件包,而不同系统平台会采用不同编译信息,因此,需要获取多个编译信息的样本数据,该编译信息可以包括系统平台的编译架构和编译方式。比如说,可以获取编译信息A的样本数据,编译信息A包括X86编译架构和GCC1编译方式,可以获取编译信息B的样本数据,编译信息B包括X86编译架构和GCC2编译方式,可以获取编译信息C的样本数据,编译信息C包括ARM编译架构和GCC1编译方式,以此类推。
可以采用编译信息A的样本数据对初始模型进行训练,对此训练方式不做限制,得到编译信息A的网络模型。可以采用编译信息B的样本数据对初始模型进行训练,得到编译信息B的网络模型。可以采用编译信息C的样本数据对初始模型进行训练,得到编译信息C的网络模型,以此类推。不同编译信息的网络模型采用相同网络架构,不同编译信息的网络模型对应不同网络参数。
示例性的,为了计算第二目标文件的指令句向量与样本文件的指令句向量之间的匹配相似度,可以先获取目标软件包对应的目标编译信息,从网络模型集合中选取与该目标编译信息对应的目标网络模型,目标网络模型是采用目标编译信息的样本数据训练的。比如说,假设目标软件包对应的目标编译信息是编译信息A,即采用X86编译架构和GCC1编译方式得到目标软件包,则可以从网络模型集合中选取编译信息A的网络模型作为目标网络模型。通过选取目标编译信息对应的目标网络模型,能够提高匹配相似度的检测精度。
示例性的,可以将第二目标文件的指令句向量和样本软件包中的样本文件的指令句向量输入给目标网络模型,由目标网络模型输出第二目标文件的指令句向量与该样本文件的指令句向量之间的匹配相似度。若该匹配相似度大于相似度阈值,则确定第二目标文件的指令句向量与该样本文件的指令句向量匹配,将该样本文件作为第二样本文件。若该匹配相似度不大于相似度阈值,则确定第二目标文件的指令句向量与该样本文件的指令句向量不匹配。
在一种可能的实施方式中,可以将目标文件图谱存储为样本文件图谱,即在文件图谱库中存储目标文件图谱,并在样本文件图谱中记录每个目标文件的安全检测结果、每个目标功能组件的安全检测结果、目标软件包的安全检测结果。以及,可以将目标指令图谱存储为样本指令图谱,即在文件图谱库中存储目标指令图谱,并在样本指令图谱中记录每个目标文件的安全检测结果、每个目标功能组件的安全检测结果、目标软件包的安全检测结果。
在一种可能的实施方式中,在得到目标软件包的安全检测结果、每个目标功能组件的安全检测结果和每个目标文件的安全检测结果之后,可以聚合这些安全检测结果,生成安全检测报告,即安全检测报告包括这些安全检测结果。
由以上技术方案可见,本申请实施例中,复用样本文件的安全检测结果作为目标文件的安全检测结果,避免对目标文件进行病毒扫描、软件成分分析等安全检测,能够节约处理资源,减少检测时间,软件包的安全检测效率比较高。通过复用样本文件图谱的已检测结果,提升安全扫描的效率,提升检测结果复用率,提升安全检测速度,提升文件的安全检测效率,避免重复文件反复占用检测资源。能够将文件扫描从重复扫描,转换为基于历史扫描数据构建的文件图谱进行匹配识别,提取重复部分或高相似度部分,极高的提升了文件安全扫描的效率,解决相同或类似架构的大文件的重复扫描问题,具备比较高的相似图谱提取率,预计大软件包的检测效率提升60%以上。基于指令图谱,识别出软件包的微小非功能性非架构性改动(如文件描述性修改、不同操作系统适配编译等),这些改动不影响安全检测结果,可进一步提升检测结果复用率,提升安全检测速度。文件图谱的安全检测结果合集具备时效性,如设置为1个月,当失效后直接丢弃检测结果,该时效性也可根据安全扫描漏洞库更新的具体内容来进行调整,保证最终检测结果的准确性。
基于与上述方法同样的申请构思,本申请实施例提出一种基于文件图谱拟合的安全检测装置,参见图5所示,为所述装置的结构示意图,所述装置包括:
获取模块51,用于获取目标软件包对应的目标文件图谱;其中,所述目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,所述目标文件图谱包括每个目标文件的文件描述向量;
确定模块52,用于基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,所述样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,所述样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果;其中,所述确定模块52基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:
若基于所述目标文件图谱和所述样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;其中,所述第一目标文件是目标软件包中任一目标文件,所述第一样本文件是样本软件包中任一样本文件。
示例性的,所述目标文件图谱包括所述目标软件包的软件包描述向量,所述样本文件图谱包括所述样本软件包的软件包描述向量和所述样本软件包的安全检测结果;所述确定模块52基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:若基于所述目标文件图谱和所述样本文件图谱确定所述目标软件包的软件包描述向量与所述样本软件包的软件包描述向量匹配,则将所述样本软件包的安全检测结果确定为所述目标软件包的安全检测结果,基于所述样本软件包中每个样本文件的安全检测结果确定所述目标软件包中每个目标文件的安全检测结果。
示例性的,所述目标文件图谱包括每个目标功能组件的组件描述向量,所述样本文件图谱包括每个样本功能组件的组件描述向量和该样本功能组件的安全检测结果;所述确定模块52基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:若基于所述目标文件图谱和所述样本文件图谱确定第一目标功能组件的组件描述向量与第一样本功能组件的组件描述向量匹配,则将所述第一样本功能组件的安全检测结果确定为所述第一目标功能组件的安全检测结果,并基于所述第一样本功能组件中每个样本文件的安全检测结果确定所述第一目标功能组件中每个目标文件的安全检测结果;其中,所述第一目标功能组件是所述目标软件包中任一目标功能组件,所述第一样本功能组件是所述样本软件包中任一样本功能组件。
示例性的,若所述确定模块52基于所述目标文件图谱和所述样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配,所述获取模块51,还用于获取所述目标软件包对应的目标指令图谱,所述目标指令图谱包括每个目标文件的指令句向量;所述确定模块52,还用于基于所述目标指令图谱和所述样本软件包对应的已存储的样本指令图谱,确定所述第二目标文件的安全检测结果,所述样本指令图谱包括每个样本文件的指令句向量和该样本文件的安全检测结果;若基于所述目标指令图谱和所述样本指令图谱确定所述第二目标文件的指令句向量与第二样本文件的指令句向量匹配,则将第二样本文件的安全检测结果确定为所述第二目标文件的安全检测结果,第二样本文件是样本软件包中任一样本文件;若基于所述目标指令图谱和所述样本指令图谱确定所述第二目标文件的指令句向量与每个样本文件的指令句向量均不匹配,对第二目标文件进行安全扫描得到所述第二目标文件的安全检测结果。
示例性的,所述确定模块52,还用于基于所述目标软件包对应的目标编译信息从网络模型集合中选取目标网络模型,所述网络模型集合包括采用不同编译信息的样本数据训练的多个网络模型,所述目标网络模型是采用所述目标编译信息的样本数据训练的;将所述第二目标文件的指令句向量和样本软件包中的样本文件的指令句向量输入给所述目标网络模型,由所述目标网络模型输出所述第二目标文件的指令句向量与该样本文件的指令句向量之间的匹配相似度;若所述匹配相似度不小于相似度阈值,则确定所述第二目标文件的指令句向量与该样本文件的指令句向量匹配;若所述匹配相似度小于所述相似度阈值,则确定所述第二目标文件的指令句向量与该样本文件的指令句向量不匹配。
示例性的,所述确定模块52基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:若基于所述目标软件包的第一更新时间与所述样本软件包的第二更新时间确定所述样本文件图谱位于有效期内,则基于所述目标文件图谱和所述样本文件图谱确定目标文件的安全检测结果;所述确定模块52,还用于若基于所述第一更新时间与所述第二更新时间确定所述样本文件图谱不位于有效期内,针对所述目标软件包中的每个目标文件,对该目标文件进行安全扫描得到该目标文件的安全检测结果;其中,若所述第一更新时间与所述第二更新时间的差值小于预设时长阈值,则所述样本文件图谱位于有效期内,否则,所述样本文件图谱不位于有效期内。
示例性的,所述获取模块51,还用于将所述目标文件图谱存储为样本文件图谱,在样本文件图谱中记录目标文件的安全检测结果;将所述目标指令图谱存储为样本指令图谱,在样本指令图谱中记录目标文件的安全检测结果;其中,所述获取模块51获取目标文件的文件描述向量时具体用于:获取所述目标文件对应的参数信息,所述参数信息包括以下至少一种:文件名、文件类型、文件hash、文件大小;对所述参数信息进行语义特征提取,得到所述目标文件的文件描述向量;其中,所述获取模块51获取目标文件的指令句向量时具体用于:获取所述目标文件对应的指令信息,所述目标文件包括多个函数段,所述指令信息包括每个函数段的函数名称和函数段内指令的指令名称;对所述指令信息进行语义特征提取,得到所述目标文件的指令句向量。
基于与上述方法同样的申请构思,本申请实施例提出一种电子设备,参见图6所示,所述电子设备包括处理器61和机器可读存储介质62,机器可读存储介质62存储有能够被处理器61执行的机器可执行指令;处理器61用于执行机器可执行指令,以实现上述基于文件图谱拟合的安全检测方法。
基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,机器可读存储介质上存储有若干计算机指令,计算机指令被处理器执行时,能够实现上述示例的基于文件图谱拟合的安全检测方法。
其中,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种基于文件图谱拟合的安全检测方法,其特征在于,所述方法包括:
获取目标软件包对应的目标文件图谱;其中,所述目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,所述目标文件图谱包括每个目标文件的文件描述向量和每个目标功能组件的组件描述向量;
基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,所述样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,所述样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果、每个样本功能组件的组件描述向量和该样本功能组件的安全检测结果;
其中,若基于所述目标文件图谱和所述样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;所述第一目标文件是目标软件包中任一目标文件,所述第一样本文件是样本软件包中任一样本文件;
若基于所述目标文件图谱和所述样本文件图谱确定第一目标功能组件的组件描述向量与第一样本功能组件的组件描述向量匹配,则将所述第一样本功能组件的安全检测结果确定为第一目标功能组件的安全检测结果,并基于所述第一样本功能组件中每个样本文件的安全检测结果确定第一目标功能组件中每个目标文件的安全检测结果;其中,所述第一目标功能组件是目标软件包中任一目标功能组件,所述第一样本功能组件是样本软件包中任一样本功能组件。
2.根据权利要求1所述的方法,其特征在于,所述目标文件图谱包括所述目标软件包的软件包描述向量,所述样本文件图谱包括所述样本软件包的软件包描述向量和安全检测结果;所述基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果,包括:
若基于所述目标文件图谱和所述样本文件图谱确定所述目标软件包的软件包描述向量与所述样本软件包的软件包描述向量匹配,则将所述样本软件包的安全检测结果确定为目标软件包的安全检测结果,基于所述样本软件包中每个样本文件的安全检测结果确定目标软件包中每个目标文件的安全检测结果。
3.根据权利要求1或2所述的方法,其特征在于,
若基于所述目标文件图谱和所述样本文件图谱确定第二目标文件的文件描述向量与每个样本文件的文件描述向量均不匹配,所述方法还包括:
对所述第二目标文件进行安全扫描得到所述第二目标文件的安全检测结果;
或者,获取所述目标软件包对应的目标指令图谱,所述目标指令图谱包括每个目标文件的指令句向量;基于所述目标指令图谱和所述样本软件包对应的已存储的样本指令图谱,确定所述第二目标文件的安全检测结果;其中,所述样本指令图谱包括每个样本文件的指令句向量和该样本文件的安全检测结果;
其中,若基于所述目标指令图谱和所述样本指令图谱确定所述第二目标文件的指令句向量与第二样本文件的指令句向量匹配,则将第二样本文件的安全检测结果确定为所述第二目标文件的安全检测结果,所述第二样本文件是样本软件包中任一样本文件;若基于所述目标指令图谱和所述样本指令图谱确定所述第二目标文件的指令句向量与每个样本文件的指令句向量均不匹配,则对所述第二目标文件进行安全扫描得到所述第二目标文件的安全检测结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述目标软件包对应的目标编译信息从网络模型集合中选取目标网络模型,所述网络模型集合包括采用不同编译信息的样本数据训练的多个网络模型,所述目标网络模型是采用所述目标编译信息的样本数据训练的;
将所述第二目标文件的指令句向量和样本软件包中的样本文件的指令句向量输入给所述目标网络模型,由所述目标网络模型输出所述第二目标文件的指令句向量与该样本文件的指令句向量之间的匹配相似度;
若所述匹配相似度不小于相似度阈值,则确定所述第二目标文件的指令句向量与该样本文件的指令句向量匹配;若所述匹配相似度小于所述相似度阈值,则确定所述第二目标文件的指令句向量与该样本文件的指令句向量不匹配。
5.根据权利要求1或2所述的方法,其特征在于,
所述基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果,包括:若基于所述目标软件包的第一更新时间与所述样本软件包的第二更新时间确定所述样本文件图谱位于有效期内,则基于所述目标文件图谱和所述样本文件图谱确定目标文件的安全检测结果;
所述方法还包括:若基于所述第一更新时间与所述第二更新时间确定所述样本文件图谱不位于有效期内,针对所述目标软件包中的每个目标文件,对该目标文件进行安全扫描得到该目标文件的安全检测结果;
若所述第一更新时间与所述第二更新时间的差值小于预设时长阈值,则所述样本文件图谱位于有效期内,否则,所述样本文件图谱不位于有效期内。
6.根据权利要求3所述的方法,其特征在于,
所述基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果之后,还包括:将所述目标文件图谱存储为样本文件图谱,在样本文件图谱中记录目标文件的安全检测结果;将所述目标指令图谱存储为样本指令图谱,在样本指令图谱中记录目标文件的安全检测结果;
其中,在获取目标软件包对应的目标文件图谱时,目标文件的文件描述向量的获取方式包括:获取所述目标文件对应的参数信息,所述参数信息包括以下至少一种:文件名、文件类型、文件hash、文件大小;对所述参数信息进行语义特征提取,得到所述目标文件的文件描述向量;
在获取目标软件包对应的目标指令图谱时,目标文件的指令句向量的获取方式包括:获取所述目标文件对应的指令信息,所述目标文件包括多个函数段,所述指令信息包括每个函数段的函数名称和函数段内指令的指令名称;对所述指令信息进行语义特征提取,得到所述目标文件的指令句向量。
7.一种基于文件图谱拟合的安全检测装置,其特征在于,所述装置包括:
获取模块,用于获取目标软件包对应的目标文件图谱;其中,所述目标软件包包括至少一个目标功能组件,针对每个目标功能组件,该目标功能组件包括至少一个目标文件,所述目标文件图谱包括每个目标文件的文件描述向量和每个目标功能组件的组件描述向量;
确定模块,用于基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果;其中,所述样本软件包包括至少一个样本功能组件,针对每个样本功能组件,该样本功能组件包括至少一个样本文件,所述样本文件图谱包括每个样本文件的文件描述向量和该样本文件的安全检测结果、每个样本功能组件的组件描述向量和该样本功能组件的安全检测结果;其中,所述确定模块基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:
若基于所述目标文件图谱和所述样本文件图谱确定第一目标文件的文件描述向量与第一样本文件的文件描述向量匹配,则将第一样本文件的安全检测结果确定为第一目标文件的安全检测结果;其中,所述第一目标文件是目标软件包中任一目标文件,所述第一样本文件是样本软件包中任一样本文件;
若基于所述目标文件图谱和所述样本文件图谱确定第一目标功能组件的组件描述向量与第一样本功能组件的组件描述向量匹配,则将所述第一样本功能组件的安全检测结果确定为第一目标功能组件的安全检测结果,并基于所述第一样本功能组件中每个样本文件的安全检测结果确定第一目标功能组件中每个目标文件的安全检测结果;其中,所述第一目标功能组件是目标软件包中任一目标功能组件,所述第一样本功能组件是样本软件包中任一样本功能组件。
8.根据权利要求7所述的装置,其特征在于,
所述目标文件图谱包括所述目标软件包的软件包描述向量,所述样本文件图谱包括所述样本软件包的软件包描述向量和所述样本软件包的安全检测结果;所述确定模块基于所述目标文件图谱和样本软件包对应的已存储的样本文件图谱,确定目标文件的安全检测结果时具体用于:若基于所述目标文件图谱和所述样本文件图谱确定所述目标软件包的软件包描述向量与所述样本软件包的软件包描述向量匹配,则将所述样本软件包的安全检测结果确定为所述目标软件包的安全检测结果,基于所述样本软件包中每个样本文件的安全检测结果确定所述目标软件包中每个目标文件的安全检测结果。
9.一种电子设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现权利要求1-6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311214397.XA CN116956295B (zh) | 2023-09-19 | 2023-09-19 | 基于文件图谱拟合的安全检测方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311214397.XA CN116956295B (zh) | 2023-09-19 | 2023-09-19 | 基于文件图谱拟合的安全检测方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116956295A CN116956295A (zh) | 2023-10-27 |
CN116956295B true CN116956295B (zh) | 2024-01-05 |
Family
ID=88449604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311214397.XA Active CN116956295B (zh) | 2023-09-19 | 2023-09-19 | 基于文件图谱拟合的安全检测方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116956295B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700033A (zh) * | 2015-03-30 | 2015-06-10 | 北京瑞星信息技术有限公司 | 病毒检测的方法及装置 |
US9672358B1 (en) * | 2015-11-04 | 2017-06-06 | Invincea, Inc. | Methods and apparatus for detecting malware samples with similar image sets |
WO2020048392A1 (zh) * | 2018-09-06 | 2020-03-12 | 腾讯科技(深圳)有限公司 | 应用程序的病毒检测方法、装置、计算机设备及存储介质 |
CN111625841A (zh) * | 2020-07-29 | 2020-09-04 | 杭州海康威视数字技术股份有限公司 | 一种病毒处理方法、装置及设备 |
CN113158653A (zh) * | 2021-04-25 | 2021-07-23 | 北京智源人工智能研究院 | 预训练语言模型的训练方法、应用方法、装置及设备 |
CN113486989A (zh) * | 2021-08-04 | 2021-10-08 | 北京字节跳动网络技术有限公司 | 基于知识图谱的对象识别方法、装置、可读介质和设备 |
CN113961919A (zh) * | 2020-12-23 | 2022-01-21 | 网神信息技术(北京)股份有限公司 | 恶意软件检测方法和装置 |
CN114564726A (zh) * | 2022-03-03 | 2022-05-31 | 山东聚合数据服务有限公司 | 一种基于大数据办公的软件漏洞分析方法及系统 |
US11436330B1 (en) * | 2021-07-14 | 2022-09-06 | Soos Llc | System for automated malicious software detection |
CN116226850A (zh) * | 2023-01-13 | 2023-06-06 | 腾讯科技(深圳)有限公司 | 应用程序的病毒检测方法、装置、设备、介质及程序产品 |
CN116305113A (zh) * | 2023-01-31 | 2023-06-23 | 杭州安恒信息技术股份有限公司 | 一种可执行文件检测方法、装置、设备及存储介质 |
CN116595525A (zh) * | 2023-05-17 | 2023-08-15 | 西北工业大学 | 一种基于软件图谱的阈值机制恶意软件检测方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10795996B2 (en) * | 2017-07-17 | 2020-10-06 | AO Kaspersky Lab | System and method of machine learning of malware detection model |
-
2023
- 2023-09-19 CN CN202311214397.XA patent/CN116956295B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700033A (zh) * | 2015-03-30 | 2015-06-10 | 北京瑞星信息技术有限公司 | 病毒检测的方法及装置 |
US9672358B1 (en) * | 2015-11-04 | 2017-06-06 | Invincea, Inc. | Methods and apparatus for detecting malware samples with similar image sets |
WO2020048392A1 (zh) * | 2018-09-06 | 2020-03-12 | 腾讯科技(深圳)有限公司 | 应用程序的病毒检测方法、装置、计算机设备及存储介质 |
CN111625841A (zh) * | 2020-07-29 | 2020-09-04 | 杭州海康威视数字技术股份有限公司 | 一种病毒处理方法、装置及设备 |
CN113961919A (zh) * | 2020-12-23 | 2022-01-21 | 网神信息技术(北京)股份有限公司 | 恶意软件检测方法和装置 |
CN113158653A (zh) * | 2021-04-25 | 2021-07-23 | 北京智源人工智能研究院 | 预训练语言模型的训练方法、应用方法、装置及设备 |
US11436330B1 (en) * | 2021-07-14 | 2022-09-06 | Soos Llc | System for automated malicious software detection |
CN113486989A (zh) * | 2021-08-04 | 2021-10-08 | 北京字节跳动网络技术有限公司 | 基于知识图谱的对象识别方法、装置、可读介质和设备 |
CN114564726A (zh) * | 2022-03-03 | 2022-05-31 | 山东聚合数据服务有限公司 | 一种基于大数据办公的软件漏洞分析方法及系统 |
CN116226850A (zh) * | 2023-01-13 | 2023-06-06 | 腾讯科技(深圳)有限公司 | 应用程序的病毒检测方法、装置、设备、介质及程序产品 |
CN116305113A (zh) * | 2023-01-31 | 2023-06-23 | 杭州安恒信息技术股份有限公司 | 一种可执行文件检测方法、装置、设备及存储介质 |
CN116595525A (zh) * | 2023-05-17 | 2023-08-15 | 西北工业大学 | 一种基于软件图谱的阈值机制恶意软件检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于函数调用图的Android恶意代码检测方法研究;李自清;;计算机测量与控制(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116956295A (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684469B (zh) | 敏感词过滤方法、装置、计算机设备及存储介质 | |
US10839308B2 (en) | Categorizing log records at run-time | |
US11012522B2 (en) | Modifying application functionality based on usage patterns of other users | |
CN111159697B (zh) | 一种密钥检测方法、装置及电子设备 | |
CN110737818A (zh) | 网络发布数据处理方法、装置、计算机设备和存储介质 | |
CN109299276B (zh) | 一种将文本转化为词嵌入、文本分类方法和装置 | |
US11715005B2 (en) | Verification and identification of a neural network | |
US20210044864A1 (en) | Method and apparatus for identifying video content based on biometric features of characters | |
CN116956295B (zh) | 基于文件图谱拟合的安全检测方法、装置及设备 | |
CN110532773B (zh) | 恶意访问行为识别方法、数据处理方法、装置和设备 | |
US20240004638A1 (en) | Systems and methods for detection of software vulnerability fix | |
CN114185766A (zh) | 一种代码检测方法、装置、电子设备及存储介质 | |
CN114285587A (zh) | 域名鉴别方法和装置、域名分类模型的获取方法和装置 | |
US11966851B2 (en) | Construction of a machine learning model | |
CN111552842A (zh) | 一种数据处理的方法、装置和存储介质 | |
CN116204726A (zh) | 一种基于多模态模型的数据处理方法、装置及设备 | |
CN113609279B (zh) | 一种物料型号提取方法、装置及计算机设备 | |
CN115907400A (zh) | 一种工单处理方法及装置 | |
CN113297498B (zh) | 基于互联网的食品属性挖掘方法及系统 | |
CN115618054A (zh) | 视频推荐方法及装置 | |
CN114792007A (zh) | 代码检测方法、装置、设备、存储介质和计算机程序产品 | |
CN103955449A (zh) | 定位目标样本的方法和装置 | |
CN113010573A (zh) | 一种关联关系提取方法、装置及电子设备 | |
CN112990466A (zh) | 一种冗余规则检测方法、装置以及服务器 | |
KR20160025881A (ko) | 공유 라이브러리 파일의 악성을 진단하기 위한 장치 및 방법 |
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 |