CN115659340A - 一种仿冒小程序识别方法、装置、存储介质及电子设备 - Google Patents
一种仿冒小程序识别方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN115659340A CN115659340A CN202211577770.3A CN202211577770A CN115659340A CN 115659340 A CN115659340 A CN 115659340A CN 202211577770 A CN202211577770 A CN 202211577770A CN 115659340 A CN115659340 A CN 115659340A
- Authority
- CN
- China
- Prior art keywords
- applet
- similarity
- determining
- identified
- program
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本说明书公开了一种仿冒小程序识别方法、装置、存储介质及电子设备。在本说明书提供的仿冒小程序识别方法中,获取待识别小程序,并确定待识别小程序的宿主程序;通过预先部署的切面底座,在宿主程序的桥接函数中的切点处,部署切面程序,并通过切面程序,采集待识别小程序在运行时向桥接函数发送的业务数据,接收切面程序发送的待识别小程序的业务数据,并根据业务数据确定待识别小程序的行为特征;以及,针对宿主程序对应的每个标准小程序,确定待识别小程序与该标准小程序之间的相似度;将所述行为特征和所述相似度输入预先训练的识别模型中,根据识别模型输出的识别结果,判断待识别小程序是否为该标准小程序的仿冒小程序。
Description
技术领域
本说明书涉及计算机技术领域,尤其涉及一种仿冒小程序识别方法、装置、存储介质及电子设备。
背景技术
目前,小程序的应用十分普遍。然而,在众多小程序之中存在着部分仿冒小程序,即模仿其它正规小程序制作出的小程序。此类小程序与原版小程序的页面十分相似,但却会做出一些恶意行为,例如盗取用户信息、诱导用户安装第三方软件等,很可能会造成用户隐私数据泄露或财产损失。
现有方法在检测仿冒小程序时,仅会根据不同小程序之间的静态代码相似度来比对不同的小程序是否相似,从而判断是否为仿冒小程序。然而,建站语言有着较高的灵活性,相似的页面效果可能存在多种不同的实现方式,即使静态代码相似度较低也能够生成相似的页面。因此,现有的方法并不能很好地识别出仿冒小程序。
因此,如何较为准确地识别出仿冒小程序是一个亟待解决的问题。
发明内容
本说明书提供一种仿冒小程序识别方法及仿冒小程序识别装置,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种仿冒小程序识别的方法,包括:
获取待识别小程序,并确定所述待识别小程序的宿主程序;
通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;
将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
可选地,所述相似度至少包括静态文本相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
根据所述待识别小程序的静态代码,确定所述待识别小程序的第一文本,并根据该标准小程序的静态代码,确定该标准小程序的第二文本;
根据所述第一文本和所述第二文本,确定所述待识别小程序与该标准小程序之间的静态文本相似度。
可选地,所述相似度至少包括名称相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
根据所述待识别小程序的名称以及所述标准小程序的名称,确定所述待识别小程序与该标准小程序之间的名称相似度。
可选地,所述相似度至少包括动态相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
获取所述待识别小程序在运行时的第一界面图像,以及该标准小程序在运行时的第二界面图像;
根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度。
可选地,所述动态相似度包括动态图像相似度和动态文本相似度;
根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度,具体包括:
确定所述第一界面图像与所述第二界面图像之间的图像相似度,作为所述待识别小程序与该标准小程序之间的动态图像相似度;
从所述第一界面图像中提取第三文本,并从所述第二界面图像中提取第四文本;
根据所述第三文本与所述第四文本,确定所述待识别小程序与该标准小程序之间的动态文本相似度。
可选地,预先训练识别模型,具体包括:
确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注;
确定所述样本小程序的宿主程序;
通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;
通过所述切面程序,采集所述样本小程序在运行时向所述桥接函数发送的业务数据;
接收所述切面程序采集后发送的所述样本小程序的业务数据,并根据所述业务数据确定所述样本小程序的行为特征;
确定所述待识别小程序与所述对照小程序之间的相似度;
将所述行为特征和所述相似度输入预先训练的识别模型中,确定所述识别模型的输出结果;
以所述输出结果与所述标注之间的差异最小为优化目标,对所述识别模型进行训练。
可选地,确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注,具体包括:
从小程序库中选择样本小程序和对照小程序,组成训练样本,其中,所述小程序库中的小程序均已确定是否为仿冒小程序;
针对每个训练样本,判断该训练样本中的样本小程序,是否为该训练样本中的对照小程序的仿冒小程序;
若是,则确定该训练样本的标注为仿冒;
若否,则确定该训练样本的标注为非仿冒。
本说明书提供了一种仿冒小程序识别装置,包括:
获取模块,获取待识别小程序,并确定所述待识别小程序的宿主程序;
输入信息确定模块,通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;
输入模块,将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述仿冒小程序识别方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述仿冒小程序识别方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的仿冒小程序识别方法中,获取待识别小程序,并确定所述待识别小程序的宿主程序;通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中提供的一种仿冒小程序识别方法的流程示意图;
图2为本说明书提供的一种仿冒小程序识别装置的示意图;
图3为本说明书提供的一种更优的仿冒小程序识别装置的示意图;
图4为本说明书提供的一种对应于图1的电子设备示意图。
具体实施方式
目前,大部分可用于构建页面编程语言都有着较高的灵活性,对于同一种版式的页面,通常都能够采用不同的代码来实现。而传统的仿冒小程序识别方法仅依靠静态代码之间的相似度来判断一个小程序是否为另一个小程序的仿冒小程序,在采用完全不同的代码也能构建出同样的页面的情况下,传统的方式在识别仿冒小程序时会出现大量的遗漏,识别效果并不理想。
为解决上述问题,本说明书提供了一种基于安全切面实现的仿冒小程序识别方法。
其中,上文所说的安全切面是指通过采用面向切面编程(Aspect-orientedProgramming,AOP)的方式,在不修改业务应用程序的情况下,在业务应用程序的运行逻辑中动态的添加或修改用于实现安全切面业务的切面程序的方法。使得在实现安全切面业务的同时,使实现安全切面业务的程序与业务应用程序解耦,从而避免高耦合导致的开发迭代问题。
这里说的切面程序,即基于业务运行逻辑来实现安全切面业务的增强程序。可通过采用面向切面编程的方式,将切面程序注入至业务应用程序的相应切点处,该切面程序在执行业务应用程序的过程中被触发执行,实现所需的安全切面业务功能。
而业务应用程序在执行业务时,业务应用程序通常通过方法之间的调用进行业务执行。因此,可将业务应用程序中的任意方法作为切面程序的切入点,即上述所说的切点,并将切面程序注入对应切点。使得业务应用程序在执行至切点,即调用该切点对应的业务应用程序的方法时,执行在该切点注入的切面程序。
通常,负责将切面程序注入至切点的过程的代码存在较高的可复用性,因此,通常将实现这一过程的程序抽象为一个服务模块,即切面底座。切面底座可从提供安全切面业务的第三方获取需要部署的切面程序以及获取业务应用程序中的切点,在应用容器启动后被环境并在业务应用程序的切点处注入对应的切面程序。
业务应用程序可以是业务平台的服务器中提供业务服务的业务应用程序。其中,业务服务可以是业务平台的服务器向用户提供的业务服务,如,查询业务、支付业务等。业务服务还可以是业务平台的某服务器向其他服务器提供的业务服务,如,结算业务等。
当然了,由上述描述可知,为了使安全切面业务的程序与业务应用程序解耦,本说明书通过采用面向切面编程的方式使得安全切面业务的程序与业务应用程序在业务执行时相互交织,但又互相平行可各自独立维护。因此,区别于业务应用程序的业务提供方,提供安全切面业务的第三方可通过管控平台管理安全切面业务所涉及的内容,例如,安全切面业务管控策略的配置、切面程序的版本迭代、切面程序的部署规则配置等等。当然,提供安全切面业务的可以是第三方,也可以是业务提供方。
管控平台在管理安全切面业务所涉及的内容时,可通过配置文件记录各种配置信息,例如各种策略的配置、切面程序的部署规则配置等。使得切面底座可根据配置文件完成对切面程序的部署,或者管控平台可根据配置文件实现安全切面业务。
在实际应用中,业务提供方通常设置有包括若干物理机或物理服务器的机房,通过物理机提供业务应用程序所需的物理资源。当然,一个业务应用程序可能无需整个物理机的所有物理资源,于是,一般还会通过虚拟化技术在一个物理机上运行多个虚拟主机(virtual hosting)。各个虚拟主机之间是互相独立的,各自享有物理机的部分物理资源。然后,可在虚拟主机中部署应用容器,并通过应用容器运行业务应用程序。应用容器通常包含分配给该应用容器的物理资源,如CPU、内存等,以及提供给该应用容器的运行环境,如操作***(Operating System,OS)或其他运行环境数据,如,容器的序列(Serial Number,SN)号、分配的IP(Influential Property)、应用名、租户、环境变量等)。业务应用程序可部署在应用容器中以执行业务。
而在基于安全切面执行业务的场景中,业务提供方或者提供安全切面业务的第三方的服务器可提供管控平台,通过管控平台管理安全切面业务所涉及的内容,并将切面底座部署在应用容器中,通过切面底座将切面程序注入业务应用容器中的业务应用程序中,以为业务提供方的应用容器提供安全切面业务的支持。
于是,可预先在业务提供方的应用容器中部署切面底座。一般情况下,在启动应用容器时,可唤起提供给应用容器的操作***,以及运行预先部署的切面底座,通过切面底座从管控平台中得到切面程序和业务应用程序的切点,并将切面程序注入应用容器中的业务应用程序的切点处。此外,切面底座也可在业务应用程序执行过程中,从管控平台中得到切面程序和业务应用程序的切点,并将切面程序注入应用容器中的业务应用程序的切点处。
当然,切面底座如何从管控平台中得到部署切面程序所需的信息,可根据需要设置。例如,可以是根据配置文件主动从管控平台中拉取所需的信息,或者管控平台可主动下发使切面底座接收所需的信息。
将切面程序注入业务应用程序的切点后,业务应用程序在执行过程中,即可触发该切面程序从而实现相应的安全切面业务功能。
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书中提供的一种仿冒小程序识别方法的流程示意图,包括以下步骤:
S100:获取待识别小程序,并确定所述待识别小程序的宿主程序。
在本说明书中,用于实现仿冒小程序识别方法的执行主体,可以指服务器等设置于业务平台的指定设备,为了便于描述,本说明书仅以服务器是执行主体为例,对本说明书提供的一种仿冒小程序识别方法进行说明。
在本说明书提供的仿冒小程序识别方法中,待识别小程序即为需要被识别是否为仿冒小程序的小程序。标准小程序为识别过程中作为参照的小程序,换句话说,本说明书提供的方法最终实现的目标为判断出待识别小程序是否为标准小程序的仿冒小程序。可以想到的,本说明书中的标准小程序均为非仿冒的正版小程序。宿主程序为小程序的载体,任何小程序都依托于宿主程序来运行,常见的宿主程序可例如微信、支付宝等程序。同一小程序在不同的宿主程序上运行时,实现的代码应是相同的,仅可能有格式上的差异,因此,即使是不同宿主程序上的小程序,也可能存在仿冒的风险。例如,可以仿冒一个微信平台上的小程序,上架到支付宝平台。基于此,本说明书提供的仿冒小程序识别方法中的待识别小程序和标准小程序可以是分别依托于不同宿主程序的小程序。
在本说明书提供的仿冒小程序识别方法中,可首先获取需要被识别的待检测小程序,并确定待检测小程序的宿主程序,用于后续步骤。
S102:通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序。
依托于宿主程序的小程序本身是不具备实现业务功能的能力的,需要通过宿主程序提供的业务接口才能够实现业务功能。其中,宿主程序为小程序提供业务接口的过程为桥接。在宿主程序的原始代码中,通常会包含能够实现桥接功能的桥接函数,用于为小程序提供业务接口,例如Java Script Brigde等函数。通常情况下,当小程序需要实现自身的业务功能时,会向宿主程序发送调用请求;宿主程序的桥接函数会响应调用请求并向小程序提供业务接口。
在本说明书提供的仿冒小程序识别方法中,可预先将切面底座部署在宿主程序中,用于接收切面程序并将切面程序注入到宿主程序的切点处,切面程序本身实际上是一段能够实现某一特定功能的代码。
在此步骤中,切面程序的切点可设置在桥接函数未接收小程序发送的调用请求前的位置,例如桥接函数的起始位置。由此,切面程序便可代替桥接函数接收小程序向宿主程序发送的调用请求。
S104:通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据。
在本说明书提供的仿冒小程序识别方法中,通过注入切面程序的方式,可在不影响宿主程序本身的代码运行的情况下,将切面程序注入到宿主程序的代码中。其中,注入的切面程序可以是预先编译的行为记录程序,行为记录程序为能够实现记录小程序行为的功能的增强代码。
当切面程序的切点设置在桥接函数中接收小程序发送的调用请求的代码之前的位置时,切面程序便能够代替桥接函数接收小程序发送的调用请求,从而对调用请求中的业务数据进行记录。在完成对调用请求的记录后,切面程序可将调用请求转发给桥接函数,恢复原本的调用过程。同时,在桥接函数响应小程序的调用请求时,也会将对调用请求的响应优先发送给切面程序。同样的,当切面程序完成对响应中的业务数据的记录时,会将响应转发给小程序,恢复正常的调用过程。
可以看出,切面程序的存在并不会影响原本业务的正常执行,切面程序只会对小程序的调用请求中的业务数据以及宿主程序的响应中的业务数据进行记录,作为待识别小程序的业务数据,用于后续步骤中。
S106:接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征。
在此步骤中,可接收步骤S104中切面程序记录的待识别小程序的业务数据,根据待识别小程序的业务数据,可以分析出待识别小程序在运行时产生的行为,从而确定待识别小程序的行为特征。
通常,仿冒小程序的目的为仿冒成其它常见的小程序,骗取用户的信任后,实施各种恶意行为,危害用户的财产与隐私。因此,可根据历史中已经确定的仿冒小程序或恶意小程序预先确定出若干恶意行为,包括但不限于打开第三方网页链接、诱导用户访问第三方小程序、诱导用户下载第三方软件、诱导用户输入用户名、密码或其它个人信息等。
针对每种恶意行为,均可设置一项变量来表征待识别小程序是否出现了该恶意行为。若待识别小程序做出了该恶意行为,那么可将该恶意行为对应的变量的值设置为1,反之,若待识别小程序没有做出该恶意行为,那么可将该恶意行为对应的变量的值设置为0。根据步骤S104中切面程序对待识别小程序的业务数据的记录,可确定待识别小程序在运行时是否做出过各恶意行为,从而可确定出各恶意行为对应的变量的值。将各恶意行为对应的变量按照预设的顺序进行排列,可得到由0和1组成的向量,作为待识别小程序的行为特征。
S108:针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度。
在实际应用中,除了仿冒小程序外,还存在并非仿冒其它小程序,而是单纯对用户进行攻击的恶意小程序。在仅根据步骤S102~S106中阐述的,以待识别小程序是否做出了恶意行为来判断待识别小程序是否为仿冒小程序的情况下,很可能将非仿冒恶意小程序判断为仿冒小程序。因此,除了将待识别小程序是否做出了恶意行为作为行为特征之外,还应该同时根据待识别小程序与已有的正版小程序之间的相似度来判断待识别小程序是否为仿冒小程序。
在本说明书提供的仿冒小程序识别方法中,标准小程序为非仿冒的正版小程序。在一个宿主程序下可存在多个标准小程序,而仿冒小程序通常为仿冒其中一个标准小程序,因此,可确定出每个标准小程序与待识别小程序之间的相似度,从而确定待识别小程序是否为仿冒的小程序,同时确定出仿冒的对象是哪一个标准小程序。
值得一提的是,步骤S108与步骤S102~S106为获取两种不同的信息的方式,在本说明书提供的仿冒小程序识别方法中,不存在实施顺序的先后关系。换句话说,步骤S108与步骤S102~S106之间不存在执行的先后顺序,可同时进行。
S110:将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
将步骤S106中确定出的行为特征以及步骤S108中确定出的与标准小程序的相似度,作为判断待识别小程序是否为仿冒小程序的依据,输入到预先训练的识别模型中,根据识别模型的识别结果,可确定待识别小程序是否为标准小程序的仿冒小程序。
其中,识别模型可以是任意具有识别功能的网络模型,模型的输出结果可以是“是”或“否”,也可以是待识别小程序是标准小程序的仿冒小程序的概率,本说明书对此不做具体限制。
需要注意的是,在步骤S108中可确定出每个标准小程序与待识别小程序之间的相似度,但在向识别模型中输入时,每次仅以一个标准小程序作为识别的对照目标进行输入。换句话说,每次向识别模型中输入的信息均为待识别小程序的行为特征和待识别小程序与一个标准小程序之间的相似度,而模型的识别结果为待识别小程序是否为输入的相似度对应的标准小程序的仿冒小程序。
在采用本说明书提供的仿冒小程序识别方法中,可根据待识别小程序在运行时的行为,以及待识别小程序与标准小程序之间的相似度,判断待识别小程序是否为标准小程序的仿冒小程序。与传统方法相比,本说明书提供的方法能够有效地提高判断出仿冒小程序的成功率与准确度。
额外的,在确定待识别小程序与标准小程序之间的相似度时,可确定多个方面的相似度。
在仿冒小程序想要仿冒一个正规的正版小程序的情况下,仿冒小程序会设计的与正版小程序十分相似,每个页面中使用到的文本内容很可能都是相同的,例如标题、用户界面上的文本等。在小程序中,生成这部分文本内容的代码属于静态代码,这部分文本内容在每次运行小程序时都是固定的,不会改变,可称做静态文本。无论静态代码的框架如何改变,这部分静态文本一定会出现在静态代码中,因此,可直接从小程序的静态代码中提取出小程序使用的静态文本,作为用于判断待识别小程序是否为仿冒小程序的信息之一。具体的,在确定所述待识别小程序与该标准小程序之间的相似度时,可根据所述待识别小程序的静态代码,确定所述待识别小程序的第一文本,并根据该标准小程序的静态代码,确定该标准小程序的第二文本;根据所述第一文本和所述第二文本,确定所述待识别小程序与该标准小程序之间的静态文本相似度。
其中,静态文本相似度可采用多种方式确定,例如,可采用词向量模型提取出第一文本和第二文本的文本向量,并将两个文本向量之间的距离确定为静态文本相似度。文本向量之间的距离包括但不限于欧氏距离、曼哈顿距离等,本说明书对此不做具体限制。
额外的,当一个小程序仿冒另一个小程序时,二者的名称通常也十分相似。因此,可将小程序名称也作为判断待识别小程序是否为仿冒小程序的信息之一。具体的,在确定所述待识别小程序与该标准小程序之间的相似度时,可根据所述待识别小程序的名称以及所述标准小程序的名称,确定所述待识别小程序与该标准小程序之间的名称相似度。
额外的,在实际应用中,还需要考虑的一个问题是,许多仿冒小程序在仿冒正版小程序时,会采用将图像直接作为页面的方式来替换原本的页面架构,此时,在仿冒小程序的静态代码中是无法提取出静态文本的。因此,在这种情况下,可更优的,将待识别小程序的页面图像也作为判断待识别小程序是否仿冒了标准小程序的信息之一。
具体的,在确定所述待识别小程序与该标准小程序之间的相似度时,可获取所述待识别小程序在运行时的第一界面图像,以及该标准小程序在运行时的第二界面图像;根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度。
其中,待识别小程序的动态相似度可分别从界面图像本身与界面图像中提取出的文本两个方面获取,也就是动态相似度可包括动态图像相似度和动态文本相似度。具体的,在确定所述待识别小程序与该标准小程序之间的动态相似度时,可确定所述第一界面图像与所述第二界面图像之间的图像相似度,作为所述待识别小程序与该标准小程序之间的动态图像相似度;从所述第一界面图像中提取第三文本,并从所述第二界面图像中提取第四文本;根据所述第三文本与所述第四文本,确定所述待识别小程序与该标准小程序之间的动态文本相似度。
额外的,本说明书提供的仿冒小程序识别方法中的识别模型可预先进行训练。具体的,可确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注;确定所述样本小程序的宿主程序;通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;通过所述切面程序,采集所述样本小程序在运行时向所述桥接函数发送的业务数据;接收所述切面程序采集后发送的所述样本小程序的业务数据,并根据所述业务数据确定所述样本小程序的行为特征;确定所述待识别小程序与所述对照小程序之间的相似度;将所述行为特征和所述相似度输入预先训练的识别模型中,确定所述识别模型的输出结果;以所述输出结果与所述标注之间的差异最小为优化目标,对所述识别模型进行训练。
其中,样本小程序是在训练时需要识别模型识别是否为仿冒小程序的小程序,对照小程序为作为参照的正版小程序。而确定样本小程序的行为特征以及样本小程序与标准小程序之间的相似度的具体方法可与本说明书提供的各实施例中的方法相同。
在训练时,可将确定出的判断特征输入到待训练的识别模型中,并确定识别模型的输出结果,以输出结果与标注之间的差异最小为优化目标,对识别模型进行训练。
更优的,在确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注时,可通过区分正负样本的方式来使识别模型得到更好的训练效果。具体的,可从小程序库中选择样本小程序和对照小程序,组成训练样本,其中,所述小程序库中的小程序均已确定是否为仿冒小程序;针对每个训练样本,判断该训练样本中的样本小程序,是否为该训练样本中的对照小程序的仿冒小程序;若是,则确定该训练样本的标注为仿冒;若否,则确定该训练样本的标注为非仿冒。
在对识别模型进行训练时,每一组训练样本可包含两个小程序,即样本小程序和对照小程序。其中,样本小程序和对照小程序都是从预先确定出的小程序库中选择出的小程序,在小程序库中的所有小程序均为已知是否为仿冒小程序的小程序。对于每一组训练样本中选择样本小程序和对照小程序的方式可存在多种,例如随机选择或按指定规则进行选择等,本说明书对此不做限制。但需要注意的是,在训练过程中,作为参照的对照小程序一定不能是仿冒小程序,因此,当训练样本中的对照小程序为仿冒小程序时,需要重新从小程序库中选择样本小程序和对照小程序。
在排除对照小程序为仿冒小程序的情况后,可将其余组合分为两种情况:选择出的样本小程序是对照小程序的仿冒小程序,以及样本小程序不是对照小程序的仿冒小程序。
对于前者,也就是一组训练样本中的样本小程序是对照小程序的仿冒小程序时,可将该组训练样本确定为正样本,相对应的,改组训练样本的标注为正标注,也就是“仿冒”或“1”。
对于后者,也就是一组训练样本中的样本小程序不是对照小程序的仿冒小程序时,此时的样本小程序可能是其它小程序的仿冒小程序,也有可能样本小程序本身也是正版小程序。无论是哪一种情况,样本小程序都不是对照小程序的仿冒小程序,因此,该组训练样本可确定为负样本,对应的标注为“非仿冒”或“0”。
采用上述方式,即可获取到用于训练识别模型的样本小程序、标准小程序以及标注,实现对识别模型的训练。
以上为本说明书的一个或多个实施仿冒小程序识别的方法,基于同样的思路,本说明书还提供了相应的仿冒小程序识别装置,如图2所示。
图2为本说明书提供的一种仿冒小程序识别装置的示意图,包括:
获取模块,用于获取待识别小程序,并确定所述待识别小程序的宿主程序;
输入信息确定模块,用于通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;
输入模块,用于将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
可选地,所述相似度至少包括静态文本相似度;
所述输入信息确定模块202,具体用于根据所述待识别小程序的静态代码,确定所述待识别小程序的第一文本,并根据该标准小程序的静态代码,确定该标准小程序的第二文本;根据所述第一文本和所述第二文本,确定所述待识别小程序与该标准小程序之间的静态文本相似度。
可选地,所述相似度至少包括名称相似度;
所述输入信息确定模块202,具体用于根据所述待识别小程序的名称以及所述标准小程序的名称,确定所述待识别小程序与该标准小程序之间的名称相似度。
可选地,所述相似度至少包括动态相似度;
所述输入信息确定模块202,具体用于获取所述待识别小程序在运行时的第一界面图像,以及该标准小程序在运行时的第二界面图像;根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度。
可选地,所述动态相似度包括动态图像相似度和动态文本相似度;
所述输入信息确定模块202,具体用于确定所述第一界面图像与所述第二界面图像之间的图像相似度,作为所述待识别小程序与该标准小程序之间的动态图像相似度;从所述第一界面图像中提取第三文本,并从所述第二界面图像中提取第四文本;根据所述第三文本与所述第四文本,确定所述待识别小程序与该标准小程序之间的动态文本相似度。
可选地,所述装置还包括训练模块204,具体用于确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注;确定所述样本小程序的宿主程序;通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;通过所述切面程序,采集所述样本小程序在运行时向所述桥接函数发送的业务数据;接收所述切面程序采集后发送的所述样本小程序的业务数据,并根据所述业务数据确定所述样本小程序的行为特征;确定所述待识别小程序与所述对照小程序之间的相似度;将所述行为特征和所述相似度输入预先训练的识别模型中,确定所述识别模型的输出结果;以所述输出结果与所述标注之间的差异最小为优化目标,对所述识别模型进行训练。
可选地,所述训练模块204,具体用于从小程序库中选择样本小程序和对照小程序,组成训练样本,其中,所述小程序库中的小程序均已确定是否为仿冒小程序;针对每个训练样本,判断该训练样本中的样本小程序,是否为该训练样本中的对照小程序的仿冒小程序;若是,则确定该训练样本的标注为仿冒;若否,则确定该训练样本的标注为非仿冒。
值得一提的是,正如本说明书提供的仿冒小程序识别方法中的步骤S108中所述,步骤S102~S106与步骤S108为可同时执行的步骤,因此,本说明书提供的仿冒小程序识别装置中与之对应的输入信息确定模块202中也可同时获取两种不同的输入信息。
具体的,输入信息确定模块202可如图3所示,输入信息确定模块202包括:部署模块2020、采集模块2022、接收模块2024、确定模块2026;
所述部署模块2020,具体用于通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;
所述采集模块2022,具体用于通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据;
所述接收模块2024,具体用于接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;
所述确定模块2026,具体用于针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的一种仿冒小程序识别方法。
本说明书还提供了图4所示的一种对应于图1的电子设备的示意结构图。如图4所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的仿冒小程序识别方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、***、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、***或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (16)
1.一种仿冒小程序识别方法,包括:
获取待识别小程序,并确定所述待识别小程序的宿主程序;
通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;
将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
2.如权利要求1所述的方法,所述相似度至少包括静态文本相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
根据所述待识别小程序的静态代码,确定所述待识别小程序的第一文本,并根据该标准小程序的静态代码,确定该标准小程序的第二文本;
根据所述第一文本和所述第二文本,确定所述待识别小程序与该标准小程序之间的静态文本相似度。
3.如权利要求1所述的方法,所述相似度至少包括名称相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
根据所述待识别小程序的名称以及所述标准小程序的名称,确定所述待识别小程序与该标准小程序之间的名称相似度。
4.如权利要求1所述的方法,所述相似度至少包括动态相似度;
确定所述待识别小程序与该标准小程序之间的相似度,具体包括:
获取所述待识别小程序在运行时的第一界面图像,以及该标准小程序在运行时的第二界面图像;
根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度。
5.如权利要求4所述的方法,所述动态相似度包括动态图像相似度和动态文本相似度;
根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度,具体包括:
确定所述第一界面图像与所述第二界面图像之间的图像相似度,作为所述待识别小程序与该标准小程序之间的动态图像相似度;
从所述第一界面图像中提取第三文本,并从所述第二界面图像中提取第四文本;
根据所述第三文本与所述第四文本,确定所述待识别小程序与该标准小程序之间的动态文本相似度。
6.如权利要求1所述的方法,预先训练识别模型,具体包括:
确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注;
确定所述样本小程序的宿主程序;
通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;
通过所述切面程序,采集所述样本小程序在运行时向所述桥接函数发送的业务数据;
接收所述切面程序采集后发送的所述样本小程序的业务数据,并根据所述业务数据确定所述样本小程序的行为特征;
确定所述待识别小程序与所述对照小程序之间的相似度;
将所述行为特征和所述相似度输入预先训练的识别模型中,确定所述识别模型的输出结果;
以所述输出结果与所述标注之间的差异最小为优化目标,对所述识别模型进行训练。
7.如权利要求6所述的方法,确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注,具体包括:
从小程序库中选择样本小程序和对照小程序,组成训练样本,其中,所述小程序库中的小程序均已确定是否为仿冒小程序;
针对每个训练样本,判断该训练样本中的样本小程序,是否为该训练样本中的对照小程序的仿冒小程序;
若是,则确定该训练样本的标注为仿冒;
若否,则确定该训练样本的标注为非仿冒。
8.一种仿冒小程序识别装置,包括:
获取模块,用于获取待识别小程序,并确定所述待识别小程序的宿主程序;
输入信息确定模块,用于通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序,并通过所述切面程序,采集所述待识别小程序在运行时向所述桥接函数发送的业务数据,接收所述切面程序发送的所述待识别小程序的业务数据,并根据所述业务数据确定所述待识别小程序的行为特征;以及,针对所述宿主程序对应的每个标准小程序,确定所述待识别小程序与该标准小程序之间的相似度;
输入模块,用于将所述行为特征和所述相似度输入预先训练的识别模型中,根据所述识别模型输出的识别结果,判断所述待识别小程序是否为该标准小程序的仿冒小程序。
9.如权利要求8所述的装置,所述相似度至少包括静态文本相似度;
所述输入信息确定模块,具体用于根据所述待识别小程序的静态代码,确定所述待识别小程序的第一文本,并根据该标准小程序的静态代码,确定该标准小程序的第二文本;根据所述第一文本和所述第二文本,确定所述待识别小程序与该标准小程序之间的静态文本相似度。
10.如权利要求8所述的装置,所述相似度至少包括名称相似度;
所述输入信息确定模块,具体用于根据所述待识别小程序的名称以及所述标准小程序的名称,确定所述待识别小程序与该标准小程序之间的名称相似度。
11.如权利要求8所述的装置,所述相似度至少包括动态相似度;
所述输入信息确定模块,具体用于获取所述待识别小程序在运行时的第一界面图像,以及该标准小程序在运行时的第二界面图像;根据所述第一界面图像与所述第二界面图像,确定所述待识别小程序与该标准小程序之间的动态相似度。
12.如权利要求11所述的装置,所述动态相似度包括动态图像相似度和动态文本相似度;
所述输入信息确定模块,具体用于确定所述第一界面图像与所述第二界面图像之间的图像相似度,作为所述待识别小程序与该标准小程序之间的动态图像相似度;从所述第一界面图像中提取第三文本,并从所述第二界面图像中提取第四文本;根据所述第三文本与所述第四文本,确定所述待识别小程序与该标准小程序之间的动态文本相似度。
13.如权利要求8所述的装置,所述装置还包括训练模块,具体用于确定由样本小程序以及对照小程序组成的训练样本,以及确定所述训练样本的标注;确定所述样本小程序的宿主程序;通过预先部署的切面底座,在所述宿主程序的桥接函数中的切点处,部署切面程序;通过所述切面程序,采集所述样本小程序在运行时向所述桥接函数发送的业务数据;接收所述切面程序采集后发送的所述样本小程序的业务数据,并根据所述业务数据确定所述样本小程序的行为特征;确定所述待识别小程序与所述对照小程序之间的相似度;将所述行为特征和所述相似度输入预先训练的识别模型中,确定所述识别模型的输出结果;以所述输出结果与所述标注之间的差异最小为优化目标,对所述识别模型进行训练。
14.如权利要求13所述的装置,所述训练模块,具体用于从小程序库中选择样本小程序和对照小程序,组成训练样本,其中,所述小程序库中的小程序均已确定是否为仿冒小程序;针对每个训练样本,判断该训练样本中的样本小程序,是否为该训练样本中的对照小程序的仿冒小程序;若是,则确定该训练样本的标注为仿冒;若否,则确定该训练样本的标注为非仿冒。
15.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
16.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211577770.3A CN115659340B (zh) | 2022-12-09 | 2022-12-09 | 一种仿冒小程序识别方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211577770.3A CN115659340B (zh) | 2022-12-09 | 2022-12-09 | 一种仿冒小程序识别方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115659340A true CN115659340A (zh) | 2023-01-31 |
CN115659340B CN115659340B (zh) | 2023-03-14 |
Family
ID=85019823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211577770.3A Active CN115659340B (zh) | 2022-12-09 | 2022-12-09 | 一种仿冒小程序识别方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115659340B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115828247A (zh) * | 2023-02-10 | 2023-03-21 | 支付宝(杭州)信息技术有限公司 | 一种小程序的异常检测方法、装置、设备及可读存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087883A1 (en) * | 2000-11-06 | 2002-07-04 | Curt Wohlgemuth | Anti-piracy system for remotely served computer applications |
US20050066324A1 (en) * | 2003-09-22 | 2005-03-24 | Microsoft Corporation | Method and system for distributing and installing software |
CN107742079A (zh) * | 2017-10-18 | 2018-02-27 | 杭州安恒信息技术有限公司 | 恶意软件识别方法及*** |
CN112348104A (zh) * | 2020-11-17 | 2021-02-09 | 百度在线网络技术(北京)有限公司 | 仿冒程序的识别方法、装置、设备及存储介质 |
CN115103063A (zh) * | 2022-06-06 | 2022-09-23 | 广州市申迪计算机***有限公司 | 一种针对假冒客服类的互联网诈骗识别方法及装置 |
CN115114587A (zh) * | 2022-07-19 | 2022-09-27 | 中国电信股份有限公司 | 仿冒小程序的自动识别方法、***、设备及存储介质 |
WO2022199292A1 (zh) * | 2021-03-26 | 2022-09-29 | 支付宝(杭州)信息技术有限公司 | 小程序恶意行为检测 |
CN115185777A (zh) * | 2022-07-18 | 2022-10-14 | 支付宝(杭州)信息技术有限公司 | 一种异常检测方法、装置、可读存储介质以及电子设备 |
CN115186260A (zh) * | 2021-03-26 | 2022-10-14 | 支付宝(杭州)信息技术有限公司 | 小程序风险检测方法和装置 |
CN115357940A (zh) * | 2022-10-19 | 2022-11-18 | 支付宝(杭州)信息技术有限公司 | 一种数据处理的方法、装置、存储介质及电子设备 |
CN115378735A (zh) * | 2022-10-19 | 2022-11-22 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法、装置、存储介质及电子设备 |
-
2022
- 2022-12-09 CN CN202211577770.3A patent/CN115659340B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087883A1 (en) * | 2000-11-06 | 2002-07-04 | Curt Wohlgemuth | Anti-piracy system for remotely served computer applications |
US20050066324A1 (en) * | 2003-09-22 | 2005-03-24 | Microsoft Corporation | Method and system for distributing and installing software |
CN107742079A (zh) * | 2017-10-18 | 2018-02-27 | 杭州安恒信息技术有限公司 | 恶意软件识别方法及*** |
CN112348104A (zh) * | 2020-11-17 | 2021-02-09 | 百度在线网络技术(北京)有限公司 | 仿冒程序的识别方法、装置、设备及存储介质 |
WO2022199292A1 (zh) * | 2021-03-26 | 2022-09-29 | 支付宝(杭州)信息技术有限公司 | 小程序恶意行为检测 |
CN115186260A (zh) * | 2021-03-26 | 2022-10-14 | 支付宝(杭州)信息技术有限公司 | 小程序风险检测方法和装置 |
CN115103063A (zh) * | 2022-06-06 | 2022-09-23 | 广州市申迪计算机***有限公司 | 一种针对假冒客服类的互联网诈骗识别方法及装置 |
CN115185777A (zh) * | 2022-07-18 | 2022-10-14 | 支付宝(杭州)信息技术有限公司 | 一种异常检测方法、装置、可读存储介质以及电子设备 |
CN115114587A (zh) * | 2022-07-19 | 2022-09-27 | 中国电信股份有限公司 | 仿冒小程序的自动识别方法、***、设备及存储介质 |
CN115357940A (zh) * | 2022-10-19 | 2022-11-18 | 支付宝(杭州)信息技术有限公司 | 一种数据处理的方法、装置、存储介质及电子设备 |
CN115378735A (zh) * | 2022-10-19 | 2022-11-22 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法、装置、存储介质及电子设备 |
Non-Patent Citations (2)
Title |
---|
HUO PEI-JUN: "Research on Key Technology of WeChat Mini Program Based on Secure QR Code" * |
肖锦然;: "软件工程保护中的软件防篡改技术" * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115828247A (zh) * | 2023-02-10 | 2023-03-21 | 支付宝(杭州)信息技术有限公司 | 一种小程序的异常检测方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115659340B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108133139B (zh) | 一种基于多运行环境行为比对的安卓恶意应用检测*** | |
US11687645B2 (en) | Security control method and computer system | |
CN107808098B (zh) | 一种模型安全检测方法、装置以及电子设备 | |
KR101928127B1 (ko) | 애플리케이션용 선택적 파일 액세스 기법 | |
US10216510B2 (en) | Silent upgrade of software with dependencies | |
KR102015739B1 (ko) | 스마트 카드 판독/기입 방법 및 디바이스 | |
CN111291374B (zh) | 一种应用程序的检测方法、装置及设备 | |
CN108804299A (zh) | 应用程序异常处理方法及装置 | |
CN104049986A (zh) | 插件加载方法及装置 | |
CN115378735B (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
CN108446572B (zh) | 一种基于服务粒度的隐私权限管理方法 | |
CN115374481B (zh) | 数据脱敏处理的方法、装置、存储介质及电子设备 | |
CN115185534A (zh) | 一种数据脱敏方法、装置、可读存储介质以及电子设备 | |
CN115357940A (zh) | 一种数据处理的方法、装置、存储介质及电子设备 | |
CN115659340B (zh) | 一种仿冒小程序识别方法、装置、存储介质及电子设备 | |
CN111190692A (zh) | 一种基于鲲鹏处理器的监控方法、***及可读介质 | |
Stirparo et al. | In-memory credentials robbery on android phones | |
US9646157B1 (en) | Systems and methods for identifying repackaged files | |
EP2728472A2 (en) | User terminal, reliability management server, and method and program for preventing unauthorized remote operation | |
US10839066B1 (en) | Distinguishing human from machine input using an animation | |
CN109426546B (zh) | 应用启动方法及装置、计算机存储介质及设备 | |
CN117667169A (zh) | 应用程序的更新方法、装置、电子设备及存储介质 | |
Ma | Android application install-time permission validation and run-time malicious pattern detection | |
RU2697951C2 (ru) | Система и способ прекращения работы функционально ограниченного приложения, взаимосвязанного с веб-сайтом, запускаемого без установки | |
CN115828247B (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 |