CN114444077A - 一种仿冒应用识别方法及*** - Google Patents
一种仿冒应用识别方法及*** Download PDFInfo
- Publication number
- CN114444077A CN114444077A CN202111563436.8A CN202111563436A CN114444077A CN 114444077 A CN114444077 A CN 114444077A CN 202111563436 A CN202111563436 A CN 202111563436A CN 114444077 A CN114444077 A CN 114444077A
- Authority
- CN
- China
- Prior art keywords
- application
- file
- result
- result file
- prefix tree
- 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
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/562—Static detection
-
- 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
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种仿冒应用识别方法及***,所述方法包括:提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。本发明所提供的仿冒应用识别方法及***,是分别通过对目标应用和参照应用的目录层文件和/或内容层文件进行对比来确定目标应用是否为仿冒应用,能够有效地识别原应用与仿冒应用的差别,提高了仿冒应用识别的准确度。
Description
技术领域
本发明涉及安全技术领域,尤其涉及一种仿冒应用识别方法及***。
背景技术
随着移动互联网的快速发展,智能手机已经成为大众生活的不可或缺的电子产品,在手机端上安装的应用也呈井喷式的增长,不同的应用功能给手机用户提供了良好的用机体验。
但随着手机应用的大量出现,各个应用的安全性良莠不齐,其中不乏恶意的仿冒应用,这些仿冒应用通过嵌入恶意代码来获取手机权限和用户信息,甚至出现恶意扣费等严重问题,给用户群体造成巨大的损失。而现有技术在对仿冒应用与原应用进行识别分析时,通常仅通过文本信息进行比对识别,导致识别的准确度较低。
发明内容
本发明提供的一种仿冒应用识别方法及***,用以解决现有技术在进行应用识别时仅通过文本信息进行对比而导致识别的准确度较低的缺陷,从而提高仿冒应用识别的准确度。
本发明提供一种仿冒应用识别方法,包括:
提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
本发明提供一种仿冒应用识别方法,还包括:
确定检测平台中存在所述目标应用的结果文件和所述参照应用的结果文件,则分别提取所述目标应用的结果文件和所述参照应用的结果文件。
确定检测平台中不存在目标应用的结果文件和所述参照应用的结果文件中的至少一者,则将所述检测平台中未出现的结果文件所对应的应用作为待处理应用;判断所述待处理应用是否加壳,并基于判断结果获取所述待处理应用的源码文件。
确定所述待处理应用未加壳,则将所述待处理应用进行反编译处理,以获取所述待处理应用的源码文件。
确定所述待处理应用已加壳,则将所述待处理应用进行脱壳,获取脱壳应用;将所述脱壳应用进行反编译处理,以获取所述待处理应用的源码文件。
将所述目标应用的源码文件和所述参照应用的源码文件进行对比,以获取源码文件之间的相似度。
根据所述目标应用的结果文件中的预设信息创建第一变种前缀树,并获取所述第一变种前缀树的所有节点数;根据所述参照应用的结果文件中的预设信息创建第二变种前缀树,并获取所述第二变种前缀树的所有节点数;基于第一预设策略分别在所述第一变种前缀树和所述第二变种前缀树中添加第一节点数;基于第二预设策略在所述第一变种前缀树中添加第二节点数;基于第三预设策略在所述第二变种前缀树中添加第三节点数;根据所述第一节点数、所述第二节点数和所述第一变种前缀树的所有节点数,计算得到所述第一变种前缀树基于所述预设信息的第一比值;根据所述第一节点数、所述第三节点数和所述第二变种前缀树的所有节点数,计算得到所述第二变种前缀树基于所述预设信息的第二比值;将所述第一比值与所述第二比值的比值作为所述相似度。
若所述结果文件为目录层文件,则所述预设信息为目录结构信息;若所述结果文件为内容层文件,则所述预设信息为配置文件信息或可执行代码信息。
所述第一预设策略为,基于安全哈希算法获取所述第一变种前缀树和所述第二变种前缀树中sha1值相等的子文件数目,分别在所述第一变种前缀树和所述第二变种前缀树中添加与所述子文件数目相同的第一节点数。
所述第二预设策略为,基于预设的key分别获取所述第一变种前缀树和所述第二变种前缀树中sha1值不同、且key相同的剩余子文件数目,在第一变种前缀树中添加与所述第二变种前缀树中sha1值不同、且key相同的剩余子文件数目相同的第二节点数;
所述第三预设策略为,在第二变种前缀树中添加与所述第一变种前缀树中sha1值不同、且key相同的剩余子文件数目相同的第三节点数。
本发明还提供一种仿冒应用识别***,包括:
结果文件提取单元,用于提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;相似度获取单元,用于将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度;结果输出单元,用于确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述仿冒应用识别方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述仿冒应用识别方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述仿冒应用识别方法的步骤。
本发明提供的一种仿冒应用识别方法及***,先分别提取目标应用和参照应用的结果文件,然后对两个结果文件分别进行目录层文件信息和内容层文件信息的对比分析,从而确定目标应用和参照应用的结果文件的相似度,最后将该相似度与预设阈值进行比较来确定目标应用是否为仿冒应用,由于本发明是根据目录层文件信息和内容层文件信息进行对比分析来识别原应用与仿冒应用的差别,有利于对仿冒应用中嵌入的恶意代码片段和文件进行分析,从而提高了仿冒应用识别的准确度。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的仿冒应用识别方法的流程示意图;
图2是本发明另一实施例提供的仿冒应用识别方法的流程示意图;
图3是本发明实施例提供的仿冒应用识别***的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1描述本发明实施例提供的仿冒应用识别方法,包括:
步骤101、提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件。
可以理解的是,为了对目标应用和参照应用分别从目录结构信息和具体的内容信息进行相似度分析,需要先从目标应用和参照应用中提取包含上述两类信息的结果文件,该结果文件可以从相关的应用检测平台获取;例如,将目标应用A和参考应用B分别上传到检测平台后,检测平台会利用解析算法将应用A包含的文件信息进行解析并打包成一个结果文件a,同时再将应用B包含的文件信息利用相同的解析算法解析后打包成一个结果文件b;结果文件a和b中分别包含应用A和B对应的目录层文件和/或内容层文件。
需要说明的是,目录层文件是指结果文件包含的解析信息中的目录结构信息,而内容层文件是指结果文件包含的解析信息中的配置文件信息和可执行代码信息。
步骤102、将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度。
具体的,目标应用的结果文件和所述目标应用的结果文件进行对比具体是指:(1)两个结果文件中目录结构信息的相似度对比;(2) 两个结果文件中配置文件信息的相似度对比;(3)两个结果文件中可执行代码信息的相似度对比。
步骤103、确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
可以理解的是,基于步骤102得到的相似度值,与预设的阈值进行对比从而确定目标文件是否为仿冒应用。
本实施例提供一种仿冒应用识别方法,具体从目标应用和参考应用的目录结构信息、配置文件信息以及可执行代码信息这三个方面来分析目标应用与参考应用的差别,有利于对仿冒应用中嵌入的恶意代码片段和文件进行识别。
可选的,确定检测平台中存在所述目标应用的结果文件和所述参照应用的结果文件,则分别提取所述目标应用的结果文件和所述参照应用的结果文件。
可以理解的是,检测平台可以解析上传后的目标应用和参照应用包含的文件信息,并将解析后的信息分别打包为两个应用对应的结果文件;例如,本实施例利用Janus平台作为检测平台,在Janus平台上选择目标应用后,开始创建检测任务,然后在Janus平台上选择或者从本地上传另一个参照应用作为要对比的应用,接着开启检测任务,若Janus平台能直接通过解析算法将目标应用和参照应用进行解析,则将解析得到的文件分别打包得到上述两个应用的结果文件,得到的结果文件可直接用来做相似度对比分析。
需要说明的是,目标应用可以从Janus平台直接选择,也可以从本地上传到Janus平台中,视具体的应用类型而定,本发明不作限制。
本实施例提供了一种获取目标应用的结果文件和参照应用的结果文件的方法,为后续进行相似度对比分析提供了方便。
可选的,确定检测平台中不存在目标应用的结果文件和所述参照应用的结果文件中的至少一者,则将所述检测平台中未出现的结果文件所对应的应用作为待处理应用;判断所述待处理应用是否加壳,并基于判断结果获取所述待处理应用的源码文件。
可以理解的是,若某应用的文件信息被厂商进行了加壳操作,导致检测平台无法直接对该应用进行文件解析,也就不能得到所需的应用结果文件;此时利用脱壳算法对该应用的文件信息进行脱壳处理,并从脱壳处理后的应用中获取对应的源码文件。
需要说明的是,应用的加壳操作是对应用进行加密的过程,而脱壳是加壳的逆过程,脱壳操作是对加壳后的应用进行解密的过程;由于加壳文件无法直接进行源码获取,为了实现加壳文件的解析,则需要先对加壳文件进行识别,并将其做脱壳处理,因此,本实施例将不能直接通过Janus平台进行解析的应用下载到检测沙箱中,用于判断该应用是否需要进行脱壳处理。
本实施例能够将对比应用中存在加壳的应用进行脱壳处理,并从脱壳后的应用中获取源码文件,为后续进行相似度对比分析提供了方便。
可选的,确定所述待处理应用未加壳,则将所述待处理应用进行反编译处理,以获取所述待处理应用的源码文件。
可以理解的是,若本实施例利用检测沙箱判断待处理的应用未加壳时,将该应用通过反编译处理获取源码文件,得到的源码文件中不再包含加密信息,提高了源码文件包含所需信息的纯度。
本实施例提供了一种判断待处理的应用未加壳时获取未加壳应用的源码文件的方法,为后续进行相似度对比分析提供了方便。
可选的,确定所述待处理应用已加壳,则将所述待处理应用进行脱壳,获取脱壳应用;将所述脱壳应用进行反编译处理,以获取所述待处理应用的源码文件。
可以理解的是,若本实施例利用检测沙箱判断待处理的应用已加壳,则需要利用检测沙箱支持的脱壳程序对加壳应用进行脱壳处理,然后将该脱壳应用通过反编译处理获取源码文件。
本实施例提供了一种判断待处理的应用已加壳时获取该应用源码文件的方法,为后续进行相似度对比分析提供了方便。
可选的,将所述目标应用的源码文件和所述参照应用的源码文件进行对比,以获取源码文件之间的相似度。
可以理解的是,本实施例中的目标应用或参照应用经过加壳检测后,经过反编译编码得到对应的源码文件,再根据两个源码文件中包含的文件信息进行相似度分析,具体进行:(1)两个源码文件中目录结构信息的相似度对比;(2)两个源码文件中配置文件信息的相似度对比;(3)两个源码文件中可执行代码信息的相似度对比。
需要说明的是,为了提高相似度分析效率,本实施例可以将获取的两个源码文件分别打包为上述实施例提供的目标应用的结果文件和参照应用的结果文件,该结果文件中同样包含了对应应用的目录结构信息、配置文件信息和可执行代码信息。
本实施例能够从加壳检测后的应用中获取源码文件并进行相似度对比,提升了源码文件中包含文件类型的纯度。
可选的,根据所述目标应用的结果文件中的预设信息创建第一变种前缀树,并获取所述第一变种前缀树的所有节点数;根据所述参照应用的结果文件中的预设信息创建第二变种前缀树,并获取所述第二变种前缀树的所有节点数;基于第一预设策略分别在所述第一变种前缀树和所述第二变种前缀树中添加第一节点数;基于第二预设策略在所述第一变种前缀树中添加第二节点数;基于第三预设策略在所述第二变种前缀树中添加第三节点数;根据所述第一节点数、所述第二节点数和所述第一变种前缀树的所有节点数,计算得到所述第一变种前缀树基于所述预设信息的第一比值;根据所述第一节点数、所述第三节点数和所述第二变种前缀树的所有节点数,计算得到所述第二变种前缀树基于所述预设信息的第二比值;将所述第一比值与所述第二比值的比值作为所述相似度。
具体的,为了方便根据目标应用的结果文件和参照应用的结果文件中包含的预设信息进行相似度对比,以预设信息作为划分属性,可将两个结果文件分别创建为第一变种前缀树和第二变种前缀树,其中,第一变种前缀树的节点数为目标应用的结果文件中包含预设信息的文件数,第二变种前缀树的节点数为对照应用的结果文件中包含预设信息的文件数;然后根据第一预设策略在第一变种前缀树的节点中补充第二变种前缀树存在且第一变种前缀树不存在的文件信息对应的节点数,根据第二预设策略在第二变种前缀树的节点中补充第一变种前缀树存在且第二变种前缀树不存在的文件信息对应的节点数;再计算第一变种前缀树与第二变种前缀树包含相同信息对应的节点数与补充节点后的第一变种前缀树的总结点数的第一比值,同时计算第二变种前缀树与第一变种前缀树包含相同信息对应的节点数与补充节点后的第二变种前缀树的总结点数的第二比值;最后将第一比值与第二比值之比作为上述两个结果文件的相似度值;例如,在一个实施例中,目标应用的结果文件和参照应用的结果文件中包含预设信息的节点数分别为M和N,基于第一预设策略分别在所述第一变种前缀树和所述第二变种前缀树中添加第一节点数为x,基于第二预设策略在所述第一变种前缀树中添加第二节点数为y;基于第三预设策略在所述第二变种前缀树中添加第三节点数位z,其中,M、N分别为大于 2的自然数,x、y、z均为小于M和N自然数,则第一比值的获取方式为P(M)=((x+z));/第x+二z比+值M的获取方式为 P(N)=(x+z)/(x+z+N),两结果文件的相似度值的计算方式为 P(M)/P(N)。
本实施例提供了一种基于结果文件的相似度计算方法,用于定量的描述目标应用和参照应用的相似程度。
可选的,若所述结果文件为目录层文件,则所述预设信息为目录结构信息;若所述结果文件为内容层文件,则所述预设信息为配置文件信息或可执行代码信息。
可以理解的是,预设信息可以是结果文件中的目录结构信息,也可以是结果文件中的配置文件信息,还可以是结果文件中的可执行代码信息,本实施例可分别根据三种类型的文件信息数目作为创建变种前缀树的节点总数,然后基于上一实施例的相似度计算方法,计算不同预设信息对应的应用相似度。
本实施例提供了预设信息可以是结果文件中的目录结构信息、配置文件信息以及可执行代码信息,可根据不同的预设信息计算结果文件为目录层文件和内容层文件所对应的两个对比应用的相似度值。
可选的,所述第一预设策略为,基于安全哈希算法获取所述第一变种前缀树和所述第二变种前缀树中sha1值相等的子文件数目,分别在所述第一变种前缀树和所述第二变种前缀树中添加与所述子文件数目相同的第一节点数。
具体的,本实施例提供了由第一预设策略确定第一节点数的具体实施方式,其中,安全哈希算法是一种安全算法,主要通计算两个对比文件的sha1值是否相等来判定两个对比文件是否相同。
本实施例能够确定基于预设信息的第一变种前缀树和第二变种前缀树中sha1值相同的节点数,为后续计算两个应用相似度值提供方便。
可选的,所述第二预设策略为,基于预设的key分别获取所述第一变种前缀树和所述第二变种前缀树中sha1值不同、且key相同的剩余子文件数目,在第一变种前缀树中添加与所述第二变种前缀树中 sha1值不同、且key相同的剩余子文件数目相同的第二节点数;
具体的,本实施例提供了由第二预设策略确定第二节点数的具体实施方式,并将确定的第二节点数添加到第一变种前缀树中;其中,以相同文件名和相同层级数作为key的响应参数,key常用于软件的验证码。
本实施例能够确定在第一变种前缀树中添加的第二节点数,为后续计算第一比值提供方便。
可选的,所述第三预设策略为,在第二变种前缀树中添加与所述第一变种前缀树中sha1值不同、且key相同的剩余子文件数目相同的第三节点数。
具体的,本实施例提供了由第三预设策略确定第三节点数的具体实施方式,并将确定的第三节点数添加到第二变种前缀树中。
本实施例能够确定在第二变种前缀树中添加的第三节点数,为后续计算第二比值提供方便。
基于上述实施例,结合图2对本发明提供方法的实施过程进行具体说明。
本实施例中,先从Janus平台直接选择待检测应用1,从本地上传待检测应用2到Janus平台,由于Janus平台不存在待检测应用1 和待检测应用2的结果文件,则不能直接将二者进行相似度对比;此时将待检测应用1和待检测应用2分别下载到检测沙箱中进行加壳检测,检测到待检测应用1经过了加壳处理,而待检测应用2未加壳,则利用检测沙箱内置的脱壳算法对待检测应用1进行脱壳处理,然后将脱壳后的待检测应用1进行反编译处理获取源码文件1,再将源码文件1进行解析运算并将解析后的结果存储为结果文件1,同时将待检测应用2进行反编译处理获取源码文件2,再将源码文件2进行解析运算并将解析后的结果存储为结果文件2,最后利用和上述实施例中相同的相似度计算方法对结果文件1和结果文件2进行相似度对比分析,从而确定两个结果文件中目录结构信息的相似度对比、配置文件信息的相似度对比以及可执行代码信息的相似度,与预设的阈值对比后,最终确定仿冒应用。
本实施例提供的一种仿冒应用识别方法,先分别提取目标应用和参照应用的结果文件,然后对两个结果文件分别进行目录层文件信息和内容层文件信息的对比分析,从而确定目标应用和参照应用的结果文件的相似度,最后将该相似度与预设阈值进行比较来确定目标应用是否为仿冒应用,由于本发明是根据目录层文件信息和内容层文件信息进行对比分析来识别原应用与仿冒应用的差别,有利于对仿冒应用中嵌入的恶意代码片段和文件进行分析,从而提高了仿冒应用识别的准确度。
结合图3对本发明实施例提供的一种仿冒应用识别***进行描述,下文描述的一种数据集划分装置与上文描述的一种仿冒应用识别***可相互对应参照。
本发明提供的一种仿冒应用识别***,包括:
结果文件提取单元301,用于提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件。
相似度获取单元302,用于将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度。
结果输出单元303,用于确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
本实施例所述***通过结果文件提取单元301提取目标应用的结果文件和参照应用的结果文件,然后通过相似度获取单元302将目标应用的结果文件和所述目标应用的结果文件进行对比后获取同类型结果文件之间的相似度,最后通过结果输出单元303将相似度值与设定阈值进行比较,从而判定目标应用是否为仿冒应用。本实施例所述***能够从目标应用和参考应用的目录结构信息、配置文件信息以及可执行代码信息这三个方面来分析目标应用与参考应用的差别,有利于对仿冒应用中嵌入的恶意代码片段和文件进行识别。
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行一种仿冒应用识别方法,该方法包括:基提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的一种仿冒应用识别方法,该方法包括:基提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的一种仿冒应用识别方法,该方法包括:基提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (15)
1.一种仿冒应用识别方法,其特征在于,包括:
提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;
将所述目标应用的结果文件和所述参照应用的结果文件进行对比,以获取同类型结果文件之间的相似度;
确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
2.根据权利要求1所述的仿冒应用识别方法,其特征在于,所述提取目标应用的结果文件和参照应用的结果文件,具体包括:
确定检测平台中存在所述目标应用的结果文件和所述参照应用的结果文件,则分别提取所述目标应用的结果文件和所述参照应用的结果文件。
3.根据权利要求1所述的仿冒应用识别方法,其特征在于,所述提取目标应用的结果文件和参照应用的结果文件,具体包括:
确定检测平台中不存在目标应用的结果文件和所述参照应用的结果文件中的至少一者,则将所述检测平台中未出现的结果文件所对应的应用作为待处理应用;
判断所述待处理应用是否加壳,并基于判断结果获取所述待处理应用的源码文件。
4.根据权利要求3所述的仿冒应用识别方法,其特征在于,基于判断结果获取所述待处理应用的源码文件,具体包括:
确定所述待处理应用未加壳,则将所述待处理应用进行反编译处理,以获取所述待处理应用的源码文件。
5.根据权利要求3所述的仿冒应用识别方法,其特征在于,基于判断结果获取所述待处理应用的源码文件,具体包括:
确定所述待处理应用已加壳,则将所述待处理应用进行脱壳,获取脱壳应用;
将所述脱壳应用进行反编译处理,以获取所述待处理应用的源码文件。
6.根据权利要求3-5任一项所述的仿冒应用识别方法,其特征在于,将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度,具体包括:
将所述目标应用的源码文件和所述参照应用的源码文件进行对比,以获取源码文件之间的相似度。
7.根据权利要求1-5任一项所述的仿冒应用识别方法,其特征在于,将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度,具体包括:
根据所述目标应用的结果文件中的预设信息创建第一变种前缀树,并获取所述第一变种前缀树的所有节点数;
根据所述参照应用的结果文件中的预设信息创建第二变种前缀树,并获取所述第二变种前缀树的所有节点数;
基于第一预设策略分别在所述第一变种前缀树和所述第二变种前缀树中添加第一节点数;
基于第二预设策略在所述第一变种前缀树中添加第二节点数;
基于第三预设策略在所述第二变种前缀树中添加第三节点数;
根据所述第一节点数、所述第二节点数和所述第一变种前缀树的所有节点数,计算得到所述第一变种前缀树基于所述预设信息的第一比值;
根据所述第一节点数、所述第三节点数和所述第二变种前缀树的所有节点数,计算得到所述第二变种前缀树基于所述预设信息的第二比值;
将所述第一比值与所述第二比值的比值作为所述相似度。
8.根据权利要求7所述的仿冒应用识别方法,其特征在于,
若所述结果文件为目录层文件,则所述预设信息为目录结构信息;
若所述结果文件为内容层文件,则所述预设信息为配置文件信息或可执行代码信息。
9.根据权利要求7所述的仿冒应用识别方法,其特征在于,
所述第一预设策略为,基于安全哈希算法获取所述第一变种前缀树和所述第二变种前缀树中sha1值相等的子文件数目,分别在所述第一变种前缀树和所述第二变种前缀树中添加与所述子文件数目相同的第一节点数。
10.根据权利要求7所述的仿冒应用识别方法,其特征在于,
所述第二预设策略为,基于预设的key分别获取所述第一变种前缀树和所述第二变种前缀树中sha1值不同、且key相同的剩余子文件数目,在第一变种前缀树中添加与所述第二变种前缀树中sha1值不同、且key相同的剩余子文件数目相同的第二节点数。
11.根据权利要求7所述的仿冒应用识别方法,其特征在于,
所述第三预设策略为,在第二变种前缀树中添加与所述第一变种前缀树中sha1值不同、且key相同的剩余子文件数目相同的第三节点数。
12.一种仿冒应用识别***,用于实施如权利要求1-11任一项所述的方法,其特征在于,包括:
结果文件提取单元,用于提取目标应用的结果文件和参照应用的结果文件,所述结果文件包括目录层文件和/或内容层文件;
相似度获取单元,用于将所述目标应用的结果文件和所述目标应用的结果文件进行对比,以获取同类型结果文件之间的相似度;
结果输出单元,用于确定所述相似度高于设定阈值,则判定所述目标应用为仿冒应用。
13.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至11任一项所述仿冒应用识别方法的步骤。
14.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述仿冒应用识别方法的步骤。
15.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述仿冒应用识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563436.8A CN114444077A (zh) | 2021-12-20 | 2021-12-20 | 一种仿冒应用识别方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563436.8A CN114444077A (zh) | 2021-12-20 | 2021-12-20 | 一种仿冒应用识别方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114444077A true CN114444077A (zh) | 2022-05-06 |
Family
ID=81363665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111563436.8A Pending CN114444077A (zh) | 2021-12-20 | 2021-12-20 | 一种仿冒应用识别方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114444077A (zh) |
-
2021
- 2021-12-20 CN CN202111563436.8A patent/CN114444077A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241484B (zh) | 一种基于加密技术的网页数据的发送方法及设备 | |
CN109983464B (zh) | 检测恶意脚本 | |
CN111586071B (zh) | 一种基于循环神经网络模型的加密攻击检测方法及装置 | |
CN111260220B (zh) | 群控设备识别方法、装置、电子设备和存储介质 | |
CN110868405B (zh) | 恶意代码检测方法、装置、计算机设备及存储介质 | |
CN107979581A (zh) | 僵尸特征的检测方法和装置 | |
CN114116313A (zh) | 一种备份数据处理方法及装置 | |
CN103235912A (zh) | 可信进程识别装置和可信进程识别方法 | |
CN109145589B (zh) | 应用程序获取方法及装置 | |
CN107577943A (zh) | 基于机器学习的样本预测方法、装置及服务器 | |
CN108133026B (zh) | 一种多数据的处理方法、***及存储介质 | |
CN111414621B (zh) | 一种恶意网页文件识别方法及装置 | |
CN111222181B (zh) | Ai模型的监管方法、***、服务器及存储介质 | |
CN112600864A (zh) | 一种验证码校验方法、装置、服务器及介质 | |
CN115314268B (zh) | 基于流量指纹和行为的恶意加密流量检测方法和*** | |
CN113849859A (zh) | Linux内核的修改方法、终端设备和存储介质 | |
CN114444077A (zh) | 一种仿冒应用识别方法及*** | |
CN111265860A (zh) | 游戏存档处理方法、装置、终端设备及可读存储介质 | |
CN115906055A (zh) | 基于密码库比对带有自动校准功能的密码测评方法和*** | |
CN110147671B (zh) | 一种程序内字符串提取方法及装置 | |
CN114491528A (zh) | 恶意软件的检测方法、装置和设备 | |
CN112487421B (zh) | 基于异质网络的安卓恶意应用检测方法及*** | |
CN111881047B (zh) | 混淆脚本的处理方法及装置 | |
CN110413871B (zh) | 应用推荐方法、装置及电子设备 | |
CN115718696B (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 |