基于行为的服务识别方法、装置、设备及可读存储介质
技术领域
本发明涉及互联网技术领域,特别是涉及一种基于行为的服务识别方法、装置、设备及可读存储介质。
背景技术
随着互联网技术的飞速发展以及终端的日益普及,越来越多的用户选择使用终端执行日常生活中的各项活动,例如社交、通讯、拍照、游戏、购物等。用户在终端中进行各项活动时,通常是基于终端中的服务实现的,为了保证服务的正常运行,终端中搭载了操作***,服务是操作***中不可或缺的部分。目前,终端接收用户请求进行的服务行为,并对该服务行为进行识别,进而通过对服务行为的执行来实现用户请求进行的操作。
相关技术中,终端在接收到服务行为时,通常收集服务行为的常用可信软件特征,此特征包括:可信公司的数字签名、二进制特征串、文本特征串、MD5(Message DigestAlgorithm 5,消息摘要算法)、哈希值、校验和等等,并建立包括这些可信软件特征的白特征库,并在***正常运行期间,将***中的服务请求执行的文件与白特征库进行特征匹配,与白特征库中的特征不相匹配的文件被认为是可疑软件,将进行各种限制。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
***中的有些服务是属于可信服务,例如打印机服务,这些可信服务无论请求执行哪种行为或者哪种文件都是被允许的,使得攻击者很容易利用服务行为对操作***进行恶意操作,进而对操作***造成重大破坏,操作***的安全性较差。
发明内容
有鉴于此,本发明提供了一种基于行为的服务识别方法、装置、设备及可读存储介质,主要目的在于解决目前攻击者很容易利用服务行为对操作***进行恶意操作,进而对操作***造成重大破坏,操作***的安全性较差的问题。
依据本发明第一方面,提供了一种基于行为的服务识别方法,该方法包括:
当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集,所述权限集包括允许所述目标行为主体执行的至少一个服务行为,所述流程集包括所述目标行为主体执行服务行为的流程;
如果所述权限集的至少一个服务行为中不包括所述待执行服务行为,则确定所述待执行服务行为的行为流程;
如果所述待执行服务行为的行为流程与所述流程集所示的流程一致,则允许执行所述待执行服务行为。
在另一个实施例中,所述当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集之前,包括:
启动所述目标行为主体,对所述目标行为主体的服务行为进行监控,获取所述至少一个服务行为;
生成包括所述至少一个服务行为的所述权限集,提取所述目标行为主体的主体标识,将所述主体标识与所述权限集对应存储;
对所述目标行为主体执行服务行为的过程进行监控,采集所述目标行为主体的运行状态以及运行坏境;
按照时间顺序对所述运行状态以及所述运行环境进行整理,生成所述目标行为主体的流程,将所述流程作为所述流程集,将所述流程集与所述主体标识对应存储。
在另一个实施例中,所述启动所述目标行为主体,对所述目标行为主体的服务行为进行监控,获取所述至少一个服务行为,包括:
接收启动指令,根据所述启动指令携带的待启动主体标识,确定所述目标行为主体;
启动所述目标行为主体,并启动行为采集程序,所述行为采集程序至少为钩子Hook程序;
基于所述行为采集程序,监控所述目标行为主体在启动后的服务行为,获取所述目标行为主体的所述至少一个服务行为。
在另一个实施例中,所述当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集,包括:
当接收到所述待执行服务行为时,将请求执行所述待执行服务行为的行为主体作为所述目标行为主体;
获取所述目标行为主体的主体标识,确定所述主体标识指示的权限集和流程集。
在另一个实施例中,所述当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集之后,包括:
如果所述权限集的至少一个服务行为中包括所述待执行服务行为,则允许执行所述待执行服务行为。
在另一个实施例中,所述方法还包括:
如果所述待执行服务行为的行为流程与所述流程集所示的流程不一致,则禁止执行所述待执行服务行为。
依据本发明第二方面,提供了一种基于行为的服务识别装置,该装置包括:
第一确定模块,用于当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集,所述权限集包括允许所述目标行为主体执行的至少一个服务行为,所述流程集包括所述目标行为主体执行服务行为的流程;
第二确定模块,用于如果所述权限集的至少一个服务行为中不包括所述待执行服务行为,则确定所述待执行服务行为的行为流程;
执行模块,用于如果所述待执行服务行为的行为流程与所述流程集所示的流程一致,则允许执行所述待执行服务行为。
在另一个实施例中,所述装置还包括:
监控模块,用于启动所述目标行为主体,对所述目标行为主体的服务行为进行监控,获取所述至少一个服务行为;
生成模块,用于生成包括所述至少一个服务行为的所述权限集,提取所述目标行为主体的主体标识,将所述主体标识与所述权限集对应存储;
采集模块,用于对所述目标行为主体执行服务行为的过程进行监控,采集所述目标行为主体的运行状态以及运行坏境;
存储模块,用于按照时间顺序对所述运行状态以及所述运行环境进行整理,生成所述目标行为主体的流程,将所述流程作为所述流程集,将所述流程集与所述主体标识对应存储。
在另一个实施例中,所述监控模块,包括:
所述监控模块,包括:
确定子模块,用于接收启动指令,根据所述启动指令携带的待启动主体标识,确定所述目标行为主体;
启动子模块,用于启动所述目标行为主体,并启动行为采集程序,所述行为采集程序至少为钩子Hook程序;
监控子模块,用于基于所述行为采集程序,监控所述目标行为主体在启动后的服务行为,获取所述目标行为主体的所述至少一个服务行为。
在另一个实施例中,所述确定模块,包括:
所述第一确定模块,包括:
第一确定子模块,用于当接收到所述待执行服务行为时,将请求执行所述待执行服务行为的行为主体作为所述目标行为主体;
第二确定子模块,用于获取所述目标行为主体的主体标识,确定所述主体标识指示的权限集和流程集。
在另一个实施例中,所述执行模块,还用于如果所述权限集的至少一个服务行为中包括所述待执行服务行为,则允许执行所述待执行服务行为。
在另一个实施例中,所述装置还包括:
禁止模块,用于如果所述待执行服务行为的行为流程与所述流程集所示的流程不一致,则禁止执行所述待执行服务行为。
依据本发明第三方面,提供了一种设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。
依据本发明第四方面,提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的方法的步骤。
借由上述技术方案,本发明提供的一种基于行为的服务识别方法、装置、设备及可读存储介质,与目前采用白特征库识别服务行为的方式相比,本发明可以当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程,并且如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种基于行为的服务识别方法流程示意图;
图2A示出了本发明实施例提供的一种基于行为的服务识别方法流程示意图;
图2B示出了本发明实施例提供的一种基于行为的服务识别方法流程示意图;
图3A示出了本发明实施例提供的一种基于行为的服务识别装置的结构示意图;
图3B示出了本发明实施例提供的一种基于行为的服务识别装置的结构示意图;
图3C示出了本发明实施例提供的一种基于行为的服务识别装置的结构示意图;
图3D示出了本发明实施例提供的一种基于行为的服务识别装置的结构示意图;
图3E示出了本发明实施例提供的一种基于行为的服务识别装置的结构示意图;
图4示出了本发明实施例提供的一种设备的装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种基于行为的服务识别方法,可以当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程,并且如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,达到避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好的目的,如图1所示,该方法包括:
101、当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,权限集包括允许目标行为主体执行的至少一个服务行为,流程集包括目标行为主体执行服务行为的流程。
在本发明实施例中,当接收到待执行服务行为时,由于每一个服务行为都是行为主体请求执行的,因此,可以确定下发该待执行服务行为的行为主体,将该行为主体作为目标行为主体。且操作***中为每一个行为主体均设置了与其对应的包括允许行为主体执行的至少一个服务行为的权限集和流程集,因此,在确定了目标行为主体后,便可以获取到该目标行为主体对应的权限集和流程集,以便在后续基于该权限集和流程集对目标行为主体的待执行服务行为进行识别,从而确定目标行为主体是否可以执行该待执行服务行为。
102、如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程。
在本发明实施例中,在确定了目标行为主体的权限集后,由于权限集中包括允许执行的至少一个服务行为,因此,可将待执行服务将至少一个服务行为进行比对,通过查询该权限集中是否包括待执行服务行为,来确定该待执行服务行为是否可以执行。
103、如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为。
在本发明实施例中,如果权限集中不包括该待执行服务行为,则表示该待执行服务行为并不在权限集所规定的范围内。为了避免权限集涉及的范围不够广泛而导致正常的服务行为被拦截,当确定了该待执行服务行为不属于权限集后,便获取该待执行服务行为的行为流程,并在该待执行服务行为的行为流程与流程集所示的流程一致时,确定该待执行服务行为是目标行为主体的正常行为,并允许执行该待执行服务行为。
本发明实施例提供的方法,可以当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集,如果所述权限集的至少一个服务行为中不包括所述待执行服务行为,则确定所述待执行服务行为的行为流程,并且如果所述待执行服务行为的行为流程与所述流程集所示的流程一致,则允许执行所述待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好。
本发明实施例提供了一种基于行为的服务识别方法,可以当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程,并且如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,达到避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好的目的,如图2A所示,该方法包括:
201、接收启动指令,根据启动指令携带的待启动主体标识,确定目标行为主体。
发明人认识到,行为主体启动后执行的行为动作通常是固定的,也即该行为主体为用户提供服务时所依赖的行为动作是固定的,一个行为主体并不会在正常的运行中请求执行之前从未执行过的行为动作,因此,为了对行为主体的行为动作进行限制,避免行为主体执行不该执行的行为动作,实现对攻击者的恶意行为的识别,本发明实施例为每一个行为主体设置了权限集和流程集,并基于该权限集和流程集规定行为主体可执行的行为动作,进而对行为主体的运行进行约束。需要说明的是,由于***中的行为主体较多,不可能同一时间为全部的行为主体设置好权限集和流程集,因此,在本发明实施例中,还可以设置一个全部的行为主体通用的“最小权限集”,并基于该“最小权限集”对没有设置权限集和流程集的行为主体进行行为的识别。
其中,由于权限集和流程集是根据行为主体在实际运行的过程中执行的行为操作生成的,因此,需要对行为主体在实际运行的过程中执行的行为操作进行采集。考虑到操作***中待在的行为主体过多,为了明确为哪一个行为主体生成行为库,程序启动指令中需要携带待启动主体标识。这样,当接收到程序启动指令时,首先,在程序启动指令中提取该待启动主体标识;随后,在操作***中查找该待启动主体标识指示的行为主体,并将该行为主体作为目标行为主体,以便后续为该目标行为主体生成权限集和流程集。需要说明的是,为了给操作***中每一个行为主体均设置对应的权限集和流程集,只要是不存在与其对应的权限集和流程集的行为主体均可以作为目标行为主体。具体地,待启动主体标识可为目标程序的程序名称或者程序编号等,本发明实施例对待启动主体标识的内容不进行具体限定。
202、启动目标行为主体,并启动行为采集程序,行为采集程序至少为钩子Hook程序,基于行为采集程序,监控目标行为主体在启动后的服务行为。
在本发明实施例中,当确定了目标行为主体后,便可以启动目标行为主体,以便获取目标行为主体的至少一个服务行为,进而基于至少一个服务行为为目标程序生成权限集。其中,为了实现对目标行为主体的服务行为进行采集,可以基于采集行为程序采集。这样,当启动了目标行为主体后,便将行为采集程序也启动,使得该行为采集程序对目标行为主体启动后的全部服务行为进行监控并采集,行为采集程序具体可为Hook(钩子)程序。
在实际应用的过程中,为了使采集到的服务行为的数量具有说服力,且不至于数量过多造成操作***的负载过重,可以设置采集周期,仅采集目标行为主体在采集周期中执行的服务行为即可,并根据在采集周期中采集到的服务行为在后续为目标行为主体生成权限集。例如,采集周期可为7天,这样,采集目标服务周期在7天内的服务行为即可。
203、生成包括至少一个服务行为的权限集,提取目标行为主体的主体标识,将主体标识与权限集对应存储。
在本发明实施例中,当采集到目标行为主体的至少一个服务行为后,便可以将至少一个服务行为存储,从而生成权限集。其中,在生成权限集时,为了保证每个行为主体的权限集的格式是一致的,便于对权限集进行管理,可以设置预设模板,并按照预设模板对至少一个服务行为进行整理,从而生成包括至少一个服务行为,且格式满足预设模板要求的权限集。
在生成了该目标行为主体的权限集中,由于操作***中的每一个行为主体均存在对应的权限集,这样,便会存在大量的权限集。为了对权限集进行管理,避免行为主体与权限集之间的对应关系混淆,从而造成后续对服务行为的识别发生错误,在生成了权限集后,可提取目标行为主体的主体标识,并将主体标识与权限集对应存储,从而保证每一个行为主体与其对应的权限集之间的对应关系是清晰的。在实际应用的过程中,在生成了权限集后,还可以采用主体标识对权限集进行标记,从而实现将目标行为主体与权限集之间相互对应。
204、对目标行为主体执行服务行为的过程进行监控,采集目标行为主体的运行状态以及运行坏境,按照时间顺序对运行状态以及运行环境进行整理,生成目标行为主体的流程,将流程作为流程集,将流程集与主体标识对应存储。
在本发明实施例中,行为主体在***中执行服务行为时,执行合法的服务行为是会对应着合法的流程的,而执行不合法的服务行为也是有着明显不同的不合法流程,因此,可以为目标行为主体生成其对应的流程集,以便后续基于该流程集对目标行为主体执行服务行为的流程进行识别,从而确定目标行为主体执行的流程是否合法。例如,spoolsv.exe(打印程序)是Print Spooler(打印服务)的服务进程,用于管理所有本地和网络打印队列及控制所有打印工作,spoolsv.exe没有任何启动Shell(壳程序)的理由,甚至spoolsv.exe就不应该具备启动任何程序的能力,因此,只要spoolsv.exe的流程中涉及到启动程序,则该流程即为不合法。
其中,在为目标行为主体设置流程集时,首先,可以对目标行为主体执行服务行为的过程进行监控,采集目标行为主体的运行状态以及运行坏境;随后,按照时间顺序对运行状态以及运行环境进行整理,生成目标行为主体的流程,将流程作为流程集,将流程集与主体标识对应存储。
通过执行上述步骤201至步骤204中的过程,便可以为目标行为主体生成一个与其自身实际执行的服务行为相关的权限集和流程集。需要说明的是,由于操作***是存在更新的,更新后的操作***中每个行为主体可以执行的服务行为可能会发生变化,例如行为主体可能新增了一些可以执行的服务行为,因此,为了保证行为主体的权限集和流程集可以适用于现阶段行为主体的需求,操作***中可以设置更新周期,并每隔更新周期便重复执行上述步骤201至步骤203中的过程,重新为每一个行为主体生成权限集和流程集,并采用新生成的权限集和流程集对之前的权限集和流程集进行替换,从而保证行为主体的正常运行。
在生成了目标行为主体的权限集和流程集后,在后续接收到该目标行为主体请求执行时,便可以基于该权限集和流程集对该目标行为主体的行为动作进行识别,从而确定目标行为主体的行为动作是否允许执行,参见图2B,该方法包括:
205、当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集。
在本发明实施例中,当接收到待执行服务行为时,由于待执行服务行为通常是行为主体请求执行的,因此,确定请求执行该待执行服务行为的对象,将该对象作为目标行为主体,也即将请求执行待执行服务行为的行为主体作为目标行为主体。其中,由于操作***在存储权限集和流程集时,是按照主体标识存储的,每个主体标识均会对应一个权限集和流程集,也即基于主体标识可以实现归权限集和流程集的查询,因此,在确定了目标行为主体后,提取该目标行为主体的主体标识,进而确定该主体标识指示的权限集和流程集。
需要说明的是,如果获取待执行服务行为的目标行为主体的权限集和流程集失败,则表示可能此时并没有为该目标行为主体设置权限集和流程集,此时,便可以获取“最小权限集”,并在后续基于该“最小权限集”对待执行服务行为进行识别。
206、将待执行服务行为与权限集进行比对,查询权限集中是否包括待执行服务行为,如果权限集中不包括待执行服务行为,则执行下述步骤207;如果权限集中包括待执行服务行为,则执行下述步骤208。
在本发明实施例中,当确定了该目标行为主体的权限集后,由于该目标行为主体的权限集中规定了目标行为主体可以执行的服务行为,超出权限集的服务行为,也即权限集不包括的服务行为是不允许目标行为主体执行的,因此,将待执行服务行为与权限集中的至少一个服务行为进行比对,从而确定该待执行服务行为是否允许执行。具体地,在将待执行服务行为与至少一个服务行为进行比对,查询权限集中是否包括待执行服务行为时,首先,提取待执行服务行为的待执行行为标识,并提取至少一个服务行为的至少一个服务行为标识;随后,将待执行行为标识和至少一个服务行为标识进行比对,查询至少一个服务行为标识中是否存在与待执行行为标识一致的服务行为标识,从而实现对待执行服务行为的识别。
其中,如果权限集中不包括待执行服务行为,则表示可能该待执行服务行为是不允许执行的,此时需要基于流程集进行进一步的判断,从而避免由于权限集未收录该服务行为而导致的误判,因此,执行下述步骤207至步骤209;如果权限集中包括待执行服务行为,则表示该待执行服务行为是该目标行为主体可以执行的服务行为,该待执行服务行为是允许该目标行为主体执行的,并不属于越权操作,是符合权限集对目标行为主体的要求的,也即执行下述步骤210。
207、如果权限集中不包括待执行服务行为,则确定待执行服务行为的行为流程,如果待执行服务行为的行为流程与流程集所示的流程一致,则执行下述步骤208;如果待执行服务行为的行为流程与流程集所示的流程不一致,则执行下述步骤209。
208、如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为。
在本发明实施例中,如果待执行服务行为的行为流程与流程集所示的流程一致,则表示该待执行服务行为的行为流程是满足流程集的限制的,该目标行为主体请求执行该待执行服务行为不属于越权行为,是允许该目标行为主体执行该待执行服务行为的,因此,允许该目标行为主体执行该待执行服务行为。
209、如果待执行服务行为的行为流程与流程集所示的流程不一致,则禁止执行待执行服务行为。
在本发明实施例中,如果待执行服务行为的行为流程与流程集所示的流程不一致,则表示该待执行服务行为的行为流程是不满足流程集的限制的,该目标行为主体请求执行该待执行服务行为属于越权行为,是不允许该目标行为主体执行该待执行服务行为的,因此,禁止该目标行为主体执行该待执行服务行为。
210、如果权限集中包括待执行服务行为,则允许目标行为主体执行待执行服务行为。
在本发明实施例中,如果权限集中包括待执行服务行为,则表示该待执行服务行为是在权限集规定的范围内,该目标行为主体请求执行该待执行服务行为不属于越权行为,是允许该目标行为主体执行该待执行服务行为的,因此,允许该目标行为主体执行该待执行服务行为。
本发明实施例提供的方法,当接收到待执行服务行为时,确定请求执行所述待执行服务行为的目标行为主体的权限集和流程集,如果所述权限集的至少一个服务行为中不包括所述待执行服务行为,则确定所述待执行服务行为的行为流程,并且如果所述待执行服务行为的行为流程与所述流程集所示的流程一致,则允许执行所述待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好。
进一步地,作为图1所述方法的具体实现,本发明实施例提供了一种基于行为的服务识别装置,如图3A所示,所述装置包括:第一确定模块301,第二确定模块302和执行模块303。
该第一确定模块301,用于当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,权限集包括允许目标行为主体执行的至少一个服务行为,流程集包括目标行为主体执行服务行为的流程;
该第二确定模块302,用于如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程;
该执行模块303,用于如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为。
在具体的应用场景中,如图3B所示,该装置还包括监控模块304,生成模块305,采集模块306和存储模块307。
该监控模块304,用于启动目标行为主体,对目标行为主体的服务行为进行监控,获取至少一个服务行为;
该生成模块305,用于生成包括至少一个服务行为的权限集,提取目标行为主体的主体标识,将主体标识与权限集对应存储;
该采集模块306,用于对目标行为主体执行服务行为的过程进行监控,采集目标行为主体的运行状态以及运行坏境;
该存储模块307,用于按照时间顺序对运行状态以及运行环境进行整理,生成目标行为主体的流程,将流程作为流程集,将流程集与主体标识对应存储。
在具体的应用场景中,如图3C所示,该监控模块304,包括确定子模块3041,启动子模块3042和监控子模块3043。
该确定子模块3041,用于接收启动指令,根据启动指令携带的待启动主体标识,确定目标行为主体;
该启动子模块3042,用于启动目标行为主体,并启动行为采集程序,行为采集程序至少为钩子Hook程序;
该监控子模块3043,用于基于行为采集程序,监控目标行为主体在启动后的服务行为,获取目标行为主体的至少一个服务行为。
在具体的应用场景中,如图3D所示,该第一确定模块301,包括第一确定子模块3011和第二确定子模块3012。
该第一确定子模块3011,用于当接收到待执行服务行为时,将请求执行待执行服务行为的行为主体作为目标行为主体;
该第二确定子模块3012,用于获取目标行为主体的主体标识,确定主体标识指示的权限集和流程集。
在具体的应用场景中,该执行模块303,还用于如果权限集的至少一个服务行为中包括待执行服务行为,则允许执行待执行服务行为。
在具体的应用场景中,如图3E所示,该装置还包括禁止模块308。
该禁止模块308,用于如果待执行服务行为的行为流程与流程集所示的流程不一致,则禁止执行待执行服务行为。
本发明实施例提供的装置,可以当接收到待执行服务行为时,确定请求执行待执行服务行为的目标行为主体的权限集和流程集,如果权限集的至少一个服务行为中不包括待执行服务行为,则确定待执行服务行为的行为流程,并且如果待执行服务行为的行为流程与流程集所示的流程一致,则允许执行待执行服务行为,从而通过该权限集以及流程集限行为主体的服务行为,使得攻击者的恶意行为很容易被识别,避免攻击者的恶意操作对操作***造成重大破坏,操作***的安全性较好。
需要说明的是,本发明实施例提供的一种基于行为的服务识别装置所涉及各功能单元的其他相应描述,可以参考图1和图2A至图2B中的对应描述,在此不再赘述。
在示例性实施例中,参见图4,还提供了一种设备,该设备400包括通信总线、处理器、存储器和通信接口,还可以包括、输入输出接口和显示设备,其中,各个功能单元之间可以通过总线完成相互间的通信。该存储器存储有计算机程序,处理器,用于执行存储器上所存放的程序,执行上述实施例中的…方法。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于行为的服务识别方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。