应用分身状态的检测方法、介质、装置和计算设备与流程

阅读: 评论:0



1.本发明的实施方式涉及计算机技术领域,更具体地,本发明的实施方式涉及应用分身状态的检测方法、介质、装置和计算设备。


背景技术:



2.本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
3.一般情况下,只能在一个终端上安装一个应用,如果该应用有账号机制,需要切换账号才能在终端上使用不同的账号。为了实现在一个终端上可以运行某个应用的多个账号,目前开发了可以让应用实现分身功能的技术,即可以将应用克隆,使得终端上同时运行多个该应用,不同应用可以登录不同的账号。比如,将某个应用分身后,该应用可以包括主应用以及一个或多个分身应用,主应用和分身应用可以用于登录不同的账号。
4.应用分身技术虽然给用户使用带来了便利,但同时也有许多黑灰产会利用该技术来执行一些不法操作。因而,在一些场景,需要检测当前运行的应用是否处于分身状态,以基于检测结果进行后续的处理。


技术实现要素:



5.考虑到一些不法分子会利用应用分身技术进行一些不法操作,因此,在某些场景中,需要检测应用是否处于分身状态。现有技术中,还没有一种比较准确的检测应用分身状态的机制。
6.为此,非常需要一种改进的检测应用处于分身状态的方案,满足某些场景下对应用分身状态的检测需求。
7.在本发明实施方式的第一方面中,提供了一种应用分身状态的检测方法,所述方法包括:
8.获取待检测应用的运行特征,所述运行特征用于反应所述待检测应用运行过程中的运行情况;
9.判定所述运行特征与预先确定的分身特征是否匹配,其中,所述分身特征用于反映所述待检测应用处于分身状态时的运行情况;
10.在所述运行特征与所述分身特征匹配的情况下,确定所述待检测应用处于分身状态。
11.在本发明的一个实施例中,所述分身特征基于所述待检测应用在多个分身工具中运行时的运行数据确定,所述分身特征包括共有特征和/或专有特征,所述共有特征为所述待检测应用在所有分身工具中运行时均具备的特征,所述专有特征为所述待检测应用在单个分身工具中运行时特有的特征。
12.在本发明的另一实施例中,判定所述运行特征与预先确定的分身特征是否匹配,包括:
13.在判定所述运行特征命中所述共有特征中的任一项的情况下,判定所述运行特征与所述分身特征匹配;
14.在判定所述运行特征未命中所述共有特征中任一项的情况下,判定所述运行特征是否与所述专有特征是否匹配;
15.若所述运行特征命中所述专有特征中的任一项,则判定所述运行特征与所述分身特征匹配。
16.在本发明的又一个实施例中,所述共有特征包括以下一项或多项:
17.所述待检测应用的包名被修改;
18.所述待检测应用对应的进程数量大于1;
19.所述待检测应用私有文件目录的绝对位置被修改;
20.所述待检测应用私有文件目录的父目录的权限被设置为可读状态;
21.所述待检测应用对应的端口处于被占用状态。在本发明的再一个实施例中,所述专有特征包括以下一项或多项:
22.所述待检测应用的运行时库包括预设黑名单中的运行时库;
23.所述待检测应用的方法调用堆栈信息中包括预设黑名单中的包名;
24.所述待检测应用的日志中包括预设黑名单中的包名。
25.在本发明的再一个实施例中,所述方法由安装所述应用的终端执行,所述方法还包括:
26.在确定所述待检测应用处于分身状态的情况下,将所述待检测应用对应的用户标识和检测结果发送给服务器,以使所述服务器拒绝对所述用户标识对应的用户发放奖励。
27.在本发明的再一个实施例中,所述方法由安装所述应用的终端执行,所述方法还包括:
28.在确定所述待检测应用处于分身状态的情况下,将所述待检测应用对应的用户标识发送给服务器,以使所述服务器拒绝对所述用户标识对应的用户发放奖励。
29.在本发明的再一个实施例中,所述方法由服务器执行,所述获取所述待检测应用的运行特征,包括:
30.将当前确定的分身特征下发给安装有所述待检测应用的终端,以使所述终端基于所述分身特征的类型从所述应用的运行数据中采集和所述类型匹配的运行特征;
31.接收所述终端发送的运行特征。
32.在本发明的再一个实施例中,所述方法由服务器执行,所述分身特征基于所述待检测应用在多个分身工具中运行时的运行数据确定,所述方法还包括:
33.监测所述多个分身工具的版本变化情况;
34.在所述任一所分身工具的版本发生更新时,获取最新版本的该分身工具,并基于所述待检测应用在最新版本的该分身工具中的运行数据,更新所述分身特征。
35.在本发明实施方式的第二方面中,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机指令,所述计算机指令被执行时实现上述第一方面提及的方法。
36.在本发明实施方式的第三方面中,提供了一种分身应用的检测装置,所述检测装置包括:
37.获取模块,用于获取待检测应用的运行特征,所述运行特征用于反应所述待检测应用运行过程中的运行情况;
38.匹配模块,用于判定所述运行特征与预先确定的分身特征是否匹配,其中,所述分身特征用于反映所述待检测应用处于分身状态时的运行情况;
39.检测模块,用于在所述运行特征与所述分身特征匹配的情况下,确定所述待检测应用处于分身状态。
40.在本发明实施方式的第四方面中,提供了一种计算设备,所述计算设备包括处理器、存储器、存储于所述存储器可供所述处理器执行的计算机指令,所述处理器执行所述计算机指令时实现上述第一方面提及的方法。
41.考虑当一个应用处于分身状态和非分身状态时,其在运行过程中的运行情况存在差异,因此,可以获取确定反应应用在分身状态下的运行情况的分身特征。在检测某个应用是否处于分身状态时,可以采集该应用的运行特征,和预先确定的分身特征进行比对,如果运行特征和分身特征匹配,则认为应用处于分身状态,否则,则处于非分身状态。通过这种方式,可以准确的识别出当前应用是否处于分身状态,进而可以基于检测结果进行后续的处理。
附图说明
42.通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
43.图1(a)示意性地示出了本发明实施方式的一种应用场景示意图;
44.图1(b)示意性地示出了本发明实施方式的另一种应用场景示意图;
45.图2示意性地示出了本发明一实施例的应用分身状态检测方法流程图;
46.图3示意性地示出了本发明一实施例的判定运行特征与分身特征是否匹配的示意图;
47.图4示意性地示出了本发明一实施例的分身特征的示意图;
48.图5示意性地示出了本发明一实施例的实时更新分身特征的示意图;
49.图6示意性地示出了本发明一实施例的计算机可读存储介质的示意图;
50.图7示意性地示出了本发明一实施例的应用分身状态检测装置的示意图;
51.图8示意性地示出了本发明一实施例的计算设备的示意图;
52.在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
53.下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
54.本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件
(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
55.根据本发明的实施方式,提出了一种检测应用分身状态的方法、介质、装置和计算设备。
56.在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
57.发明概述
58.应用分身技术可以实现在一个终端上同时登录某个应用的多个账号。比如,通过应用分身技术可以将应用克隆,使得终端上同时运行多个该应用,不同应用可以登录不同的账号。以即时通讯应用为例,在将即时通讯应用分身后,终端上可以同时运行该应用的主应用以及一个或多个分身应用,主应用和分身应用可以用于登录不同的账号。
59.应用分身技术虽然给用户使用带来了便利,但同时也有许多黑灰产会利用该技术来执行一些不法操作。比如,许多应用发行方为了吸引用户,会给出一些活动奖励,比如,注册某个应用即奖励现金,黑灰产可以通过应用分身技术在一个手机上注册、运行多个某应用,以骗取大量的活动奖励。所以,在某些场景,需要区分应用是否处于分身状态,以及时发现利用应用分身技术进行的不法行为,或者基于应用是否处于分身状态执行后续的一些操作。
60.本发明人发现,当一个应用处于分身状态和非分身状态时,其在运行过程中的运行情况存在差异,比如,运行过程中的一些中间数据、状态数据等存在不同。即当应用处于分身状态时,其在运行过程中会具备一些不同于非分身状态的特征,因此,可以获取应用处于分身状态下运行时产生的运行数据,基于这些数据提炼出反应应用在分身状态下的运行情况的特征,以下称为分身特征。在检测某个应用是否处于分身状态时,可以采集该应用的运行特征,和预先提炼的分身特征进行比对,如果运行特征和分身特征匹配,则认为应用处于分身状态,否则,则处于非分身状态。通过这种方式,可以准确的识别出当前应用是否处于分身状态,进而可以基于检测结果进行后续的处理。
61.考虑到应用在实现分身功能时,通常要借助一些分身工具,而目前市面上的分身工具数量和种类也比较有限,因此,可以让应用在各分身工具上运行,获取运行数据,然后基于运行数据提炼出应用在分身状态下运行时的分身特征。通过这种方式,确定的分身特征比较全面,基于分身特征得到的检测结果也比较准确。
62.在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
63.应用场景总览
64.首先参考图1(a)和图1(b),为本公开实施例的应用场景示意图。通常,一个应用包括客户端和服务端,客户端通常安装于移动终端11上,服务端则部署在服务器12上。以应用a为例,考虑到服务器12的计算资源更加强大,可以利用服务器12确定应用a处于分身状态下运行时的分身特征,比如,服务器12可以从应用市场中获取各种类型的分身工具(比如,分身工具1~分身工具n),让应用a在这些分身工具中运行,并基于运行数据提炼出分身特征。然后,服务器12可以将确定的分身特征下发给移动终端11,或者也可以将指示分身特征所属类型的类型标识下发给移动终端11。
65.当用户在移动终端11上运行应用a时,由于运行过程中的运行数据较多,移动终端11不可能采集所有类型的运行特征。因此,移动终端11可以基于服务器12下发的分身特征或分身特征的类型标识确定需要采集应用a在运行过程中哪些类型的特征,并采集得到对应类型的运行特征。
66.在一些场景,如图1(a)所示,服务器12可以给移动终端11下发的分身特征的类型标识,移动终端11在采集到运行特征后,可以将运行特征发送给服务器12,由服务器12将运行特征与预先确定的分身特征进行比对,判定两者是否匹配,如果匹配,则认为应用程序a处于分身状态。
67.在一些场景,如果服务器12给移动终端11下发的是分身特征,移动终端11在采集到运行特征后,也可以直接将运行特征与从服务器12接收到的分身特征进行比对,判定两者是否匹配,如果匹配,则认为应用程序a处于分身状态,并将检测结果反馈给服务器12。
68.示例性方法
69.下面结合图1(a)和图1(b)的应用场景,参考图2来描述根据本发明示例性实施方式的用于检测应用分身状态的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
70.如图1(a)和图1(b)所示,本公开实施例提供的检测应用分身状态的方法可以由安装了待检测应用的终端执行,比如,该终端可以是手机、平板、笔记本电脑等,也可以由部署了该待检测应用的服务端的服务器或服务器集执行。
71.如图2所示,为该检测应用分身状态的方法的流程图,具体可以包括以下步骤:
72.s202、获取应用的运行特征,所述运行特征用于反应所述应用运行过程中的运行情况;
73.在步骤s02中,可以获取待检测应用的运行特征,其中,该运行特征可以在运行该待检测应用的过程中采集得到,该运行特征可以是各种反应待检测应用运行情况的特征。比如,可以是待检测应用运行过程中的一些状态参数、运行结果、依赖的运行环境、日志信息等等,本公开实施例不做限制。
74.s204、判定所述运行特征与预先确定的分身特征是否匹配,其中,所述分身特征用于反映所述应用处于分身状态时的运行情况;
75.由于应用在分身状态下运行时,其通常会呈现出不同于非分身状态下运行时的特征,因此,可以预先将这类特征提炼出来,作为应用在分身状态下运行时的特征,即分身特征。比如,通常用户需要借助一些分身工具实现分身功能,因此,可以预先让应用在这些分身工具中运行,采集运行过程中的运行数据,然后将这些运行数据与应用在非分身状态下运行时的运行数据进行比对,出两者的差异,基于差异提炼出应用在分身状态下运行时所特有的分身特征。
76.在步骤s204中,在获取到待检测应用的运行特征后,可以将该运行特征和预先确定的分身特征进行比对,确定两者是否匹配。比如,当采集到的运行特征中的一个或多个特征命中分身特征,则认为两者匹配。其中,当某条运行特征和某条分身特征一致,或某条运行特征满足分身特征所规定的条件,则认为命中。
77.s206、在所述运行特征与所述分身特征匹配的情况下,确定所述应用处于分身状
态。
78.在步骤s206中,当判定待检测应用的运行特征和分身特征匹配,则确定应用处于分身状态,否则,则确定应用处于非分身状态。在得到检测结果后,可以进一步基于检测结果进行后续的处理。
79.在一些实施例中,分身特征可以基于在多个分身工具中运行该待检测应用的运行数据确定,该分身特征包括共有特征和/或专有特征,其中,共有特征为该待检测应用在所有分身工具中运行时均具备的特征,该专有特征为该应用在单个分身工具中运行时特有的特征。
80.在实现应用分身功能时,通常会借助分身工具。目前的实现方式可以分为两类,一类是利用操作系统提供的分身功能,另一类是利用操作系统上的第三方应用工具提供分身功能。考虑到目前大部分分身工具都是基于开源项目开发,应用在这些工具中运行时,其呈现出来的特征相同。因此,可以将这一类特征提炼出来,作为应用在分身工具中运行时所呈现的共有特征。当然,由于第三方分身工具可以是黑灰产专门开发出来逃避检测的工具,为了避免被检测到,黑灰产可以对运行过程中的一些特征进行隐藏,使得分身特征具有较强的隐蔽性。通常,这类分身特征为应用在某个分身工具下运行时所呈现出来的特有的特征,因此,还需要去进一步挖掘出应用在这类分身工具运行时的特有的特征,将这些特征收集起来,构成专有特征。
81.通过从待检测应用在分身工具中的运行数据中提炼出上述两种类型的特征,可以使得提炼的分身特征更加全面和准确,从而可以检测出使用绝大多数的分身工具运行待检测应用的情况。
82.由于共有特征是在多个分身工具中运行时均具有的特征,通常针对一种类型的特征,其只有一条共有特征数据。而对于专有特征,针对同一类型的特征,每个分身工具都会对应一条数据,即该专有特征是多条数据的集合。如图3所示,在将待检测应用的运行特征和分身特征进行匹配时,为了提高匹配效率,可以先让运行特征和对应类型的共有特征匹配,只要有一条运行特征命中共有特征,则可以确定两者匹配,无需再比对其他的特征,即可以判定待检测应用为分身状态。如果匹配完所有的共有特征,均没有匹配上,则可以再匹配专有特征,如若有一条运行特征命中专有特征,则认为两者匹配,即可以判定待检测应用为分身状态,否则,则判定为非分身状态。通过这种方式,可以大大提高匹配效率。
83.当然,在一些场景,为了避免误判,也可以同时结合共有特征和专有特征的比对结果,确定最终的匹配结果,以保证检测结果更可靠。
84.共有特征是应用在各个分身工具中运行时均会呈现的特征。在一些实施例中,如图4所示,共有特征可以包括以下一项或多项:(1)该待检测应用的包名被修改;一般而言,每个应用的应用安装包名是唯一的,其包名都会按照固定的规则命名。在应用处于非分身状态下,其包名通常是固定的,比如,应用包名为com.a.b.c。而在分身状态下,其包名通常会被修改,比如,包名会被修改为com.a.b.c.2。(2)该待检测应用对应的进程数量大于1;通常情况下,一个应用运行时,其对应一个进程,所以,在应用处于未分身状态下,其对应的进程数量为1,而应用处于分身状态下,由于同时运行了多个应用,因而其对应的进程数量往往大于1。(3)该待检测应用私有文件目录的绝对位置被修改。一般而言,在应用处于未分身状态下,其私有文件目录的绝对位置的命名规则是:/data/data/包名,比如,/data/data/
com.a.b.c。由于分身状态下,应用的包名会被修改,因而私有文件目录的绝对位置也会相应被修改,比如,被修改成:/data/data/com.a.b.c.2/,或被修改成data/data/com.a.a.a/virtual/com.a.b.c.2。(4)该待检测应用的私有文件目录的父目录的权限被设置为可读状态;一般而言,当应用处于非分身状态时,其私有文件目录的父目录的权限被设置为不可读状态,而应用处于分身状态时,其私有文件目录的父目录的权限会被设置为可读状态。(5)该待检测应用对应的端口处于被占用状态。当应用处于非分身状态时,其对应的端口处于未被占用状态,而应用处于分身状态时,该应用对应的端口处于被占用状态。
85.当然,上述列举的共有特征仅是示例性例子,分身特征中也还可以包括其他类型的共有特征。当待检测应用的运行特征命中上述任一项共有特征时,即可以判定其处于分身状态。
86.专有特征是随着应用运行的分身工具发生变化而变化的特征,专有特征是某个分身工具特有的特征。在一些实施例中,该专有特征包括以下一项或多项:(1)应用的运行时库包括预设黑名单中的运行时库;其中,运行时库为应用运行时的环境依赖库,该依赖库包含了应用自身的图片资源、字符串资源、程序库等等,以及系统提供的图片资源、字符串资源、程序库等等。通过统计应用在不同分身工具运行时的运行数据发现,应用在不同分身工具运行时,其运行时库也不同,即运行时库会随着分身工具的变化而变化,因此,可以收集应用在不同的分身工具中运行时的运行时库的名称,构建一个黑名单。当应用的运行时库包括黑名单中的运行时库时,则可以判定其处于分身状态。(2)应用的调用方法堆栈信息中包括预设黑名单中的包名;调用方法堆栈是一个方法列表,按调用顺序保存了应用在运行过程中被调用的方法。
87.同理,基于采集的运行数据发现,当应用在不同分身工具运行时,其调用方法堆栈信息中的包名也会随着分身工具的变化而发生变化,因此,也可以收集应用在不同的分身工具中运行时,调用方法堆栈信息中包名的名称,构建一个黑名单。(3)应用的日志中包括预设黑名单中的包名。当应用在不同分身工具运行时,其记录的日志数据中的包名也会随着分身工具的变化而发生变化,因此,也可以收集应用在不同的分身工具中运行时,日志数据中包名的名称,构建一个黑名单。
88.当获取到待检测应用的运行特征后,可以将运行特征与对应类型的上述专有特征比对,如果运行特征与专有特征的黑名单中的任一条匹配,则认为两者匹配。
89.当然,专有特征的类型不局限于上述列举的,随着分身工具的更新和变化,专有特征的类型也会发生变化。
90.在一些场景,该方法可以安装有该待检测应用的客户端的终端执行。终端在采集待检测应用的运行特征时,考虑到运行过程中涉及到大量的运行数据,如果所有特征均采集,那么要采集的运行特征过多,且很多是对分身状态检测无用的特征,比较浪费资源,也不利于后续的匹配。因此,可以预先告知终端需要获取应用运行过程中的哪些类型的特征。比如,服务器可以将确定的分身特征下发给终端,终端可以基于服务器下发的分身特征的类型,确定要采集的运行特征的类型,然后在运行待检测应用的过程中,从待检测应用的运行数据中采集和上述类型匹配的运行特征。通过这种方式,终端在采集运行特征时,可以精准的采集和分身状态检测相关的特征。
91.在完成运行特征的采集后,即可以执行上述匹配的过程,得到应用是否处于分身
状态的检测结果。
92.其中,终端在接收到服务器下发的分身特征后,可以在本地存储该分身特征,后续检测时,可以直接从本地获取。此外,考虑到分身工具的版本会一直更新,相应的,分身特征也会发生更新,因此,当分身特征发生更新后,服务器还可以将更新后的分身特征下发给终端设备。从而可以确保检测过程中所采用的分身特征是最新版本的特征。
93.在一些实施例中,该应用分身状态的检测方法可以用于检测一些黑灰产利用应用分身技术注册大量账号,来骗取应用发行方的奖励的场景。
94.终端在确定待检测应用处于分身状态的情况下,可以将该待检测应用对应的用户标识和检测结果发送给服务器,从而服务器可以拒绝对该用户标识对应的用户发放奖励。通过该方法,可以及时地检测出黑灰产的违规注册操作,可以减少应用发行方的损失。
95.在一些实施例中,该方法也可以由服务器执行,服务器可以将当前确定的分身特征下发给安装有该待检测应用的终端,以便用户在终端中运行该待检测应用时,终端可以基于接收到的分身特征的类型从待检测应用的运行数据中采集和这些类型匹配的运行特征。当然,在一些实施例中,为了减小数据传输量,服务器也可以仅向终端发送表示分身特征所属类型的类型标识。终端可以基于类型标识从待检测应用的运行数据中采集和这些类型标识匹配的运行特征。
96.在终端采集到运行特征后,可以将运行特征发送给服务器,由服务器执行后续对运行特征和分身特征进行匹配的操作。
97.为了避免被检测出应用当前处于分身状态,分身工具的开发者会不断更新分身工具的版本,来对抗分身检测。当分身工具的版本发生更新后,待检测应用在分身工具中运行时呈现的运行特征也会相应发生变化。为了可以实时对分身特征进行更新,以得到更加精确的检测结果。如图5所示,服务器可以在应用市场中监测各类分身工具的版本变化情况,当发现某个分身工具的版本发生更新时,则获取该分身工具的最新版本,并基于应用在该最新版本的分身工具中的运行情况,更新分身特征。
98.当分身工具发生更新后,则可以将更新后的分身特征或分身特征的类型下发给终端,以便终端在下一次运行待检测应用时,可以基于最新的分身特征的类型采集运行特征。
99.通过服务器实时更新分身特征,可以应对分身工具的反检测能力不断更新的情况,及时检测出应用的分身状态。
100.示例性介质
101.在介绍了本发明示例性实施方式的方法之后,接下来,参考图6对本发明示例性实施提供的计算机可读存储介质进行介绍。其中,该存储介质中存储有计算机程序,该计算程序被执行时,可实现上述一个或多个实施例中介绍的应用分身状态的检测方法。
102.其中,实现上述应用分身状态的检测方法的具体细节,可参考上述实施例中的介绍,在此不再赘述。
103.示例性装置
104.在介绍了本发明示例性实施方式的介质之后,接下来,参考图7对本发明示例性实施方式的、用于检测应用分身状态的装置进行介绍。该检测装置可以包括:
105.获取模块71,用于获取待检测应用的运行特征,所述运行特征用于反应所述待检测应用运行过程中的运行情况;
106.匹配模块,用于判定所述运行特征与预先确定的分身特征是否匹配,其中,所述72分身特征用于反映所述待检测应用处于分身状态时的运行情况;
107.检测模块73,用于在所述运行特征与所述分身特征匹配的情况下,确定所述待检测应用处于分身状态。其中,该装置实现上述应用分身状态的检测方法的具体细节,可参考上述实施例中的介绍,在此不再赘述。
108.示例性计算设备
109.在介绍了本发明示例性实施方式的方法、介质和装置之后,接下来,参考图8对本发明示例性实施方式的、用于检测应用是否处于分身状态的计算设备的介绍。
110.图8显示的计算设备800仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
111.如图8所示,计算设备800以通用计算设备的形式表现。计算设备800的组件可以包括但不限于:上述至少一个处理单元801、上述至少一个存储单元802,连接不同系统组件(包括处理单元801和存储单元802)的总线803。
112.总线803包括数据总线、控制总线和地址总线。
113.存储单元802可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)8021和/或高速缓存存储器8022,可以进一步包括非易失性存储器形式的可读介质,例如只读存储器(rom)8023。
114.存储单元802还可以包括具有一组(至少一个)程序模块8024的程序/实用工具8025,这样的程序模块8024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
115.计算设备800也可以与一个或多个外部设备804(例如键盘、指向设备等)通信。
116.这种通信可以通过输入/输出(i/o)接口805进行。并且,计算设备800还可以通过网络适配器806与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图8所示,网络适配器806通过总线803与计算设备800的其它模块通信。应当理解,尽管图中未示出,可以结合计算设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
117.该计算设备可以手机、电脑、平板等移动终端,也可以是服务器或服务器集。
118.应当注意,尽管在上文详细描述中提及了应用分身检测装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
119.此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
120.虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和
范围内所包括的各种修改和等同布置。

技术特征:


1.一种应用分身状态的检测方法,所述方法包括:获取待检测应用的运行特征,所述运行特征用于反应所述待检测应用运行过程中的运行情况;判定所述运行特征与预先确定的分身特征是否匹配,其中,所述分身特征用于反映所述待检测应用处于分身状态时的运行情况;在所述运行特征与所述分身特征匹配的情况下,确定所述待检测应用处于分身状态。2.根据权利要求1所述的方法,所述分身特征基于所述待检测应用在多个分身工具中运行时的运行数据确定,所述分身特征包括共有特征和/或专有特征,所述共有特征为所述待检测应用在所有分身工具中运行时均具备的特征,所述专有特征为所述待检测应用在单个分身工具中运行时特有的特征。3.根据权利要求2所述的方法,判定所述运行特征与预先确定的分身特征是否匹配,包括:在判定所述运行特征命中所述共有特征中的任一项的情况下,判定所述运行特征与所述分身特征匹配;在判定所述运行特征未命中所述共有特征中任一项的情况下,判定所述运行特征是否与所述专有特征是否匹配;若所述运行特征命中所述专有特征中的任一项,则判定所述运行特征与所述分身特征匹配。4.根据权利要求2所述的方法,所述共有特征包括以下一项或多项:所述待检测应用的包名被修改;所述待检测应用对应的进程数量大于1;所述待检测应用私有文件目录的绝对位置被修改;所述待检测应用私有文件目录的父目录的权限被设置为可读状态;所述待检测应用对应的端口处于被占用状态。5.根据权利要求2所述的方法,所述专有特征包括以下一项或多项:所述待检测应用的运行时库包括预设黑名单中的运行时库;所述待检测应用的方法调用堆栈信息中包括预设黑名单中的包名;所述待检测应用的日志中包括预设黑名单中的包名。6.根据权利要求1-5任一项所述的方法,所述方法由安装所述待检测应用的终端执行,所述获取待检测应用的运行特征,包括:接收服务器下发的所述分身特征的类型标识;在运行所述待检测应用的过程中,基于所述类型标识从所述待检测应用的运行数据中采集和所述类型标识匹配的运行特征。7.根据权利要求1-5任一项所述的方法,所述方法由安装所述应用的终端执行,所述方法还包括:在确定所述待检测应用处于分身状态的情况下,将所述待检测应用对应的用户标识发送给服务器,以使所述服务器拒绝对所述用户标识对应的用户发放奖励。8.根据权利要求1-5任一项所述的方法,所述方法由服务器执行,所述获取所述待检测应用的运行特征,包括:
将当前确定的分身特征下发给安装有所述待检测应用的终端,以使所述终端基于所述分身特征的类型从所述应用的运行数据中采集和所述类型匹配的运行特征;接收所述终端发送的运行特征。9.根据权利要求1-5任一项所述的方法,所述方法由服务器执行,所述分身特征基于所述待检测应用在多个分身工具中运行时的运行数据确定,所述方法还包括:监测所述多个分身工具的版本变化情况;在所述任一所分身工具的版本发生更新时,获取最新版本的该分身工具,并基于所述待检测应用在最新版本的该分身工具中的运行数据,更新所述分身特征。10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机指令,所述计算机指令被执行时实现权利要求1-9任一项所述的方法。

技术总结


本发明的实施方式提供了一种应用分身状态的检测方法、介质、装置和计算设备。该方法包括:获取待检测应用的运行特征,所述运行特征用于反应所述待检测应用运行过程中的运行情况;判定所述运行特征与预先确定的分身特征是否匹配,其中,所述分身特征用于反映所述待检测应用处于分身状态时的运行情况;在所述运行特征与所述分身特征匹配的情况下,确定所述待检测应用处于分身状态。通过预先确定应用在分身状态下运行的分身特征,在与应用运行时的运行特征比对,可以准确确定应用是否处于分身状态。态。态。


技术研发人员:

吕康 马军 夏科杰 吕陈强 罗晓华

受保护的技术使用者:

杭州网易再顾科技有限公司

技术研发日:

2022.11.29

技术公布日:

2023/3/3

本文发布于:2023-03-04 00:56:45,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/64291.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:特征   所述   状态   终端
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图