掌桥专利:专业的专利平台
掌桥专利
首页

一种宏脚本处置方法及系统、客户端

文献发布时间:2024-04-18 19:58:26


一种宏脚本处置方法及系统、客户端

技术领域

本申请涉及网络安全技术领域,特别是涉及一种宏脚本处置方法及系统、客户端。

背景技术

诸如Office等应用程序被广泛应用于企事业单位的日常办公活动中,而宏脚本由于具有可自动化执行应用程序中的操作和任务的特性,其被频繁应用于应用程序。一些不法分子会将其制作的恶意宏脚本伪装为应用程序相关的宏脚本掺杂在应用程序的正常宏脚本中,以基于恶意宏脚本可自动化执行应用程序中的操作和任务的特性,在用户不知情的情况下植入木马或间谍程序,从而达到控制应用程序所在终端设备或者窃取隐私数据的目的。

应用程序的运行过程中会运行相关的宏脚本,一旦相关的宏脚本中掺杂的恶意宏脚本被运行,则会对应用程序所在终端设备或企事业单位的隐私数据造成损害。目前无法对应用程序运行的恶意宏脚本进行有效识别和处置。

发明内容

有鉴于此,本申请提出了一种宏脚本处置方法及系统、客户端,主要目的在于有效识别和处置恶意宏脚本,以降低恶意宏脚本的危害。

为了达到上述目的,本申请主要提供了如下技术方案:

第一方面,本申请提供了一种宏脚本处置方法,该宏脚本处置方法包括:

响应于检测到终端设备运行的应用程序启动可疑宏脚本,基于预设识别策略对所述可疑宏脚本进行恶意宏脚本识别;

若恶意宏脚本识别结果确定所述可疑宏脚本为恶意宏脚本,则确定所述恶意宏脚本的处置策略;

基于所述处置策略处置所述恶意宏脚本。

在本申请一些实施例中,若存在至少两种预设识别策略,则基于预设识别策略对所述可疑宏脚本进行恶意宏脚本识别,包括:依据至少两种预设识别策略的预设使用顺序,确定当前使用的预设识别策略,并基于当前使用的预设识别策略对所述可疑宏脚本进行恶意宏脚本识别;若基于当前使用的预设识别策略识别出所述可疑宏脚本为恶意宏脚本,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果,且终止对所述可疑宏脚本的恶意宏脚本识别;若基于当前使用的预设识别策略识别出所述可疑宏脚本为非恶意宏脚本,则检测当前使用的预设识别策略是否位于所述预设使用顺序的最后一位;若是,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果;否则,则使用下一个预设识别策略继续对所述可疑宏脚本进行恶意宏脚本识别直至识别出所述可疑宏脚本为恶意宏脚本,或者,识别出所述可疑宏脚本为非恶意宏脚本,且当前使用的预设识别策略位于所述预设使用顺序的最后一位。

在本申请一些实施例中,若存在至少一种预设识别策略,则基于预设识别策略对所述可疑宏脚本进行恶意宏脚本识别,包括:采用至少一种预设识别策略分别对所述可疑宏脚本进行恶意宏脚本识别;若识别出所述可疑宏脚本为恶意宏脚本的预设识别策略数量达到所述预设数量,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若基于所有预设识别策略均未识别出所述可疑宏脚本为恶意宏脚本,或识别出所述可疑宏脚本为恶意宏脚本的预设识别策略数量未达到所述预设数量,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,对所述可疑宏脚本进行恶意宏脚本识别,包括:若所述预设识别策略为基于行为特征进行恶意宏脚本识别,则将所述可疑宏脚本的代码注入第一隔离环境内的第一预设进程;执行注入代码的第一预设进程,并监控所述第一预设进程的行为特征;若监控到恶意行为特征,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若未监控到恶意行为特征,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,对所述可疑宏脚本进行恶意宏脚本识别,包括:若所述预设识别策略为基于宏脚本代码进行恶意宏脚本识别,则通过所述代码分析模型分析所述可疑宏脚本的代码;若所述代码分析模型分析出所述代码包括恶意代码,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若所述代码分析模型分析出所述代码不包括恶意代码,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,对所述可疑宏脚本进行恶意宏脚本识别,包括:若所述预设识别策略为基于预先搜集的已知宏脚本进行恶意宏脚本识别,则检测所述预先搜集的已知宏脚本中是否存在目标宏脚本;其中,所述目标宏脚本与所述可疑宏脚本的相似度大于预设阈值;若存在所述目标宏脚本,且所述目标宏脚本为已知恶意宏脚本,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若存在所述目标宏脚本,且所述目标宏脚本为已知非恶意宏脚本,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,确定所述恶意宏脚本的处置策略,包括:确定所述恶意宏脚本识别结果得到的所述恶意宏脚本的行为特征;基于所述行为特征确定所述恶意宏脚本的处置策略。

在本申请一些实施例中,基于所述行为特征确定所述恶意宏脚本的处置策略,包括:检测第一策略库中是否存在与所述行为特征匹配的处置策略;其中,所述第一策略库中预先存储有至少一种行为特征对应的处置策略;若存在,则将匹配的处置策略确定为所述恶意宏脚本的处置策略;若不存在,则将所述恶意宏脚本以及所述行为特征发送至用户终端,以供用户基于所述恶意宏脚本以及所述行为特征通过所述用户终端设置所述恶意宏脚本的处置策略。

在本申请一些实施例中,该宏脚本处置方法还包括:维护所述恶意宏脚本的处置策略和行为特征之间的对应关系,以便再次识别出所述应用程序启动存在所述行为特征的恶意宏脚本时,基于对应的处置策略进行处置。

在本申请一些实施例中,该宏脚本处置方法还包括:若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则放行所述非恶意宏脚本。

在本申请一些实施例中,该宏脚本处置方法还包括:响应于监测到所述终端设备运行的应用程序启动宏脚本,将所述宏脚本的代码注入第二隔离环境内的第二预设进程;执行注入代码的第二预设进程,并监控所述第二预设进程的行为特征;若监控到可疑行为特征,则确定所述宏脚本为所述可疑宏脚本。

在本申请一些实施例中,该宏脚本处置方法还包括:若未监控到可疑行为特征,且监控到恶意行为特征,则确定相应的宏脚本为恶意宏脚本,并检测第二策略库中是否存在与所述恶意行为特征匹配的处置策略,所述第二策略库中预先存储有至少一种恶意行为特征对应的处置策略;若存在,则基于匹配的处置策略处置所述恶意宏脚本;若不存在,则将所述恶意宏脚本以及所述恶意行为特征发送至用户终端,以供用户基于所述恶意宏脚本以及所述恶意行为特征通过所述用户终端设置所述宏脚本的处置策略。若未监控到可疑行为特征,且未监控到恶意行为特征,则确定相应的宏脚本为非恶意宏脚本,并放行所述非恶意宏脚本。

在本申请一些实施例中,该宏脚本处置方法还包括:响应于监测到所述终端设备运行的应用程序启动宏脚本,检测已知宏脚本库中是否存在所述宏脚本,所述已知宏脚本库中的宏脚本为恶意宏脚本和非恶意宏脚本中的至少一种;若不存在,则确定所述宏脚本为所述可疑宏脚本。

在本申请一些实施例中,该宏脚本处置方法还包括:若检测出所述已知宏脚本库存在所述宏脚本,且所述宏脚本为恶意宏脚本,则采用所述恶意宏脚本对应的处置策略处置所述恶意宏脚本;若检测出所述已知宏脚本库存在所述宏脚本,且所述宏脚本为非恶意宏脚本,则放行所述非恶意宏脚本。

在本申请一些实施例中,该宏脚本处置方法还包括:响应于检测到所述应用程序启动可疑宏脚本,对所述可疑宏脚本启动预设安全防护程序,以对所述可疑宏脚本的运行进行行为管控;若恶意宏脚本识别结果确定所述可疑宏脚本为恶意宏脚本且所述恶意宏脚本被处置完成,或,若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则关闭所述预设安全防护程序。

在本申请一些实施例中,该宏脚本处置方法还包括:响应于检测到所述应用程序启动可疑宏脚本,拦截所述可疑宏脚本;若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则释放拦截的所述非恶意宏脚本。

在本申请一些实施例中,所述处置策略包括如下至少一种:修复漏洞、恶意宏脚本报警、关闭恶意宏脚本的进程、删除恶意宏脚本。

第二方面,本申请提供了一种宏脚本处置系统,该宏脚本处置系统包括:控制中心和客户端,且所述客户端部署于安装有应用程序的终端设备;

所述客户端,用于响应于检测到终端设备运行的应用程序启动可疑宏脚本,上报所述可疑宏脚本至所述控制中心;

所述控制中心,用于基于预设识别策略对所述可疑宏脚本进行恶意宏脚本识别;若恶意宏脚本识别结果确定所述可疑宏脚本为恶意宏脚本,则确定所述恶意宏脚本的处置策略,并将所述处置策略下发至所述客户端,以供所述客户端基于所述处置策略处置所述恶意宏脚本。

第三方面,本申请提供了一种客户端,所述客户端部署于安装有应用程序的终端设备,且所述客户端应用如第一方面的宏脚本处置方法。

第四方面,本申请提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面的宏脚本处置方法。

本申请提供的宏脚本处置方法及系统、客户端,响应于检测到终端设备运行的应用程序启动可疑宏脚本,基于预设识别策略对可疑宏脚本进行恶意宏脚本识别。若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本,则确定恶意宏脚本的处置策略,并基于处置策略处置恶意宏脚本。可见,本申请实施例在应用程序启动可疑宏脚本后,并未放任可疑宏脚本运行,而是对可疑宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定出可疑宏脚本为恶意宏脚本时,使用与恶意宏脚本具有较高适配性的处置策略,对恶意宏脚本进行处置,这样,能够有效识别和处置恶意宏脚本,从而能够降低恶意宏脚本的危害。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请一个实施例提供的一种宏脚本处置方法的流程图;

图2示出了本申请一个实施例提供的一种宏脚本处置系统的结构示意图;

图3示出了本申请另一个实施例提供的一种宏脚本处置系统的结构示意图。

具体实施方式

下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

目前,一些不法分子为了达到控制企事业单位、个人等主体的终端设备或窃取用户隐私数据的目的,通常会将其制造的恶意宏脚本伪装为应用程序相关的宏脚本并掺杂在应用程序的正常宏脚本中。应用程序会运行相关的宏脚本,以通过宏脚本自动化执行应用程序中的操作和任务。一旦掺杂的恶意宏脚本被应用程序运行,则会对应用程序所在终端设备或用户隐私数据造成损害。

发明人经过研究发现,目前恶意宏脚本能够对应用程序所在终端设备或用户隐私数据造成危害,是因为对应用程序运行的宏脚本没有进行恶意宏脚本识别和处置。发明人考虑,如果在应用程序启动宏脚本时,对宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本时,为恶意宏脚本制定出匹配的处置策略处置恶意宏脚本。这样,能够在可疑宏脚本为恶意宏脚本时,降低恶意宏脚本的危害。

基于上述考虑,本申请实施例具体提供了一种宏脚本处置的技术方案。具体为,响应于检测到终端设备运行的应用程序启动可疑宏脚本,基于预设识别策略对可疑宏脚本进行恶意宏脚本识别。若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本,则确定恶意宏脚本的处置策略,并基于处置策略处置恶意宏脚本。

本申请实施例提供的宏脚本处置的技术方案能够基于业务需要灵活的使用在不同主体中。使用宏脚本处置的技术方案的主体至少可以包括如下两种:一种是,客户端,客户端用于部署在安装有应用程序的终端设备。这样,一旦终端设备中的应用程序启动可疑宏脚本,客户端便可及时对可疑宏脚本进行恶意宏脚本识别和处置,以降低恶意宏脚本对终端设备和用户隐私数据的危害。另一种是,宏脚本处置系统,宏脚本处置系统包括客户端和控制中心,且客户端部署于安装有应用程序的终端设备。这样,一旦终端设备中的应用程序启动可疑宏脚本时,终端设备便可上报可疑宏脚本至控制中心,控制中心便可对可疑宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本时,为其确定出匹配的处置策略,并将处置策略下发至客户端,以供客户端基于处置策略处置恶意宏脚本。这样,一旦终端设备中的应用程序启动可疑宏脚本,客户端便可及时对可疑宏脚本进行恶意宏脚本识别和处置,以降低恶意宏脚本对终端设备和用户隐私数据的危害。另外,由于对恶意宏脚本的识别和处置策略的确定均是控制中心完成,而客户端仅负责可疑宏脚本的上报和处置,因此能够降低恶意宏脚本识别和处置策略制定对终端设备的硬件资源的消耗。

基于上述的宏脚本处置的技术方案,本申请实施例具体提供了一种宏脚本处置方法及系统、客户端。下面对申请实施例提供的宏脚本处置方法及系统、客户端进行具体说明。

本申请的一个实施例提供了一种宏脚本处置方法,如图1所示,该宏脚本处置方法主要包括如下步骤101至103:

101、响应于检测到终端设备运行的应用程序启动可疑宏脚本,基于预设识别策略对可疑宏脚本进行恶意宏脚本识别。

宏脚本是基于VBA(Visual Basic for Applications)等宏语言,用于自动化执行应用程序中的操作和任务的脚本。宏脚本自动化执行应用程序中的操作和任务的特性,能够提高工作效率,因此宏脚本被广泛应用于诸如Office、PDF等办公类的应用程序中。恶意宏脚本能够基于宏脚本自动化执行应用程序中的操作和任务的特性,在用户不知情的情况下植入木马或间谍程序,达到控制应用程序所在终端设备或者窃取隐私数据的目的。因此,为了减少恶意宏脚本对终端设备和隐私数据的危害,本申请实施例对应用程序启动的可疑宏脚本进行了恶意宏脚本识别,以便对恶意宏脚本及时进行处置。

可疑宏脚本是终端设备运行的应用程序启动的宏脚本,其是否为恶意宏脚本存疑。在本实施例中确定可疑宏脚本的方法可以包括如下两种:

第一种,监控终端设备运行的应用程序是否启动宏脚本;若监测到应用程序启动宏脚本,则将启动的宏脚本确定为可疑宏脚本。

此种方法中,凡是被应用程序启动的宏脚本均会被确定为可疑宏脚本,因此能够对应用程序启动的所有宏脚本进行恶意宏脚本识别,从而能够提高恶意宏脚本的防护能力,避免遗漏恶意宏脚本。

第二种,响应于监测到终端设备运行的应用程序启动宏脚本,检测宏脚本是否需要作为可疑宏脚本;若需要,则将启动的宏脚本确定为可疑宏脚本。

此种方式中,并非将应用程序启动的所有宏脚本均确定可疑宏脚本,而是,在监控到应用程序启动宏脚本后,先检测宏脚本是否需要作为可疑宏脚本,仅有在宏脚本需要作为可疑宏脚本,也就是宏脚本可疑为恶意宏脚本的情况下,才将宏脚本确定为可疑宏脚本。这样,由于对可疑宏脚本进行初步的筛选,能够减少后续进行恶意宏脚本识别和处置的宏脚本数量。

检测宏脚本是否需要作为可疑宏脚本的方法可以包括如下两种:

一种是,响应于监测到终端设备运行的应用程序启动宏脚本,将宏脚本的代码注入第二隔离环境内的第二预设进程;执行注入代码的第二预设进程,并监控第二预设进程的行为特征;若监控到可疑行为特征,则确定宏脚本为可疑宏脚本。

宏脚本运行过程中的行为能够体现宏脚本的恶意风险情况,因此可通过监控宏脚本运行过程中的行为特征来确定宏脚本是否可疑为恶意宏脚本。

将宏脚本的代码注入第二隔离环境内的第二预设进程的目的在于,即使宏脚本是恶意宏脚本,由于其在隔离环境的进程中运行,恶意宏脚本也不能对终端设备或隐私数据造成危害。隔离环境可基于业务需要灵活选用为虚拟机或沙箱。

在第二隔离环境中执行注入宏脚本代码的第二预设进程,从而通过第二预设进程运行宏脚本。第二预设进程执行后,第二预设进程的行为特征即为宏脚本的行为特征。在第二预设进程的执行过程中,监控第二预设进程的行为特征。

监控第二预设进程的行为特征的监控结果可以存在如下三种:一是,监控到可疑行为特征;二是,未监控到可疑行为特征,且监控到恶意行为特征;三是,未监控到可疑行为特征,且未监控到恶意行为特征。可疑行为特征为可能给终端设备或隐私数据带来安全风险的行为特征,通常情况下,不包括在当前已知恶意行为特征,和/或不包括在当前已知非恶意行为特征的行为特征,均可定义为可疑行为特征。比如,可疑行为特征可以包括但不限于如下至少一种:可疑调用行为特征、可疑删除行为特征、可疑获取隐私数据行为特征、可疑植入行为特征。恶意行为特征为已知恶意宏脚本所具有的恶意行为特征,凡是具有恶意行为特征的宏脚本,必然为恶意宏脚本。恶意行为特征其可以包括但不限于如下至少一种:已知恶意调用行为特征、已知恶意删除行为特征、已知恶意获取隐私数据行为特征、已知恶意植入行为特征。

具体的,若监控到可疑行为特征,说明宏脚本存在为恶意宏脚本的概率,因此确定宏脚本为可疑宏脚本,以便识别其是否为恶意宏脚本。

具体的,若未监控到可疑行为特征,且监控到恶意行为特征,则确定相应的宏脚本为恶意宏脚本,并检测第二策略库中是否存在与恶意行为特征匹配的处置策略,第二策略库中预先存储有至少一种恶意行为特征对应的处置策略。若存在,则基于匹配的处置策略处置恶意宏脚本。若不存在,则将恶意宏脚本以及恶意行为特征发送至用户终端,以供用户基于恶意宏脚本以及恶意行为特征通过用户终端设置恶意宏脚本的处置策略。若未监控到可疑行为特征,且监控到恶意行为特征,说明宏脚本之前大概率是被应用程序启动过,且被采用对应的处置策略处置过的恶意宏脚本,因此,可基于恶意宏脚本的恶意行为特征查询第二策略库。第二策略库中存在有大量的处置策略,且每个处置策略均存在有对应的已知恶意宏脚本的恶意行为特征。若查询到第二策略库中存在与恶意宏脚本的恶意行为特征匹配的处置策略,则直接提取匹配的处置策略,并基于提取的处置策略处置恶意宏脚本。若查询到第二策略库中不存在与恶意宏脚本的恶意行为特征匹配的处置策略,说明不能使用第二测量库中现有的处置策略处置恶意宏脚本,此时为了能够对恶意宏脚本进行处置,则将恶意宏脚本以及恶意宏脚本的恶意行为特征发送至用户终端,以供用户基于恶意宏脚本以及恶意行为特征研判出匹配的处置策略,并通过用户终端设置恶意宏脚本的处置策略。然后基于设置的处置策略处置恶意宏脚本,以减少恶意宏脚本对终端设备或隐私数据的危害。

具体的,若未监控到可疑行为特征,且未监控到恶意行为特征,则确定相应的宏脚本为非恶意宏脚本,并放行非恶意宏脚本。若未监控到可疑行为特征,且未监控到恶意行为特征,说明宏脚本大概率是非恶意宏脚本,其运行危害到终端设备或隐私数据的概率较小,因此放行非恶意宏脚本运行即可。

另一种是,响应于监测到终端设备运行的应用程序启动宏脚本,检测已知宏脚本库中是否存在宏脚本,已知宏脚本库中的宏脚本为恶意宏脚本和非恶意宏脚本中的至少一种;若不存在,则确定宏脚本为可疑宏脚本。

已知宏脚本库中包括有预先搜集的已知宏脚本,已知宏脚本库中的宏脚本为恶意宏脚本和非恶意宏脚本中的至少一种。因此已知宏脚本已经明确其具有恶意情况。因此,凡是包括在已知宏脚本库中的宏脚本,均可明确知晓其恶意情况,而不包括在已知宏脚本库中的宏脚本,其恶意情况存疑,因此在检测到应用程序启动宏脚本后,可通过检测已知宏脚本库中是否存在该宏脚本的方式,确定宏脚本是否为可疑宏脚本。

检测已知宏脚本库中是否存在宏脚本的检测结果可以存在如下三种:一种:已知宏脚本库存在应用程序启动的宏脚本;二是,已知宏脚本库中存在应用程序启动的宏脚本,且应用程序启动的宏脚本为已知宏脚本库中的恶意宏脚本;三是,已知宏脚本库存在应用程序启动的宏脚本,且应用程序启动的宏脚本为已知宏脚本库中的非恶意宏脚本。

具体的,若检测出已知宏脚本库中不存在应用程序启动的宏脚本,说明该宏脚本并非是已知宏脚本,其是否为恶意宏脚本存疑,因此确定该宏脚本为可疑宏脚本。

具体的,若检测出已知宏脚本库存在应用程序启动的宏脚本,且宏脚本为恶意宏脚本,则采用恶意宏脚本对应的处置策略处置恶意宏脚本。若已知宏脚本库存在应用程序启动的宏脚本,且宏脚本为恶意宏脚本,说明该宏脚本之前必然被处置过,其必然存在已使用过的处置策略,因此采用恶意宏脚本对应的处置策略处置即可。

具体的,若检测出已知宏脚本库存在宏脚本,且宏脚本为非恶意宏脚本,则放行非恶意宏脚本。若检测出已知宏脚本库存在宏脚本,且宏脚本为非恶意宏脚本,说明应用程序启动的宏脚本为非恶意宏脚本,其运行危害到终端设备或隐私数据的概率较小,因此放行非恶意宏脚本运行即可。

上述两种检测宏脚本是否需要作为可疑宏脚本的方法可以单独使用,也可以结合使用。示例性的,在结合使用时,可先检测已知宏脚本库中是否存在应用程序启动的宏脚本。若检测到已知宏脚本库中不存在宏脚本,则继续将宏脚本的代码注入第二隔离环境内的第二预设进程,执行注入代码的第二预设进程,并监控第二预设进程的行为特征。

在本实施例中,在检测到终端设备运行的应用程序启动可疑宏脚本,则基于预设识别策略对可疑宏脚本进行恶意宏脚本识别,以识别出可疑宏脚本是否为恶意宏脚本。

预设识别策略用于识别可疑宏脚本是否为恶意宏脚本的策略,且预设识别策略的种类可基于业务需要灵活选用。基于选用的预设识别策略的种类数量不同,基于预设识别策略对可疑宏脚本进行恶意宏脚本识别的方法至少可以包括如下两种:

方法一,若存在至少两种预设识别策略,则基于预设识别策略对可疑宏脚本进行恶意宏脚本识别的具体过程可以包括如下步骤:依据至少两种预设识别策略的预设使用顺序,确定当前使用的预设识别策略,并基于当前使用的预设识别策略对可疑宏脚本进行恶意宏脚本识别。若基于当前使用的预设识别策略识别出可疑宏脚本为恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果,且终止对可疑宏脚本的恶意宏脚本识别。若基于当前使用的预设识别策略识别出可疑宏脚本为非恶意宏脚本,则检测当前使用的预设识别策略是否位于预设使用顺序的最后一位;若是,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果;否则,则使用下一个预设识别策略继续对所述可疑宏脚本进行恶意宏脚本识别直至识别出可疑宏脚本为恶意宏脚本,或者,识别出可疑宏脚本为非恶意宏脚本,且当前使用的预设识别策略位于预设使用顺序的最后一位。

若基于当前使用的预设识别策略识别出可疑宏脚本为恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果,且终止对可疑宏脚本的恶意宏脚本识别,不再使用预设使用顺序中后续的预设识别策略对可疑宏脚本的恶意宏脚本识别。这样,一旦识别出宏脚本为恶意宏脚本,便可及时为其确定相应的处置策略并对其进行处置。

若基于当前使用的预设识别策略识别出可疑宏脚本为非恶意宏脚本,检测当前使用的预设识别策略是否位于预设使用顺序的最后一位。若检测出当前使用的预设识别策略为预设使用顺序中最后一位的预设识别策略,说明已基于所有预设识别策略对可疑宏脚本完成了恶意宏脚本识别,且均识别出可疑宏脚本为非恶意宏脚本,因此获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。若检测出当前使用的预设识别策略不是预设使用顺序中最后一位的预设识别策略,其后面还有未使用的预设识别策略,因此继续使用位于当前使用的预设识别策略下一位的预设识别策略对可疑宏脚本进行恶意宏脚本识别直至识别出可疑宏脚本为恶意宏脚本,或者,识别出可疑宏脚本为非恶意宏脚本,且当前使用的预设识别策略位于预设使用顺序的最后一位。通过此种方法对可疑宏脚本进行恶意宏脚本识别,不仅能够减少恶意宏脚本识别的识别量,且能够避免出现恶意宏脚本被漏识别的情况。

方法二,若存在至少一种预设识别策略,则基于预设识别策略对可疑宏脚本进行恶意宏脚本识别的具体过程可以包括如下步骤:采用至少一种预设识别策略分别对可疑宏脚本进行恶意宏脚本识别。若识别出可疑宏脚本为恶意宏脚本的预设识别策略数量达到预设数量,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。若基于所有预设识别策略均未识别出可疑宏脚本为恶意宏脚本,或识别出可疑宏脚本为恶意宏脚本的预设识别策略数量未达到预设数量,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

为了减少恶意宏脚本误报的情况通常选定一个或一个以上的预设识别策略分别对可疑宏脚本进行恶意宏脚本识别,每个预设识别策略均会得到相应的恶意宏脚本识别结果。恶意宏脚本识别结果用于指示可疑宏脚本是恶意宏脚本还是非恶意宏脚本。最后综合每个预设识别策略的恶意宏脚本识别结果,得到可疑宏脚本的恶意宏脚本恶意宏脚本识别结果。

若识别出可疑宏脚本为恶意宏脚本的预设识别策略数量达到预设数量,说明可疑宏脚本大概率为恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。预设数量可基于业务需要和采用的预设识别策略总量设定。示例性的,预设数量可以为1、2等数值。

若基于所有预设识别策略均未识别出可疑宏脚本为恶意宏脚本,说明可疑宏脚本大概率为非恶意脚本,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。或,若识别出可疑宏脚本为恶意宏脚本,但识别出可疑宏脚本的预设识别策略的数量未达到预设数量,则说明可疑宏脚本大概率为非恶意脚本,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

上述两种对可疑宏脚本进行恶意宏脚本识别的方法均采用了预设识别策略,预设识别策略可以包括如下至少一种:基于预先搜集的已知宏脚本进行恶意宏脚本识别、基于行为特征进行恶意宏脚本识别、基于宏脚本代码进行恶意宏脚本识别。不同预设识别策略下对可疑宏脚本进行恶意宏脚本识别的方法不同,下面对不同预设识别策略下对可疑宏脚本进行恶意宏脚本识别的具体过程进行说明:

一是,若预设识别策略为基于行为特征进行恶意宏脚本识别,则对可疑宏脚本进行恶意宏脚本识别的具体过程可以包括如下步骤:将可疑宏脚本的代码注入第一隔离环境内的第一预设进程。执行注入代码的第一预设进程,并监控第一预设进程的行为特征。若监控到恶意行为特征,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若未监控到恶意行为特征,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

宏脚本运行过程中的行为能够体现出宏脚本的恶意情况,因此可通过监控宏脚本运行过程中的行为特征确定可疑宏脚本是否为恶意宏脚本。

将可疑宏脚本的代码注入第一隔离环境内的第一预设进程注入到第一隔离环境内的第一预设进程的目的在于,隔离可疑宏脚本的运行过程,即使可疑宏脚本是恶意宏脚本,其也不能造成危害。隔离环境可基于业务需要灵活选用虚拟机或沙箱。

在第一隔离环境中执行注入可疑宏脚本代码的第一预设进程,从而通过第一预设进程运行可疑宏脚本。第一预设进程执行后,第一预设进程的行为特征即为可疑宏脚本的行为特征。在第一预设进程的执行过程中,监控第一预设进程的行为特征。若监控到恶意行为特征,说明可疑宏脚本存在为恶意宏脚本的概率,因此判定可疑宏脚本存在恶意风险,并获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。若未监控到恶意行为特征,说明可疑宏脚本不存在恶意风险,因此获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。恶意行为特征是恶意宏脚本所具有的行为特征,其可以包括但不限于如下至少一种:调用行为特征、删除行为特征、获取隐私数据行为特征、植入行为特征。

二是,若预设识别策略为基于宏脚本代码进行恶意宏脚本识别,则对可疑宏脚本进行恶意宏脚本识别的具体过程可以包括如下步骤:通过代码分析模型分析可疑宏脚本的代码;若代码分析模型分析出代码包括恶意代码,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若代码分析模型分析出代码不包括恶意代码,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

恶意宏脚本的恶意行为基于其代码实现,因此通过分析可疑宏脚本的代码的方式能够判定可疑宏脚本是否为恶意宏脚本。分析代码的过程可通过代码分析模型实现。代码分析模型是预先训练得到,用于分析宏脚本的代码中是否存在恶意代码的模型。

若代码分析模型分析出可疑宏脚本的代码中包括恶意代码,说明可疑宏脚本大概率为恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。若代码分析模型分析出代码不包括恶意代码,说明可疑宏脚本大概率为非恶意宏脚本,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

三是,若预设识别策略为基于预先搜集的已知宏脚本进行恶意宏脚本识别,则对可疑宏脚本进行恶意宏脚本识别的具体过程可以包括如下步骤:检测预先搜集的已知宏脚本中是否存在目标宏脚本;其中,目标宏脚本与可疑宏脚本的相似度大于预设阈值。若存在目标宏脚本,且目标宏脚本为已知恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。若存在目标宏脚本,且目标宏脚本为已知非恶意宏脚本,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

预先搜集的已知宏脚本是已经明确知晓是恶意宏脚本还是非恶意宏脚本的宏脚本。在确定可疑宏脚本之后,可确定可疑宏脚本与预先搜集的每个已知宏脚本之间的相似度。相似度的确定方法可以包括如下两种:一是,确定可疑宏脚本与已知宏脚本二者代码的相似度。二是,确定可疑宏脚本的行为特征以及确定已知宏脚本的行为特征,确定二者行为特征之间的相似度。

在确定出相似度之后,基于相似度判断已知宏脚本中是否存在目标宏脚本。若存在目标宏脚本,说明可疑宏脚本的恶意情况与目标宏脚本相同。因此,若目标宏脚本为已知恶意宏脚本,则获得可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果。若目标宏脚本为已知非恶意宏脚本,则获得可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

若不存在目标宏脚本,则获得预设识别策略识别失败的恶意宏脚本识别结果,此时可采取如下两种操作:一是,将可疑宏脚本以及可疑宏脚本的行为特征发送至用户终端,以供用户基于可疑宏脚本以及行为特征研判出可疑宏脚本是恶意宏脚本还是非恶意宏脚本。二是,更换其他预设识别策略继续对可疑宏脚本进行恶意宏脚本识别。

在通过上述的对可疑宏脚本进行恶意宏脚本识别的方法,得到恶意宏脚本识别结果后,便可通过恶意宏脚本识别结果确定出可疑宏脚本是恶意宏脚本还是非恶意宏脚本。

102、若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本,则确定恶意宏脚本的处置策略。

恶意宏脚本识别结果指示可疑宏脚本的恶意情况,也就是指示可疑宏脚本是恶意宏脚本还是非恶意宏脚本。若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本,说明可疑宏脚本的运行会危害到终端设备或隐私数据的安全,因此为了降低危害,需要确定恶意宏脚本的处置策略,以及时对恶意宏脚本进行处置。

确定恶意宏脚本的处置策略的具体过程可以包括如下步骤:确定恶意宏脚本识别结果得到的恶意宏脚本的行为特征;基于行为特征确定恶意宏脚本的处置策略。

恶意宏脚本的行为特征能够体现出恶意宏脚本的危害情况和程度,因此在可疑宏脚本为恶意宏脚本的情况下,基于恶意宏脚本的行为特征确定恶意宏脚本的处置策略。

基于行为特征确定恶意宏脚本的处置策略的具体过程可以包括如下步骤:检测第一策略库中是否存在与行为特征匹配的处置策略;其中,第一策略库中预先存储有至少一种行为特征对应的处置策略;若存在,则将匹配的处置策略确定为恶意宏脚本的处置策略;若不存在,则将恶意宏脚本以及行为特征发送至用户终端,以供用户基于恶意宏脚本以及行为特征通过用户终端设置恶意宏脚本的处置策略。

第一策略库中存在有大量的处置策略,且每个处置策略均存在有对应的已知宏脚本的行为特征。若检测出第一策略库中存在与恶意宏脚本的行为特征匹配的处置策略,说明可用现有的处置策略处置恶意宏脚本,则将匹配的处置策略确定为恶意宏脚本的处置策略。若检测出第一策略库中不存在与恶意宏脚本的行为特征匹配的处置策略,说明现有的处置策略均不能用于处置恶意宏脚本,因此将恶意宏脚本以及行为特征发送至用户终端,以供用户基于恶意宏脚本以及行为特征研判处置策略,并通过用户终端设置恶意宏脚本的处置策略。

可疑宏脚本为恶意宏脚本的情况下,恶意宏脚本对应的处置策略可以包括如下至少一种:修复漏洞、恶意宏脚本报警、关闭恶意宏脚本的进程、删除恶意宏脚本。

103、基于处置策略处置恶意宏脚本。

在可疑宏脚本为恶意宏脚本时,基于处置策略处置恶意宏脚本的目的是为了防护终端设备和隐私数据被恶意宏脚本危害。基于处置策略处置恶意宏脚本的过程包括:对应用程序启动的恶意宏脚本执行处置策略相关的处置动作,以避免恶意宏脚本产生危害。比如,处置策略包括修复漏洞时,则相关的处置动作即为在终端设备启动针对应用程序的漏洞修复工作;处置策略包括恶意宏脚本报警,则相关的处置动作即为在终端设备弹出恶意宏脚本报警信息;处置策略包括关闭恶意宏脚本的进程,则关闭恶意宏脚本的相关进程;处置策略包括删除恶意宏脚本,则删除恶意宏脚本。

本申请实施例提供的宏脚本处置方法,响应于检测到终端设备运行的应用程序启动可疑宏脚本,基于预设识别策略对可疑宏脚本进行恶意宏脚本识别。若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本,则确定恶意宏脚本的处置策略,并基于处置策略处置恶意宏脚本。可见,本申请实施例在应用程序启动可疑宏脚本后,并未放任可疑宏脚本运行,而是对可疑宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定出可疑宏脚本为恶意宏脚本时,使用与恶意宏脚本具有较高适配性的处置策略,对恶意宏脚本进行处置,这样,能够有效识别和处置恶意宏脚本,从而能够降低恶意宏脚本的危害。

在本申请一些实施例中,该宏脚本处置方法还可以包括如下步骤:若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,则放行非恶意宏脚本。

若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,说明应用程序运启动的是非恶意宏脚本,且非恶意宏脚本不会危害到终端设备或隐私数据,因此放行非恶意宏脚本。这样,在应用程序启动的可疑宏脚本为非恶意宏脚本时,不干预非恶意宏脚本运行,从而能够基于非恶意宏脚本运行,在应用程序中的完成相关的操作和任务。

在本申请一些实施例中,考虑到对可疑宏脚本进行恶意宏脚本识别需要耗费一段时间,如果可疑宏脚本是非恶意宏脚本,且这段时间未运行,可能会影响到用户使用应用程序,因此为了避免这种影响发生,则该宏脚本处置方法还可以包括如下步骤:响应于检测到应用程序启动可疑宏脚本,对可疑宏脚本启动预设安全防护程序,以对可疑宏脚本的运行进行行为管控。若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本且恶意宏脚本被处置完成,或,若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,则关闭预设安全防护程序。

在检测到应用程序启动可疑宏脚本,由于可疑宏脚本恶意与否尚不知晓,因此为了能够在避免恶意危害的同时,不影响应用程序的使用,则对可疑宏脚本启动预设安全防护程序,以通过预设安全防护程序对可疑宏脚本的运行进行行为管控,避免危害到终端设备和隐私数据。

若恶意宏脚本识别结果确定可疑宏脚本为恶意宏脚本且恶意宏脚本被处置完成,或,若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,说明当前不存在能够危害到终端设备和隐私数据的恶意宏脚本,因此关闭预设安全防护程序。

在本申请一些实施例中,考虑到可疑宏脚本是恶意宏脚本的情况下,其运行就会给终端设备或隐私数据带来潜在的危害,因此为了避免危害发生,则该宏脚本处置方法还可以包括如下步骤:响应于检测到应用程序启动可疑宏脚本,拦截可疑宏脚本。若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,则释放拦截的非恶意宏脚本。

在检测到应用程序启动可疑宏脚本时,为了减少危害的发生几率,则拦截可疑宏脚本,以阻止可疑宏脚本的运行。

若恶意宏脚本识别结果确定可疑宏脚本为非恶意宏脚本,说明可疑宏脚本还需要运行使用,则释放拦截的非恶意宏脚本,以使非恶意宏脚本能够运行。

在本申请一些实施例中,为了能够在恶意宏脚本再次被应用程序启动时,快速识别和处置恶意宏脚本,则该宏脚本处置方法还可以包括如下步骤:维护恶意宏脚本的处置策略和行为特征之间的对应关系,以便再次识别出应用程序启动存在行为特征的恶意宏脚本时,基于对应的处置策略进行处置。

维护恶意宏脚本的处置策略和行为特征的对应关系的主体与该宏脚本处置方法的应用主体有关。当该宏脚本处置方法仅应用于客户端时,则维护恶意宏脚本的处置策略和行为特征的对应关系的主体为客户端。当该宏脚本处置方法应用于包括客户端和控制中心的宏脚本处置系统,则控制中心向客户端下发恶意宏脚本的处置策略和行为特征,客户端维护恶意宏脚本的处置策略和行为特征的对应关系,以使客户端基于维护的对应关系,中的行为特征识别应用程序是否再次启动恶意宏脚本,并识别出再次启动恶意宏脚本时基于相应的处置策略进行处置。需要说明的是,当宏脚本处置系统存在多个客户端时,控制中心可向每个客户端均下发恶意宏脚本的处置策略和行为特征,以使每个客户端均具有对该恶意宏脚本的防护能力。

本申请的一个实施例提供了一种宏脚本处置系统,如图2所示,该宏脚本处置系统包括:控制中心21和客户端22,且客户端22部署于安装有应用程序的终端设备;

客户端22,用于响应于检测到终端设备运行的应用程序启动可疑宏脚本,上报所述可疑宏脚本至控制中心21;

控制中心21,用于基于预设识别策略对可疑宏脚本进行恶意宏脚本识别;若恶意宏脚本识别结果确定所述可疑宏脚本为恶意宏脚本,则确定所述恶意宏脚本的处置策略,并将处置策略下发至客户端22,以供客户端22基于处置策略处置恶意宏脚本。

安装有应用程序的终端设备,是指连接到计算机网络的末端设备,用于访问网络资源和进行通信。常见的终端设备可以包括但不限于个人电脑、笔记本电脑、平板电脑、智能手机、智能手表等电子设备。

宏脚本处置系统中客户端的数量本实施例不做限定,其可基于业务需要灵活选定。当包括多个客户端时,则每个客户端均对应部署在一个终端设备内。

客户端能够获取和检测出可疑恶意的可疑宏脚本,让客户端设备具有初步的恶意宏脚本的防护能力。控制中心对可疑宏脚本进行高效恶意宏脚本识别,明确出可疑宏脚本是否为恶意宏脚本,并在识别出为恶意宏脚本时给出匹配的处置策略。控制中心将处置策略下发至客户端,使得客户端能够及时对恶意宏脚本进行处置,从而使得客户端具有防范恶意宏脚本的能力。

本申请实施例提供的宏脚本处置系统,在应用程序启动可疑宏脚本后,并未放任可疑宏脚本运行,而是对可疑宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定出可疑宏脚本为恶意宏脚本时,使用与恶意宏脚本具有较高适配性的处置策略,对恶意宏脚本进行处置,这样,能够有效识别和处置恶意宏脚本,从而能够降低恶意宏脚本的危害。

在本申请一些实施例中,如图3所示,控制中心21,具体用于若存在至少两种预设识别策略的预设使用顺序,确定当前使用的预设识别策略,并基于当前使用的预设识别策略对所述可疑宏脚本进行恶意宏脚本识别;若基于当前使用的预设识别策略识别出所述可疑宏脚本为恶意宏脚本,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果,且终止对所述可疑宏脚本的恶意宏脚本识别;若基于当前使用的预设识别策略识别出所述可疑宏脚本为非恶意宏脚本,则使用下一个预设识别策略继续对所述可疑宏脚本进行恶意宏脚本识别直至识别出所述可疑宏脚本为恶意宏脚本,或者,识别出所述可疑宏脚本为非恶意宏脚本,且当前使用的预设识别策略位于所述预设使用顺序的最后一位。

在本申请一些实施例中,如图3所示,控制中心21,具体用于存在至少一种预设识别策略分别对所述可疑宏脚本进行恶意宏脚本识别;若识别出所述可疑宏脚本为恶意宏脚本的预设识别策略数量达到所述预设数量,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若基于所有预设识别策略均未识别出所述可疑宏脚本为恶意宏脚本,或识别出所述可疑宏脚本为恶意宏脚本的预设识别策略数量未达到所述预设数量,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,如图3所示,控制中心21包括:

第一识别模块211,用于若所述预设识别策略为基于预先搜集的已知宏脚本进行恶意宏脚本识别,则检测所述预先搜集的已知宏脚本中是否存在目标宏脚本;其中,所述目标宏脚本与所述可疑宏脚本的相似度大于预设阈值;若存在所述目标宏脚本,且所述目标宏脚本为已知恶意宏脚本,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若存在所述目标宏脚本,且所述目标宏脚本为已知非恶意宏脚本,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,如图3所示,控制中心21包括:

第二识别模块212,用于若所述预设识别策略为基于行为特征进行恶意宏脚本识别,则将所述可疑宏脚本的代码注入第一隔离环境内的第一预设进程;执行注入代码的第一预设进程,并监控所述第一预设进程的行为特征;若监控到恶意行为特征,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若未监控到恶意行为特征,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,如图3所示,控制中心21包括:

第三识别模块213,用于若所述预设识别策略为基于宏脚本代码进行恶意宏脚本识别,则通过所述代码分析模型分析所述可疑宏脚本的代码;若所述代码分析模型分析出所述代码包括恶意代码,则获得所述可疑宏脚本为恶意宏脚本的恶意宏脚本识别结果;若所述代码分析模型分析出所述代码不包括恶意代码,则获得所述可疑宏脚本为非恶意宏脚本的恶意宏脚本识别结果。

在本申请一些实施例中,如图3所示,控制中心21包括:

确定模块214,用于确定所述恶意宏脚本识别结果得到的所述恶意宏脚本的行为特征;基于所述行为特征确定所述恶意宏脚本的处置策略。

在本申请一些实施例中,如图3所示,第一确定模块214,具体用于检测第一策略库中是否存在与所述行为特征匹配的处置策略;其中,所述第一策略库中预先存储有至少一种行为特征对应的处置策略;若存在,则将匹配的处置策略确定为所述恶意宏脚本的处置策略;若不存在,则将所述恶意宏脚本以及所述行为特征发送至用户终端,以供用户基于所述恶意宏脚本以及行为特征通过所述用户终端设置所述恶意宏脚本的处置策略。

在本申请一些实施例中,如图3所示,所述控制中心21,还用于维护所述恶意宏脚本的处置策略和行为特征之间的对应关系,以便再次识别出所述应用程序启动存在所述行为特征的恶意宏脚本时,基于对应的处置策略进行处置。

在本申请一些实施例中,如图3所示,所述控制中心21,还用于向所述客户端22下发所述恶意宏脚本的处置策略和行为特征;

所述客户端22,用于维护所述恶意宏脚本的处置策略和行为特征之间的对应关系,以便再次识别出所述应用程序启动存在所述行为特征的恶意宏脚本时,基于对应的处置策略进行处置。

在本申请一些实施例中,如图3所示,控制中心21还包括:

放行模块215,用于若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则放行所述非恶意宏脚本。

在本申请一些实施例中,如图3所示,客户端22包括:

第一检测模块221,用于响应于监测到所述终端设备运行的应用程序启动宏脚本,将所述宏脚本的代码注入第二隔离环境内的第二预设进程;执行注入代码的第二预设进程,并监控所述第二预设进程的行为特征;若监控到可疑行为特征,则确定所述宏脚本为所述可疑宏脚本。

在本申请一些实施例中,如图3所示,第一检测模块221,还用于若未监控到可疑行为特征,且监控到恶意行为特征,则确定相应的宏脚本为恶意宏脚本,并检测第二策略库中是否存在与所述恶意行为特征匹配的处置策略,所述第二策略库中预先存储有至少一种恶意行为特征对应的处置策略;若存在,则基于匹配的处置策略处置所述恶意宏脚本;若不存在,则

将所述恶意宏脚本以及所述恶意行为特征发送至用户终端,以供用户基于所述恶意宏脚本以及所述恶意行为特征通过所述用户终端设置所述恶意宏脚本的处置策略;若未监控到可疑行为特征,且未监控到恶意行为特征,则确定相应的宏脚本为非恶意宏脚本,并放行所述非恶意宏脚本。

在本申请一些实施例中,如图3所示,客户端22包括:

第二检测模块222,用于响应于监测到所述终端设备运行的应用程序启动宏脚本,检测已知宏脚本库中是否存在所述宏脚本,所述已知宏脚本库中的宏脚本为恶意宏脚本和非恶意宏脚本中的至少一种;若不存在,则确定所述宏脚本为所述可疑宏脚本。

在本申请一些实施例中,如图3所示,第二检测模块222,还用于若检测出所述已知宏脚本库存在所述宏脚本,且所述宏脚本为恶意宏脚本,则采用恶意宏脚本对应的处置策略处置所述恶意宏脚本;若检测出所述已知宏脚本库存在所述宏脚本,且所述宏脚本为非恶意宏脚本,则放行所述非恶意宏脚本。

在本申请一些实施例中,如图3所示,所述客户端22,还用于响应于检测到所述应用程序启动可疑宏脚本,对所述可疑宏脚本启动预设安全防护程序,以对所述可疑宏脚本的运行进行行为管控;若恶意宏脚本识别结果确定所述可疑宏脚本为恶意宏脚本且所述恶意宏脚本被处置完成,或,若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则关闭所述预设安全防护程序。

在本申请一些实施例中,如图3所示,所述客户端22,还用于响应于检测到所述应用程序启动可疑宏脚本,拦截所述可疑宏脚本;若恶意宏脚本识别结果确定所述可疑宏脚本为非恶意宏脚本,则释放拦截的所述非恶意宏脚本。

在本申请一些实施例中,如图3所示,所述处置策略包括如下至少一种:修复漏洞、恶意宏脚本报警、删除恶意宏脚本的进程、删除恶意宏脚本。

本申请实施例提供的宏脚本处置系统中,各个组成的运行过程中所采用的详解可以参见上述宏脚本处置方法实施例的对应详解,在此不再赘述。

本申请的一个实施例提供了一种客户端,所述客户端部署于安装有应用程序的终端设备,且所述客户端应用如上述的宏脚本处置方法。

本申请实施例提供的客户端,在应用程序启动可疑宏脚本后,并未放任可疑宏脚本运行,而是对可疑宏脚本进行恶意宏脚本识别,并在恶意宏脚本识别结果确定出可疑宏脚本为恶意宏脚本时,使用与恶意宏脚本具有较高适配性的处置策略,对恶意宏脚本进行处置,这样,能够有效识别和处置恶意宏脚本,从而能够降低恶意宏脚本的危害。

本申请实施例提供的客户端应用的宏脚本处置方法所采用的详解可以参见上述宏脚本处置方法实施例的对应详解,在此不再赘述。

进一步的,本申请的一个实施例还提供了一种计算机可读存储介质,该存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述的宏脚本处置方法。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的优选实施方式。

此外,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据割接设备的处理器以产生一个机器,使得通过计算机或其他可编程数据割接设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据割接设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据割接设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种基于脚本检测NFS双客户端目录显示的方法
  • 一种脚本加密方法、脚本解密运行方法和相关装置
  • 一种挖矿脚本检测的方法、服务器、客户端及系统
  • 一种数据库脚本文件管理方法及系统、客户端装置
技术分类

06120116491920