CN113569206A - 一种软件识别方法、系统、设备及计算机可读存储介质 - Google Patents

一种软件识别方法、系统、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN113569206A
CN113569206A CN202110745013.1A CN202110745013A CN113569206A CN 113569206 A CN113569206 A CN 113569206A CN 202110745013 A CN202110745013 A CN 202110745013A CN 113569206 A CN113569206 A CN 113569206A
Authority
CN
China
Prior art keywords
software
target
determining
degree
difference degree
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.)
Pending
Application number
CN202110745013.1A
Other languages
English (en)
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202110745013.1A priority Critical patent/CN113569206A/zh
Publication of CN113569206A publication Critical patent/CN113569206A/zh
Pending legal-status Critical Current

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种软件识别方法、系统、设备及计算机可读存储介质,确定待识别的目标软件;获取目标软件在预设数量的客户端上的各个目标文件路径;确定各个目标文件路径间的差异程度;判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则确定目标软件为正常软件;若差异程度在预设阈值范围外,则确定目标软件为异常软件。本申请中,只需对目标软件在预设数量的客户端上的各个目标文件路径进行差异程度判断,便可以根据差异程度判断结果确定目标软件是否为正常软件,与人工识别软件相比,效率高且准确性好。本申请提供的软件识别系统、设备及计算机可读存储介质也解决了相应技术问题。

Description

一种软件识别方法、系统、设备及计算机可读存储介质
技术领域
本申请涉及软件识别技术领域,更具体地说,涉及一种软件识别方法、系统、设备及计算机可读存储介质。
背景技术
在计算机中,行业软件是针对特定行业而专门制定的、具有明显行业特性的软件,且有部分行业软件比较小众。在客户端应用行业软件等软件的过程中,人工先判断软件是否为正常软件,若是,则将该软件标记为正常软件,这样,客户端可以直接应用该软件,若否,则将该软件标记为异常软件,以提示客户端不能直接应用该软件。
然而,在软件的识别过程中,人工审核存在误审或漏审的情况,导致软件的识别准确性不高,存在误报或者漏报的情况,不利用软件被客户端应用。
综上所述,如何准确对软件进行识别是目前本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种软件识别方法,其能在一定程度上解决如何准确对软件进行识别的技术问题。本申请还提供了一种软件识别系统、设备及计算机可读存储介质。
为了实现上述目的,第一方面,本申请提供一种软件识别方法,包括:
确定待识别的目标软件;
获取所述目标软件在预设数量的客户端上的各个目标文件路径;
确定各个所述目标文件路径间的差异程度;
判断所述差异程度是否在预设阈值范围内;
若所述差异程度在所述预设阈值范围内,则确定所述目标软件为正常软件;
若所述差异程度在所述预设阈值范围外,则确定所述目标软件为异常软件。
优选的,所述获取所述目标软件在预设数量的客户端上的各个目标文件路径,包括:
获取所述目标软件在预设数量的客户端上的各个初始文件路径;
过滤掉各个所述初始文件路径中的系统文件目录,得到各个所述目标文件路径。
优选的,所述确定各个所述目标文件路径间的差异程度,包括:
对各个所述目标文件路径进行向量化表示,得到对应的目标向量值;
计算所有的所述目标向量值的波动程度;
将所述波动程度作为所述差异程度。
优选的,所述计算所有的所述目标向量值的波动程度,包括:
计算所有的所述目标向量值的目标方差值;
将所述目标方差值作为所述波动程度。
优选的,所述对各个所述目标文件路径进行向量化表示,得到对应的目标向量值,包括:
对于各个所述目标文件路径,均按照目录分隔符对所述目标文件路径进行分割,得到目录词汇,将所述目录词汇转换为对应的第一向量值,基于所述第一向量值确定所述目标向量值。
优选的,所述基于所述第一向量值确定所述目标向量值,包括:
将所述第一向量值的中心值作为所述目标向量值。
优选的,所述确定各个所述目标文件路径间的差异程度之前,还包括:
获取已有的白软件;
获取各个所述白软件在预设数量的客户端上的各个历史文件路径;
对各个所述历史文件路径进行向量化表示,得到对应的历史向量值;
计算各个所述白软件的历史向量值的历史方差值;
基于所述历史方差值确定所述预设阈值范围。
第二方面,本申请提供一种软件识别系统,包括:
目标软件确定模块,用于确定待识别的目标软件;
文件路径获取模块,用于获取所述目标软件在预设数量的客户端上的各个目标文件路径;
差异程度确定模块,用于确定各个所述目标文件路径间的差异程度;
软件识别模块,用于判断所述差异程度是否在预设阈值范围内;若所述差异程度在所述预设阈值范围内,则确定所述目标软件为正常软件;若所述差异程度在所述预设阈值范围外,则确定所述目标软件为异常软件。
第三方面,本申请提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一所述软件识别方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述软件识别方法的步骤。
本申请提供的一种软件识别方法,确定待识别的目标软件;获取目标软件在预设数量的客户端上的各个目标文件路径;确定各个目标文件路径间的差异程度;判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则确定目标软件为正常软件;若差异程度在预设阈值范围外,则确定目标软件为异常软件。本申请中,只需对目标软件在预设数量的客户端上的各个目标文件路径进行差异程度判断,便可以根据差异程度判断结果确定目标软件是否为正常软件,与人工识别软件相比,效率高且准确性好。本申请提供的软件识别系统、设备及计算机可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种软件识别方法的第一流程图;
图2为本申请实施例提供的一种软件识别方法的第二流程图;
图3为本申请实施例提供的一种软件识别方法的第三流程图;
图4为本申请实施例中预设阈值范围的确定流程图;
图5为本申请实施例提供的一种软件识别系统的结构示意图;
图6为本发明实施例电子设备的硬件组成结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1为本申请实施例提供的一种软件识别方法的第一流程图。
本申请实施例提供的一种软件识别方法,可以包括以下步骤:
步骤S101:确定待识别的目标软件。
实际应用中,可以先确定待识别的目标软件,具体的,可以将新出现的软件作为待识别的目标软件,或者将以前判定为非行业软件的软件作为待识别的目标软件等,本申请在此不做具体限定。
步骤S102:获取目标软件在预设数量的客户端上的各个目标文件路径。
实际应用中,因为行业软件在各个客户端上的文件路径的差别很小,具有相似性,所以在确定待识别的目标软件之后,可以获取目标软件在预设数量的客户端上的各个目标文件路径,以便后续根据各个目标文件路径判断目标软件是否为行业软件。客户端的预设数量可以根据具体应用场景来确定,比如可以为局域网内客户端的数量等。
步骤S103:确定各个目标文件路径间的差异程度。
步骤S104:判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则执行步骤S105;若差异程度在预设阈值范围外,则执行步骤S106。
步骤S105:确定目标软件为正常软件。
步骤S106:确定目标软件为异常软件。
实际应用中,在获取目标软件在预设数量的客户端上的各个目标文件路径之后,因为目标软件正常的话,目标软件在各个客户端上的目标文件路径间的差异程度较小,所以可以确定各个目标文件路径间的差异程度,判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则可以确定目标软件为正常软件;若差异程度是否在预设阈值范围外,则可以确定目标软件为异常软件。以借助目标软件在客户端上的文件路径判断目标软件是否为正常软件。
需要说明的是,预设阈值范围的取值可以根据实际需要确定,且在确定目标软件为异常软件之后,还可以进一步对目标软件进行分析来确定目标软件的异常原因,比如对目标软件进行安全性分析,根据安全性分析结果确定目标软件的异常原因等,本申请在此不做具体限定。
本申请提供的一种软件识别方法,确定待识别的目标软件;获取目标软件在预设数量的客户端上的各个目标文件路径;确定各个目标文件路径间的差异程度;判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则确定目标软件为正常软件;若差异程度在预设阈值范围外,则确定目标软件为异常软件。本申请中,只需对目标软件在预设数量的客户端上的各个目标文件路径进行差异程度判断,便可以根据差异程度判断结果确定目标软件是否为正常软件,与人工识别软件相比,效率高且准确性好。
请参阅图2,图2为本申请实施例提供的一种软件识别方法的第二流程图。
本申请实施例提供的一种软件识别方法,可以包括以下步骤:
步骤S201:确定待识别的目标软件。
步骤S202:获取目标软件在预设数量的客户端上的各个初始文件路径。
步骤S203:过滤掉各个初始文件路径中的系统文件目录,得到各个目标文件路径。
实际应用中,用户在客户端上安装目标软件时,会根据自身喜好来自定义目标软件的安装位置,这会导致目标软件在各个客户端上的系统文件目录不同,而系统文件目录并不会影响软件是否为行业软件,且因为系统文件目录的不同会导致目标文件路径将的相似性降低,所以为了更加准确的判断目标文件路径是否相似,更加快速的对行业软件进行识别,在获取目标软件在预设数量的客户端上的各个目标文件路径的过程中,可以获取目标软件在预设数量的客户端上的各个初始文件路径;过滤掉各个初始文件路径中的系统文件目录,得到各个目标文件路径。
步骤S204:确定各个目标文件路径间的差异程度。
步骤S205:判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则执行步骤S206;若差异程度在预设阈值范围外,则执行步骤S207。
步骤S206:确定目标软件为正常软件。
步骤S207:确定目标软件为异常软件。
请参阅图3,图3为本申请实施例提供的一种软件识别方法的第三流程图。
本申请实施例提供的一种软件识别方法中,可以包括以下步骤:
步骤S301:确定待识别的目标软件。
步骤S302:获取目标软件在预设数量的客户端上的各个初始文件路径。
步骤S303:过滤掉各个初始文件路径中的系统文件目录,得到各个目标文件路径。
步骤S304:对各个目标文件路径进行向量化表示,得到对应的目标向量值。
实际应用中,在确定各个目标文件路径间的差异程度的过程中,因为目标文件路径是由字符组成的,单纯对目标文件路径进行差异程度计算的话,需对字符进行多次比较,难以实施,所以为了便于确定各个目标文件路径间的差异程度,可以对各个目标文件路径进行向量化表示,得到对应的目标向量值,此时目标文件路径可以直接用目标向量值表示,便于后续根据目标向量值快速确定各个目标文件路径间的差异程度。
步骤S305:计算所有的目标向量值的波动程度。
步骤S306:将波动程度作为差异程度。
实际应用中,在对各个目标文件路径进行向量化表示,得到对应的目标向量值之后,如果目标文件路径间差异程度小的话,各个目标文件路径转换得到的目标向量值间的差值较小,其在一定范围内波动,所以可以计算所有的目标向量值的波动程度,并将波动程度作为差异程度,此时,后续的预设阈值范围需根据波动程度来确定。
实际应用中,如果目标向量值的波动在预设阈值范围内的话,目标向量值的方差会小于一定值,所以在计算所有的目标向量值的波动程度的过程中,可以计算所有的目标向量值的目标方差值,将该目标方差值作为波动程度。当然,也可以计算所有的目标向量值的目标标准差等可以反映目标向量值是否波动的其他参数来作为波动程度,本申请在此不做具体限定。
需要说明的是,目标文件路径间的差异程度还可以通过目标文件路径间的相似程度来表示,也即可以将目标文件路径的相似程度作为相应的差异程度,具体应用场景中,在对各个目标文件路径进行向量化表示,得到对应的目标向量值之后,可以计算所有的目标向量值的相似程度,将目标向量值间的相似程度作为差异程度,在计算相似程度的过程中,所选取的相似程度计算方法可以根据实际需要确定,比如可以通过欧几里得距离、皮尔逊相关系数、余弦相似度等计算方法来计算相似程度等,本申请在此不做具体限定。步骤S307:判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则执行步骤S308;若差异程度在预设阈值范围外,则执行步骤S309。
步骤S308:确定目标软件为正常软件。
步骤S309:确定目标软件为异常软件。
本申请实施例提供的一种软件识别方法中,在具体应用场景中,因为每个目标文件路径是由不同级别目录名以及文件名通过目录分隔符拼接而成的,而在向量转换过程中,目录分隔符是无需向量化的,所以在对各个目标文件路径进行向量化表示,得到对应的目标向量值的过程中,对于各个目标文件路径,可以均按照目录分隔符对目标文件路径进行分割,得到目录词汇,将目录词汇转换为对应的第一向量值,基于第一向量值确定目标向量值。为了便于理解,假设目标文件路径为“/ABC/DEF/HIJ/KLM”,则分割得到的目录词汇可以为‘ABC’、‘DEF’、‘HIJ’、‘KLM’,且实际应用中。在将目录词汇转换为对应的第一向量值的过程中,可以将每一个目标文件路径类比成自然语言处理领域中的一个句子,每一个目录词汇类比成句子中的一个词,然后借助自然语言处理领域中的模型,将每一个词,都变成一个固定长度的向量,以此完成目录词汇的向量转换,比如可以借助FastText模型来对目录词汇进行向量化转换等。
需要说明的是,因为一个目标文件路径中具有多个目录词汇,所以会得到多个第一向量值,那么,为了方便的确定目标向量值,可以将第一向量值的中心值作为目标向量值,当然,也可以将第一向量值的平均值、和值等作为目标向量值,本申请在此不做具体限定。
请参阅图4,图4为本申请实施例中预设阈值范围的确定流程图。
本申请实施例提供的一种软件识别方法中,在确定各个目标文件路径间的差异程度之前,还可以先确定预设阈值范围,可以包括以下步骤:
步骤S401:获取已有的白软件。
步骤S402:获取各个白软件在预设数量的客户端上的各个历史文件路径。
实际应用中,可以根据已有的白软件在各个客户端上的文件路径来确定影响软件是否为正常软件的预设阈值范围,在此过程中,需获取已有的白软件,并获取各个白软件在预设数量的客户端上的各个历史文件路径。
需要说明的是,白软件为已有的认证为正常软件的软件,因为用户等一般会设置白样本来标识正常软件,所以可以在用户设置的白样本中获取白软件等,本申请在此不做具体限定。
步骤S403:对各个历史文件路径进行向量化表示,得到对应的历史向量值。
步骤S404:计算各个白软件的历史向量值的历史方差值,
步骤S405:基于历史方差值确定预设阈值范围。
实际应用中,在获取已有的白软件,并获取各个白软件在预设数量的客户端上的各个历史文件路径之后,便可以对各个历史文件路径进行向量化表示,得到对应的历史向量值,因为上述方法中应用方差值来进行软件识别,所以可以计算各个白软件的历史向量值的历史方差值,并基于历史方差值确定预设阈值范围。
需要说明的是,预设阈值范围的类型需参照软件的判定标准来确定,比如在应用标准差进行软件识别的过程中,预设阈值范围可以根据历史向量值的历史标准差来确定等。且在基于历史方差值确定预设阈值范围的过程中,可以将所有历史方差值的平均值作为该预设阈值范围的边界值等,也可以先确定各个白软件的方差值权重,比如根据白软件的使用量来确定相应的方差值权重,再将历史方差值与方差值权重的加权平均值作为预设阈值范围的边界值等,本申请在此不做具体限定。
请参阅图5,图5为本申请实施例提供的一种软件识别系统的结构示意图。
本申请实施例提供的一种软件识别系统,可以包括:
目标软件确定模块101,用于确定待识别的目标软件;
文件路径获取模块102,用于获取目标软件在预设数量的客户端上的各个目标文件路径;
差异程度确定模块103,用于确定各个目标文件路径间的差异程度;
软件识别模块104,用于判断差异程度是否在预设阈值范围内;若差异程度在预设阈值范围内,则确定目标软件为正常软件;若差异程度在预设阈值范围外,则确定目标软件为异常软件。
本申请实施例提供的一种软件识别系统中,目标软件确定模块可以包括:
第一获取单元,用于获取目标软件在预设数量的客户端上的各个初始文件路径;
第一过滤单元,用于过滤掉各个初始文件路径中的系统文件目录,得到各个目标文件路径。
本申请实施例提供的一种软件识别系统中,差异程度确定模块可以包括:
第一向量化单元,用于对各个目标文件路径进行向量化表示,得到对应的目标向量值;
第一计算单元,用于计算所有的目标向量值的波动程度;
第一设置单元,用于将波动程度作为差异程度。
本申请实施例提供的一种软件识别系统中,第一计算单元可以具体用于:计算所有的目标向量值的目标方差值;将目标方差值作为波动程度。
本申请实施例提供的一种软件识别系统中,第一向量化单元可以具体用于:对于各个目标文件路径,均按照目录分隔符对目标文件路径进行分割,得到目录词汇,将目录词汇转换为对应的第一向量值,基于第一向量值确定目标向量值。
本申请实施例提供的一种软件识别系统中,第一向量化单元可以具体用于:将第一向量值的中心值作为目标向量值。
本申请实施例提供的一种软件识别系统中,还可以包括:
第二获取单元,用于差异程度确定模块确定各个目标文件路径间的差异程度之前,获取已有的白软件;
第二获取单元,用于获取各个白软件在预设数量的客户端上的各个历史文件路径;
第二向量化单元,用于对各个历史文件路径进行向量化表示,得到对应的历史向量值;
第一计算单元,用于计算各个白软件的历史向量值的历史方差值;
第一确定单元,用于基于历史方差值确定所述预设阈值范围。
基于上述程序模块的硬件实现,且为了实现本发明实施例的方法,本发明实施例还提供了一种电子设备,图6为本发明实施例电子设备的硬件组成结构示意图,如图6所示,电子设备包括:
通信接口1,能够与其它设备比如网络设备等进行信息交互;
处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的软件识别方法。而所述计算机程序存储在存储器3上。
当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统4。
本发明实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器 (ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM, Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器 (FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器 (ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。
上述本发明实施例揭示的方法可以应用于处理器2中,或者由处理器2 实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
处理器2执行所述程序时实现本发明实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置、终端和方法,可以通过其它的方式实现。以上所描述的设备实施例仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的行业软件识别系统、设备及计算机可读存储介质中相关部分的说明请参见本申请实施例提供的行业软件识别方法中对应部分的详细说明,在此不再赘述。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种软件识别方法,其特征在于,包括:
确定待识别的目标软件;
获取所述目标软件在预设数量的客户端上的各个目标文件路径;
确定各个所述目标文件路径间的差异程度;
判断所述差异程度是否在预设阈值范围内;
若所述差异程度在所述预设阈值范围内,则确定所述目标软件为正常软件;
若所述差异程度在所述预设阈值范围外,则确定所述目标软件为异常软件。
2.根据权利要求1所述的方法,其特征在于,所述获取所述目标软件在预设数量的客户端上的各个目标文件路径,包括:
获取所述目标软件在预设数量的客户端上的各个初始文件路径;
过滤掉各个所述初始文件路径中的系统文件目录,得到各个所述目标文件路径。
3.根据权利要求2所述的方法,其特征在于,所述确定各个所述目标文件路径间的差异程度,包括:
对各个所述目标文件路径进行向量化表示,得到对应的目标向量值;
计算所有的所述目标向量值的波动程度;
将所述波动程度作为所述差异程度。
4.根据权利要求3所述的方法,其特征在于,所述计算所有的所述目标向量值的波动程度,包括:
计算所有的所述目标向量值的目标方差值;
将所述目标方差值作为所述波动程度。
5.根据权利要求4所述的方法,其特征在于,所述对各个所述目标文件路径进行向量化表示,得到对应的目标向量值,包括:
对于各个所述目标文件路径,均按照目录分隔符对所述目标文件路径进行分割,得到目录词汇,将所述目录词汇转换为对应的第一向量值,基于所述第一向量值确定所述目标向量值。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第一向量值确定所述目标向量值,包括:
将所述第一向量值的中心值作为所述目标向量值。
7.根据权利要求4所述的方法,其特征在于,所述确定各个所述目标文件路径间的差异程度之前,还包括:
获取已有的白软件;
获取各个所述白软件在预设数量的客户端上的各个历史文件路径;
对各个所述已有文件路径进行向量化表示,得到对应的历史向量值;
计算各个所述白软件的历史向量值的历史方差值;
基于所述历史方差值确定所述预设阈值范围。
8.一种软件识别系统,其特征在于,包括:
目标软件确定模块,用于确定待识别的目标软件;
文件路径获取模块,用于获取所述目标软件在预设数量的客户端上的各个目标文件路径;
差异程度确定模块,用于确定各个所述目标文件路径间的差异程度;
软件识别模块,用于判断所述差异程度是否在预设阈值范围内;若所述差异程度在所述预设阈值范围内,则确定所述目标软件为正常软件;若所述差异程度在所述预设阈值范围外,则确定所述目标软件为异常软件。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述软件识别方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述软件识别方法的步骤。
CN202110745013.1A 2021-06-30 2021-06-30 一种软件识别方法、系统、设备及计算机可读存储介质 Pending CN113569206A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110745013.1A CN113569206A (zh) 2021-06-30 2021-06-30 一种软件识别方法、系统、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110745013.1A CN113569206A (zh) 2021-06-30 2021-06-30 一种软件识别方法、系统、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN113569206A true CN113569206A (zh) 2021-10-29

Family

ID=78163393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110745013.1A Pending CN113569206A (zh) 2021-06-30 2021-06-30 一种软件识别方法、系统、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113569206A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239215A (zh) * 2014-09-30 2014-12-24 北京奇虎科技有限公司 无用软件的排查方法和装置
CN105279432A (zh) * 2015-10-12 2016-01-27 北京金山安全软件有限公司 一种软件监控处理方法以及装置
CN110851833A (zh) * 2019-11-18 2020-02-28 深信服科技股份有限公司 一种勒索病毒检测方法、装置及其相关设备
CN111027063A (zh) * 2019-09-12 2020-04-17 北京安天网络安全技术有限公司 防止终端感染蠕虫的方法、装置、电子设备及存储介质
CN111259388A (zh) * 2020-01-09 2020-06-09 中山大学 一种基于图卷积的恶意软件api调用序列检测方法
CN111368289A (zh) * 2018-12-26 2020-07-03 中兴通讯股份有限公司 一种恶意软件检测方法和装置
CN111639332A (zh) * 2020-05-11 2020-09-08 珠海豹趣科技有限公司 软件安装方法、装置、电子设备及存储介质
CN112100618A (zh) * 2019-06-18 2020-12-18 深信服科技股份有限公司 一种病毒文件检测方法、系统、设备及计算机存储介质
CN112100619A (zh) * 2019-06-18 2020-12-18 深信服科技股份有限公司 一种恶意文件检测方法、系统、设备及计算机存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239215A (zh) * 2014-09-30 2014-12-24 北京奇虎科技有限公司 无用软件的排查方法和装置
CN105279432A (zh) * 2015-10-12 2016-01-27 北京金山安全软件有限公司 一种软件监控处理方法以及装置
CN111368289A (zh) * 2018-12-26 2020-07-03 中兴通讯股份有限公司 一种恶意软件检测方法和装置
CN112100618A (zh) * 2019-06-18 2020-12-18 深信服科技股份有限公司 一种病毒文件检测方法、系统、设备及计算机存储介质
CN112100619A (zh) * 2019-06-18 2020-12-18 深信服科技股份有限公司 一种恶意文件检测方法、系统、设备及计算机存储介质
CN111027063A (zh) * 2019-09-12 2020-04-17 北京安天网络安全技术有限公司 防止终端感染蠕虫的方法、装置、电子设备及存储介质
CN110851833A (zh) * 2019-11-18 2020-02-28 深信服科技股份有限公司 一种勒索病毒检测方法、装置及其相关设备
CN111259388A (zh) * 2020-01-09 2020-06-09 中山大学 一种基于图卷积的恶意软件api调用序列检测方法
CN111639332A (zh) * 2020-05-11 2020-09-08 珠海豹趣科技有限公司 软件安装方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US10095610B2 (en) Testing applications with a defined input format
US8626786B2 (en) Dynamic language checking
EP3401782B1 (en) File identification method and related device
CN108984219B (zh) 内存参数配置方法及电子设备
CN111739575B (zh) 存储芯片品质检测方法、装置、设备及可读存储介质
CN108616361B (zh) 一种识别设备唯一性的方法及装置
CN115525482A (zh) 一种微控制器芯片启动控制方法、装置、芯片及存储介质
CN111338958A (zh) 一种测试用例的参数生成方法、装置及终端设备
CN110019347B (zh) 一种区块链的数据处理方法、装置及终端设备
CN113569206A (zh) 一种软件识别方法、系统、设备及计算机可读存储介质
CN112416725A (zh) 一种压力测试方法及装置
CN112597350A (zh) 参数核验方法、系统及计算机存储介质
CN110719337A (zh) 业务系统、业务请求处理方法、装置及服务器
CN115665137A (zh) 一种数据处理方法及装置
CN112637212B (zh) 网络安全态势的分析方法和分析装置
CN110674839B (zh) 异常用户识别方法、装置、存储介质及电子设备
CN114154020A (zh) 基于动态标签映射的大容量数据处理方法及装置
CN111695327B (zh) 一种乱码修复方法、装置、电子设备及可读存储介质
CN115858483A (zh) 日志分析与管理方法、终端及计算机可读存储介质
CN112330468B (zh) 识别风险客户的方法、装置、设备及存储介质
CN113836534B (zh) 一种病毒家族识别方法、系统、设备及计算机存储介质
CN116521675A (zh) 数据库冗余字段检测方法、装置、电子设备及存储介质
CN113836012B (zh) 算法测试方法、装置、电子设备及存储介质
CN114219312A (zh) 评价时间戳准确性的方法、装置、电子设备和存储介质
CN111726373B (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