恶意进程关联处理方法、装置、电子设备及介质转让专利

申请号 : CN202311155180.6

文献号 : CN116881917B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 潘东东孙洪伟肖新光

申请人 : 北京安天网络安全技术有限公司

摘要 :

本申请涉及计算机技术领域,特别是涉及一种恶意进程关联处理方法、装置、电子设备及介质,该方法包括:对目标设备系统的每一电子设备进行监测,确定被感染的进程为目标进程,根据目标进程对应的历史行为确定其调用的端口信息,根据端口信息中包含的风险端口生成对应的风险端口特征向量,确定目标时间长度,根据该目标时间长度对其他待识别进程进行检测,以生成每一待识别进程对应的端口调用特征向量,确定风险端口特征向量与每一端口调用特征向量之间的第一目标匹配度,将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。本申请能够准确识别出与目标进程关联程度较大的其他进程以及时防护,保证目标设备系统运行的安全性。

权利要求 :

1.一种恶意进程关联处理方法,其特征在于,所述方法包括:

对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程;

根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息;

确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号;

获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度;

每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT;

根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量;

将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度,;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数;

将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。

2.根据权利要求1所述的恶意进程关联处理方法,其特征在于,所述确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),包括:确定所述端口信息中包含的风险端口的数量;

若所述风险端口的数量小于预定数量阈值,则将所述目标进程调用的所述风险端口与其他待识别进程的端口调用信息进行比对,并将端口调用信息中包含了所述目标进程调用的全部风险端口的待识别进程挂起;

若所述风险端口的数量大于或等于预定数量阈值,则根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An)。

3.根据权利要求1所述的恶意进程关联处理方法,其特征在于,若所述目标进程调用的端口信息中只包含常规端口,则确定所述目标进程对应的常规端口特征向量S=(B1,B2,…,Ba,…,Bb),a=1,2,…,b;其中,Ba为目标进程调用的第a个常规端口的端口调用特征;Ba=(NUMa,JGa,DGa,XGa);其中,NUMa、JGa、DGa和XGa分别为目标进程调用Ba对应的常规端口的次数、平均时间间隔、最大时间间隔和最小时间间隔;

将所述常规端口特征向量S与每一所述端口调用特征向量进行匹配,获取第二目标匹配度列表C=(C1,C2,…,Cx,…,Cy);其中,Cx为S与YTx之间的第二目标匹配度,;γ+δ=1,γ≤δ,Cx1为S与YTx之间的向量长度匹配度,Cx1=1‑|(Lx‑LS)/LS|,其中,LS为S的向量长度;Cx2为S和YTx的向量特征匹配度,Cx2=cos_sim(S,YTx);

将对应第二目标匹配度大于所述预设匹配度阈值的待识别进程挂起。

4.根据权利要求1‑3任一项所述的恶意进程关联处理方法,其特征在于,根据目标进程调用的端口信息,查询预设的端口类型对应关系表,识别所述端口信息中是否包含风险端口,所述端口类型对应关系表包括端口的端口号及其对应的端口类型,所述端口类型包括风险端口或常规端口。

5.根据权利要求1‑3任一项所述的恶意进程关联处理方法,其特征在于,在所述每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息之前,所述方法还包括:将所述目标时间长度乘以预定比例系数,得到预定时间间隔,所述预定比例系数小于或等于1。

6.根据权利要求1‑3任一项所述的恶意进程关联处理方法,其特征在于,所述方法还包括:根据所述目标进程以及所有被挂起的待识别进程进行感染源定位。

7.一种恶意进程关联处理装置,其特征在于,包括:

监测模块,用于对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程;

确定模块,用于根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息;

编码模块,用于确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号;

第一获取模块,用于获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度;

第二获取模块,用于每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT;

生成模块,用于根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量;

匹配模块,用于将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度, ;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数;

处理模块,用于将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。

8.根据权利要求7所述的恶意进程关联处理装置,其特征在于,所述确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),包括:确定所述端口信息中包含的风险端口的数量;

若所述风险端口的数量小于预定数量阈值,则将所述目标进程调用的所述风险端口与其他待识别进程的端口调用信息进行比对,并将端口调用信息中包含了所述目标进程调用的全部风险端口的待识别进程挂起;

若所述风险端口的数量大于或等于预定数量阈值,则根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An)。

9.一种电子设备,其特征在于,包括处理器和存储器;

所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1至6任一项所述方法的步骤。

10.一种非瞬时性计算机可读存储介质,其特征在于,所述非瞬时性计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至6任一项所述方法的步骤。

说明书 :

恶意进程关联处理方法、装置、电子设备及介质

技术领域

[0001] 本发明涉及计算机技术领域,特别是涉及一种恶意进程关联处理方法、装置、电子设备及介质。

背景技术

[0002] 感染型病毒由于其自身的特性,需要附加到宿主(例如进程等)上进行运行,一但一个病毒文件执行,其很有可能将系统中的大多数文件都加入病毒代码,进而传播给其他的电子设备。在目前的技术方案中,当检测到被病毒感染的进程时,常只针对该进程进行安全防护,例如挂起该进程等,且一般只有进程有风险行为时才会被监测到。而其他被感染的进程由于未被监测到风险行为或者未触发主动防御而被遗漏,影响设备运行的安全性。

发明内容

[0003] 有鉴于此,本申请提供一种恶意进程关联处理方法、装置、电子设备及介质,以提高被感染进程识别的全面性,保证设备运行的安全。
[0004] 在本申请的一个方面,提供了一种恶意进程关联处理方法,所述方法包括:
[0005] 对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程;
[0006] 根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息;
[0007] 确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号;
[0008] 获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度;
[0009] 每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT;
[0010] 根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量;
[0011] 将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度,;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数;
[0012] 将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。
[0013] 在本申请的一个方面,提供了一种恶意进程关联处理装置,包括:
[0014] 监测模块,用于对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程;
[0015] 确定模块,用于根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息;
[0016] 编码模块,用于确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号;
[0017] 第一获取模块,用于获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度;
[0018] 第二获取模块,用于每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT;
[0019] 生成模块,用于根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量;
[0020] 匹配模块,用于将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度, ;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数;
[0021] 处理模块,用于将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。
[0022] 在本申请的一个方面,提供一种电子设备,包括处理器和存储器;
[0023] 所述处理器通过调用所述存储器存储的程序或指令,用于执行上述方法的步骤。
[0024] 在本申请的一个方面,提供一种非瞬时性计算机可读存储介质,所述非瞬时性计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行上述方法的步骤。
[0025] 本申请提供的恶意进程关联处理方法,当监测到任一进程被感染后,将被感染的进程确定为目标进程,根据目标进程对应的历史行为,确定目标进程调用的端口信息,确定该端口信息中包含的风险端口,并生成对应的风险端口特征向量;获取目标进程调用第一个风险端口的时间以及调用最后一个风险端口的时间,以确定目标时间长度,每隔预定时间间隔,获取除目标进程外的其他待识别进程在当前时刻之前目标时间长度内的端口调用信息,以生成每一待识别进程对应的端口调用特征向量,将风险端口特征向量与每一端口调用特征向量进行匹配,以获取第一目标匹配度列表,其中,风险端口特征向量与端口调用特征向量之间的第一目标匹配度由二者之间的向量长度匹配度以及向量特征匹配度进行确定,再将第一目标匹配度与预设匹配度阈值进行比较,将对应第一目标匹配度大于预设匹配度阈值的待识别进程进行挂起。由此,通过上述方式可以准确识别出与目标进程关联程度较大的其他进程,进而可以及时对相关联的进程进行处理,从而保证了目标设备系统运行的安全性。

附图说明

[0026] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027] 图1为本申请实施例提供的一种恶意进程关联处理方法的流程图;
[0028] 图2为本申请实施例提供的一种恶意进程关联处理方法中目标进程仅调用常规端口时的流程示意图。

具体实施方式

[0029] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0030] 请参考图1,在本申请的一个实施例中,提供了一种恶意进程关联处理方法,该方法可以应用于目标安全系统,该目标安全系统与目标设备系统连接,该目标设备系统即需进行安全检测防护的用户系统,该目标设备系统可以包含若干电子设备,该电子设备可以包括但不限于智能手机、平板电脑、便携式电脑、台式电脑以及服务器中的一种或多种,其中服务器可以是物理服务器或者云服务器。
[0031] 如图1所示,该方法至少包括以下步骤:
[0032] S110,对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程。
[0033] 具体地,本领域技术人员可以在目标安全系统中预先配置主动防御模块以对目标设备系统中的每一电子设备进行监测,当监测到任一进程被感染后,即将被感染的进程确定为目标进程。需要说明的,主动防御模块可以采用现有的恶意进程识别算法对每一电子设备进行监测,本申请对此不作特殊限定。
[0034] S120,根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息。
[0035] 具体地,获取目标进程从启动到被确定为恶意进程(即目标进程)的时间段内的历史行为,从而确定目标进程在该时间段内所调用的端口信息,该端口信息可以包括目标进程所调用的每一端口的端口号。
[0036] S130,确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号。
[0037] 其中,风险端口是指调用后存在安全风险的端口,例如隐私数据获取、后台配置管理等等。应该理解的,风险端口应由具有一定权限的进程所调用,若普通进程进行调用,则表示其被病毒感染的可能性较高。当确定目标进程所调用的风险端口后,根据风险端口对应的端口号进行编码,从而得到对应的风险端口特征向量。
[0038] 可选地,在步骤140之前,还可以将当前的目标进程的风险端口特征向量T,与之前记录的历史目标进程的历史风险端口特征向量T´进行比较,如果两者不相似,则执行步骤150‑步骤180的恶意进程检测,如果确定两者相似,则在确认历史目标进程对应的恶意进程检测还在执行中的情况下,不再执行步骤150‑步骤180的恶意进程检测,而在确认历史目标进程对应的恶意进程检测不在执行中的情况下,执行步骤150‑步骤180的恶意进程检测。其中,确定风险端口特征向量T和历史风险端口特征向量T´相似,可以采用相关技术中的向量相似度计算方法,本申请对此不作限制。
[0039] S140,获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度。
[0040] 具体地,通过获取目标进程调用第一个风险端口A1的时间以及第n个风险端口An的时间,以确定目标时间长度,以便于后续可以基于该目标时间长度进行其他待识别端口的检测。应该理解的,若被同一感染源所感染,则进程之间的行为应该相类似,例如端口的调用间隔或者调用次数等,因此,基于该目标时间长度进行检测可以提高后续相关联的进程的识别结果的准确性。
[0041] 值得注意的是,目标时间长度中包含预设时间长度,该预设时间长度可以由本领域技术人员根据在先经验进行确定,例如5min等,以提高目标时间长度的容错率。在其他示例中,预设时间长度也可以为0,对此不作特殊限定。
[0042] S150,每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT。
[0043] 其中,预定时间间隔可以由目标时间长度进行确定,例如预定时间间隔可以由目标时间长度乘以一定比例系数得到。由此预定时间间隔可以跟随目标时间长度的变化而变化,从而保证能够及时对其他待识别进程进行检测。具体地,每隔预定时间间隔即对除目标进程外的其他待识别进程进行检测,获取其他待识别进程在当前时刻之前目标时间长度内的端口调用信息,该端口调用信息可以基于待识别进程对应的日志文件进行确定。应该理解的,待识别进程可以是所有电子设备当前正在运行的除目标进程以外的所有进程,以保证识别结果的全面性。
[0044] S160,根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量。
[0045] 具体地,可以根据每一待识别进程对应的端口调用信息,生成每一待识别进程对应的端口调用特征向量,在一示例中,端口调用特征向量可以根据待识别进程所调用的端口的端口号进行编码得到。
[0046] S170,将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度,;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数。
[0047] 具体地,可以将风险端口特征向量T逐一与每一端口特征向量进行匹配,并计算二者之间的第一目标匹配度,从而得到第一目标匹配度列表P,该第一目标匹配度包括了风险端口特征向量与每一端口调用特征向量之间的向量长度匹配度以及向量特征匹配度,其中,向量特征匹配度Px2=cos_sim(T,YTx)由二者之间的余弦相似度确定,可选地,余弦相似度还可以通过公式Px2=1‑cos(T,YTx)确定。在其他实施例中,向量特征匹配度也可以由二者之间的欧式距离确定,对此不作特殊限定。
[0048] 并且,应该理解的,不同进程之间所调用的端口的数量可能存在不同,影响到向量长度的匹配度,但是这种是正常的情况。因此,本发明通过对向量长度匹配度以及向量特征匹配度分配不同的权重,且设置α≤β,使得向量长度匹配度的权重较小,降低不同进程之间所调用的端口的数量对第一目标匹配度的影响,通过使向量特征匹配度在第一目标匹配度的计算中占有较大权重,保证向量特征匹配度对第一目标匹配度的影响程度,从而保证第一目标匹配度确定的可信度以及准确度,进而提高了后续相关联的进程的识别结果的准确度。
[0049] S180,将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。
[0050] 具体地,将第一目标匹配度与预设匹配度阈值进行比较,若大于预设匹配度阈值,则表示该待识别进程与目标进程之间的关联程度较高,即该待识别进程被感染的概率较高,因此可以对该待识别进程进行挂起,从而达到及时防护的目的,避免遗漏。
[0051] 可选地,当隔预设数量个连续预定时间间隔,都未检测到对应第一目标匹配度大于预设匹配度阈值的待识别进程,则不再执行步骤150‑步骤180对应的恶意进程检测。这种情况说明当前系统中大概率已经不存在和目标进程关联度较高的被感染进程,不再需要使用目标进程进行恶意检测。
[0052] 另外,本申请中即使步骤180中对应第一目标匹配度大于预设匹配度阈值的待识别进程最终确定被感染,也不会将该被感染的进程确定为S110中的目标进程,以避免浪费系统资源。本申请中的目标进程为预先配置的主动防御模块确定的被感染的进程。
[0053] 由此,本申请提供的恶意进程关联处理方法,当监测到任一进程被感染后,将被感染的进程确定为目标进程,根据目标进程对应的历史行为,确定目标进程调用的端口信息,确定该端口信息中包含的风险端口,并生成对应的风险端口特征向量;获取目标进程调用第一个风险端口的时间以及调用最后一个风险端口的时间,以确定目标时间长度,每隔预定时间间隔,获取除目标进程外的其他待识别进程在当前时刻之前目标时间长度内的端口调用信息,以生成每一待识别进程对应的端口调用特征向量,将风险端口特征向量与每一端口调用特征向量进行匹配,以获取第一目标匹配度列表,其中,风险端口特征向量与端口调用特征向量之间的第一目标匹配度由二者之间的向量长度匹配度以及向量特征匹配度进行确定,再将第一目标匹配度与预设匹配度阈值进行比较,将第一目标匹配度大于预设匹配度阈值的待识别进程进行挂起。由此,通过上述方式可以准确识别出与目标进程关联程度较大的其他进程,进而可以及时对被感染的目标进程相关联的进程进行处理,从而保证了目标设备系统运行的安全性。
[0054] 在本申请的一个实施例中,所述确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),包括:
[0055] 确定所述端口信息中包含的风险端口的数量;
[0056] 若所述风险端口的数量小于预定数量阈值,则将所述目标进程调用的所述风险端口与其他待识别进程的端口调用信息进行比对,并将端口调用信息中包含了所述目标进程调用的全部风险端口的待识别进程挂起;
[0057] 若所述风险端口的数量大于或等于预定数量阈值,则根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An)。
[0058] 在该实施例中,若目标进程对应的端口信息中包含风险端口,则可以先确定风险端口的数量,若该数量小于预定数量阈值,则无需构建风险端口特征向量,直接将目标进程所调用的风险端口与其他待识别进程的端口调用信息进行比对,并将端口调用信息中包含了目标进程调用的全部风险端口的待识别进程进行挂起,从而可以提高相关联的进程的识别效率,并保证其识别结果的准确度,以及时对相关联的进程进行防护,保证目标设备系统运行的安全性。若待识别进程的端口调用信息中只包含了目标进程调用的部分风险端口,则不对该待识别进程进行处理,避免误处理的情况发生。
[0059] 如图2所示,在本申请的一个实施例中,若所述目标进程调用的端口信息中只包含常规端口,则所述方法还包括:
[0060] S210,确定所述目标进程对应的常规端口特征向量S=(B1,B2,…,Ba,…,Bb),a=1,2,…,b;其中,Ba为目标进程调用的第a个常规端口的端口调用特征;Ba=(NUMa,JGa,DGa,XGa);其中,NUMa、JGa、DGa和XGa分别为目标进程调用Ba对应的常规端口的次数、平均时间间隔、最大时间间隔和最小时间间隔;
[0061] S220,将所述常规端口特征向量S与每一所述端口调用特征向量进行匹配,获取第二目标匹配度列表C=(C1,C2,…,Cx,…,Cy);其中,Cx为S与YTx之间的第二目标匹配度,;γ+δ=1,γ≤δ,Cx1为S与YTx之间的向量长度匹配度,Cx1=1‑|(Lx‑LS)/LS|,其中,LS为S的向量长度,Lx为YTx的向量长度;Cx2为S和YTx的向量特征匹配度,Cx2=cos_sim(S,YTx);
[0062] S230,将对应第二目标匹配度大于所述预设匹配度阈值的待识别进程挂起。
[0063] 在该实施例中,当目标进程只调用常规端口时,则可以对应生成常规端口特征向量,并根据上述公式,计算常规端口特征向量与其他待识别进程的端口调用特征向量之间的第二目标匹配度,需要说明的,第二目标匹配度与第一目标匹配度的计算方式相类似,不再赘述。
[0064] 并将第二目标匹配度大于预设匹配度阈值的待识别进程挂起,从而在目标进程只调用常规端口时,也能够及时并准确的确定相关联的其他进程,保证了目标设备系统运行的安全性。
[0065] 在本申请的一个实施例中,根据目标进程调用的端口信息,查询预设的端口类型对应关系表,识别所述端口信息中是否包含风险端口,所述端口类型对应关系表包括端口的端口号及其对应的端口类型,所述端口类型包括风险端口或常规端口。该端口类型对应关系表可以由本领域技术人员预先收集并确定,对此不作特殊限定。
[0066] 在本申请的一个实施例中,步骤S120,包括:
[0067] 获取与所述目标进程对应的日志信息进行查询,确定所述目标进程调用的端口信息。
[0068] 在该实施例中,根据目标进程的标识信息获取对应的日志文件,并基于该日志文件确定目标进程所调用的端口信息,以保证端口信息确定的准确性。
[0069] 在本申请的一个实施例中,在所述每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息之前,所述方法还包括:
[0070] 将所述目标时间长度乘以预定比例系数,得到预定时间间隔,所述预定比例系数小于或等于1。
[0071] 在该实施例中,当确定目标时间长度之后,则可以将目标时间长度乘以预定比例系数,得到预定时间间隔,其中,该预定比例系数可以由本领域技术人员根据在先经验预先确定,该预定比例系数小于或等于1,从而使得计算得到的时间间隔小于或等于目标时间长度,以避免后续的进程检测出现信息遗漏的情况发生。
[0072] 在本申请的一个实施例中,所述恶意进程关联处理方法还包括:
[0073] 根据所述目标进程以及所有被挂起的待识别进程进行感染源定位。
[0074] 在该实施例中,根据被挂起的进程,可以采用感染源定位算法进行感染源定位,从而及时发现感染源并进行清除,以防止该感染源继续感染其他进程,保证目标设备系统运行的安全性。需要说明的,该感染源定位算法可以为现有算法,对此不作特殊限定。
[0075] 本申请实施例还提供了一种恶意进程关联处理装置,包括:
[0076] 监测模块,用于对目标设备系统的每一电子设备进行监测,若存在任一进程被感染,将被感染的进程确定为目标进程;
[0077] 确定模块,用于根据所述目标进程对应的历史行为,确定所述目标进程调用的端口信息;
[0078] 编码模块,用于确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),i=1,2,…,n;其中,n为目标进程调用的风险端口的数量,Ai为目标进程调用的第i个风险端口的端口号;
[0079] 第一获取模块,用于获取调用第一个风险端口A1的时间TIME1以及调用第n个风险端口An的时间TIMEn,确定目标时间长度MT=TIMEn‑TIME1+△TIME,其中,△TIME为预设时间长度;
[0080] 第二获取模块,用于每隔预定时间间隔,获取除所述目标进程外的其他待识别进程在当前时刻之前目标时间长度MT内的端口调用信息,所述预定时间间隔小于或等于所述目标时间长度MT;
[0081] 生成模块,用于根据每一所述待识别进程对应的端口调用信息,生成每一所述待识别进程对应的端口调用特征向量YT1,YT2,…,YTx,…,YTy;x=1,2,…,y;其中,y为当前运行的待识别进程的数量,YTx为第x个待识别进程的端口调用特征向量;
[0082] 匹配模块,用于将所述风险端口特征向量T与每一所述端口调用特征向量进行匹配,获取第一目标匹配度列表P=(P1,P2,…,Px,…,Py);其中,Px为T与YTx之间的第一目标匹配度, ;α+β=1,α≤β,Px1为T与YTx之间的向量长度匹配度,Px1=1‑|(Lx‑LT)/LT|,其中,LT为T的向量长度,Lx为YTx的向量长度;Px2为T和YTx的向量特征匹配度,Px2=cos_sim(T,YTx),cos_sim()为预设的余弦相似度确定函数;
[0083] 处理模块,用于将对应第一目标匹配度大于预设匹配度阈值的待识别进程挂起。
[0084] 在本申请的一个实施例中,所述确定所述端口信息中包含的风险端口,并根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An),包括:
[0085] 确定所述端口信息中包含的风险端口的数量;
[0086] 若所述风险端口的数量小于预定数量阈值,则将所述目标进程调用的所述风险端口与其他待识别进程的端口调用信息进行比对,并将端口调用信息中包含了所述目标进程调用的全部风险端口的待识别进程挂起;
[0087] 若所述风险端口的数量大于或等于预定数量阈值,则根据所述风险端口对应的端口号进行编码,得到风险端口特征向量T=(A1,A2,…,Ai,…,An)。
[0088] 对于本申请装置实施例中未披露的细节,请参照本申请上述的恶意进程关联处理方法的实施例。
[0089] 此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0090] 通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD‑ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
[0091] 在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
[0092] 所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
[0093] 根据本申请的这种实施方式的电子设备。电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0094] 电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:上述至少一个处理器、上述至少一个储存器、连接不同系统组件(包括储存器和处理器)的总线。
[0095] 其中,所述储存器存储有程序代码,所述程序代码可以被所述处理器执行,使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种示例性实施方式的步骤。
[0096] 储存器可以包括易失性储存器形式的可读介质,例如随机存取储存器(RAM)和/或高速缓存储存器,还可以进一步包括只读储存器(ROM)。
[0097] 储存器还可以包括具有一组(至少一个)程序模块的程序/实用工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0098] 总线可以为表示几类总线结构中的一种或多种,包括储存器总线或者储存器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
[0099] 电子设备也可以与一个或多个外部设备(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口进行。并且,电子设备还可以通过网络适配器与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器通过总线与电子设备的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0100] 通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD‑ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
[0101] 在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本申请的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本申请各种示例性实施方式的步骤。
[0102] 所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0103] 计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0104] 可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0105] 可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0106] 此外,上述附图仅是根据本申请示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
[0107] 应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0108] 以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。