一种恶意C&C服务器确定方法及装置转让专利

申请号 : CN201611264192.2

文献号 : CN106549980B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周素华张宏斌范敦球叶晓虎史龙安

申请人 : 北京神州绿盟信息安全科技股份有限公司北京神州绿盟科技有限公司

摘要 :

本发明公开了一种恶意C&C服务器确定方法及装置,所述方法包括:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或URL;如果获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;如果获取到URL,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器。用以解决现有技术中面对大量的C&C文件的数据无法有效处理,确定的恶意C&C服务器的准确性无法保证的问题。

权利要求 :

1.一种恶意命令和控制C&C服务器确定方法,其特征在于,所述方法包括:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;

如果获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;

如果获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器;

其中,所述预设的每项操作包括:注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作;

所述URL对应的每个特征参数包括以下参数中的至少一种:

URL的长度、主域名对应的参数、URL中包含字母的随机性、URL中的字符组成方式对应的参数、构成URL的字符串出现的频率。

2.如权利要求1所述的方法,其特征在于,所述方法还包括:

如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。

3.如权利要求2所述的方法,其特征在于,如果获取到IP地址,确定所述C&C文件的评价分值之前,所述方法还包括:判断所述IP地址是否位于所述黑名单中,如果否,进行后续步骤;

如果获取到URL,获取所述URL对应的每个特征参数之前,所述方法还包括:判断所述URL是否位于所述黑名单中,如果否,进行后续步骤。

4.如权利要求1所述的方法,其特征在于,预先训练检测模型的过程包括:针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;

根据每个样本URL是否为恶意URL,如果是,为所述样本URL添加第一标签,否则,为所述样本URL添加第二标签;

将添加标签后的样本URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。

5.如权利要求3所述的方法,其特征在于,所述对所述检测模型进行训练包括:采用支持向量机SVM方法,对所述检测模型进行训练。

6.一种恶意C&C服务器确定装置,其特征在于,所述装置包括:获取识别模块,用于模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;

第一确定模块,用于如果获取识别模块获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;

第二确定模块,用于如果获取识别模块获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器;

其中,所述预设的每项操作包括:注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作;

所述URL对应的每个特征参数包括以下参数中的至少一种:

URL的长度、主域名对应的参数、URL中包含字母的随机性、URL中的字符组成方式对应的参数、构成URL的字符串出现的频率。

7.如权利要求6所述的装置,其特征在于,所述装置还包括:

添加模块,用于如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。

8.如权利要求7所述的装置,其特征在于,所述装置还包括:

判断模块,用于如果获取到IP地址,判断所述IP地址是否位于所述黑名单中,如果判断结果为否,触发所述第一确定模块;如果获取到URL,判断所述URL是否位于所述黑名单中,如果判断结果为否,触发所述第二确定模块。

9.如权利要求6所述装置,其特征在于,所述装置还包括:

训练模块,用于针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;根据每个样本URL是否为恶意URL,如果是,为所述样本URL添加第一标签,否则,为所述样本URL添加第二标签;将添加标签后的样本URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。

说明书 :

一种恶意C&C服务器确定方法及装置

技术领域

[0001] 本发明涉及信息安全技术领域,尤其涉及一种恶意命令和控制(Command  &Control,C&C)服务器确定方法及装置。

背景技术

[0002] 僵尸网络是指采用一种或多种传播手段,将大量主机感染僵尸程序,从而在控制者(C&C服务器)和被感染的主机之间所形成的一个可一对多控制的网络。控制者通过各种途径传播僵尸程序感染互联网上的大量主机,而被感染的主机将通过一个控制信道接收控制者的控制指令,组成一个僵尸网络。C&C 服务器是一种命令和控制服务器,在僵尸网络中C&C服务器用于向被感染的主机发送控制指令,控制被感染的主机对服务器等设备进行分布式拒绝服务 (Distributed Denial of Service,DDOS)攻击,占用服务器很大的资源,对服务器的危害很大,并且还用于控制被感染的主机发送垃圾邮件、窃取被感染的主机的信息、传播恶意软件等。
[0003] 通过对C&C服务器用于对被感染的主机进行控制的C&C文件中关联的IP 地址或统一资源定位符(Uniform Resoure Locator,URL)进行识别,判断该 IP地址或URL是否为恶意的C&C服务器的IP地址或URL,如果是,可以通过该IP地址或URL追踪恶意的C&C服务器,也可以记录所述IP地址或URL,阻挡对应IP地址或URL的C&C服务器对主机进行访问,从而提高主机的安全性。然而现有技术中,对于C&C文件中关联的IP地址或URL是否为恶意的C&C服务器对应的IP或URL的判断是靠人工进行的,效率太低,准确性无法保证,面对大量的C&C文件的数据,无法有效的处理。

发明内容

[0004] 本发明提供一种恶意C&C服务器确定方法及装置,用以解决现有技术中面对大量的C&C文件的数据无法有效处理,效率过低,确定的恶意C&C服务器的准确性无法保证的问题。
[0005] 为达到上述目的,本发明实施例公开了一种恶意C&C服务器确定方法,所述方法包括:
[0006] 模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;
[0007] 如果获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;
[0008] 如果获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器。
[0009] 进一步地,所述方法还包括:
[0010] 如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。
[0011] 进一步地,如果获取到IP地址,确定所述C&C文件的评价分值之前,所述方法还包括:
[0012] 判断所述IP地址是否位于所述黑名单中,如果否,进行后续步骤;
[0013] 如果获取到URL,获取所述URL对应的每个特征参数之前,所述方法还包括:
[0014] 判断所述URL是否位于所述黑名单中,如果否,进行后续步骤。
[0015] 进一步地,所述预设的每项操作包括以下操作中的至少一种:
[0016] 注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作。
[0017] 进一步地,预先训练检测模型的过程包括:
[0018] 针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;
[0019] 根据每个样本URL是否为恶意URL,如果是,为所述样本URL添加第一标签,否则,为所述样本URL添加第二标签;
[0020] 将添加标签后的样本URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。
[0021] 进一步地,所述对所述检测模型进行训练包括:
[0022] 采用支持向量机SVM方法,对所述检测模型进行训练。
[0023] 进一步地,所述URL对应的每个特征参数包括以下参数中的至少一种:
[0024] URL的长度、主域名对应的参数、URL中包含字母的随机性、URL中的字符组成方式对应的参数、构成URL的字符串出现的频率。
[0025] 本发明实施例公开了一种恶意C&C服务器确定装置,所述装置包括:
[0026] 获取识别模块,用于模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;
[0027] 第一确定模块,用于如果获取识别模块获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的 C&C服务器是否为恶意C&C服务器;
[0028] 第二确定模块,用于如果获取识别模块获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C 服务器是否为恶意C&C服务器。
[0029] 进一步地,所述装置还包括:
[0030] 添加模块,用于如果确定C&C服务器为恶意C&C服务器,将获取的所述 C&C文件关联的IP地址或URL添加到黑名单中。
[0031] 进一步地,所述装置还包括:
[0032] 判断模块,用于如果获取到IP地址,判断所述IP地址是否位于所述黑名单中,如果判断结果为否,触发所述第一确定模块;如果获取到URL,判断所述URL是否位于所述黑名单中,如果判断结果为否,触发所述第二确定模块。
[0033] 进一步地,所述装置还包括:
[0034] 训练模块,用于针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;根据每个样本URL是否为恶意URL,如果是,为所述样本URL 添加第一标签,否则,为所述样本URL添加第二标签;将添加标签后的样本 URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。
[0035] 本发明实施例提供了一种恶意C&C服务器确定方法及装置,所述方法包括:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;如果获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;如果获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器。由于在本发明实施例中,通过识别C&C文件存在的预设的多项操作及每项操作对应的权重系数或URL对应的多个特征参数,确定所述IP地址或URL对应的C&C服务器是否为恶意C&C服务器,保证了确定恶意C&C服务器的准确性,并且全程自动化,面对大量的C&C文件的数据可以有效处理,提高了效率。

附图说明

[0036] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0037] 图1为本发明实施例1提供的一种恶意C&C服务器确定过程示意图;
[0038] 图2为本发明实施例2提供的一种恶意C&C服务器确定过程示意图;
[0039] 图3为本发明实施例4提供的一种恶意C&C服务器确定过程示意图;
[0040] 图4为本发明实施例5提供的一种恶意C&C服务器确定装置结构示意图。

具体实施方式

[0041] 为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042] 实施例1:
[0043] 图1为本发明实施例提供的一种恶意C&C服务器确定过程示意图,该过程包括:
[0044] S101:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作,如果获取到IP地址,进行S102,如果获取到URL,进行S103。
[0045] 在本发明实施例中,针对接收到的C&C文件,将所述C&C文件在windows 沙盒中模拟运行,在对所述C&C文件模拟运行的过程中可以使用所述C&C文件的消息摘要算法(Message Digest Algorithm,MD5)值作为所述C&C文件的唯一标识,当所述C&C文件在windows沙盒中模拟运行时,可以通过所述 C&C文件的MD5值识别出所述C&C文件,获取所述C&C文件关联的IP地址或URL,并识别到所述C&C文件在模拟运行的过程中是否存在预设的每项操作,预设的每项操作例如:注册表操作、隐藏活动界面操作等。其中,所述 C&C文件为C&C服务器用来对主机进行控制的文件,所述C&C文件可以是通过安全网关等设备拦截的C&C文件。
[0046] 在本发明实施例中,模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或URL是现有技术,在本发明实施例中不再进行赘述。
[0047] S102:根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器。
[0048] 在本发明实施例中,可以将C&C文件对主机进行感染,或对主机进行控制时存在的每项操作作为预设的每项操作,并根据每项操作给主机的安全带来威胁的程度不同,设定不同的权重系数。例如:C&C文件对主机进行感染和控制时,通常存在进行用户信息收集操作,而用户信息的泄漏会给主机安全带来严重威胁,很容易给用户带来严重损失,可以针对用户信息收集操作设置较高的权重系数。
[0049] 具体的,如果模拟运行C&C文件获取到该C&C文件关联的IP地址,根据获取到的所述C&C文件模拟运行时存在的预设的每项操作及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器。其中,可以根据对恶意C&C服务器确定需求设定分值阈值,当对安全性需求严格时,可以设定一个较小的分数阈值,当对安全性需求较为宽松时,可以设定一个较高的分数阈值。
[0050] 例如:模拟运行接收到的C&C文件,获取到该C&C文件关联的IP地址,该C&C文件运行时存在注册表操作、浏览器操作和用户信息收集操作,分别对应的权重系数为5、20、20,则确定该C&C文件的评价分值为45,如果大于预先设定的分值阈值,则确定所述IP地址对应的C&C服务器为恶意C&C 服务器。
[0051] S103:根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器。
[0052] 通常恶意C&C服务器对应的C&C文件被用来对主机进行感染或者对主机进行控制等恶意行为,为了防止被网络安全员追踪,通常使用的URL都是随机生成的,该URL没有任何规律,而正常的URL通常是由简单好记的中文拼音或者英文单词组成,并且重复的字母较多,便于识别和记忆。因此可以根据所述URL中的每个字节通过对URL的特征参数进行识别,判断该URL对应的C&C服务器是否为恶意C&C服务器,例如该特征参数可以是URL是否由英文单词或者中文拼音组成,URL中每个字母出现的概率等。
[0053] 具体的,在本发明实施例中,预先对检测模型进行训练,并且在对检测模型进行训练时,也是根据训练集中每个样本URL的每个字节及预设的特征向量,获取的样本URL对应的特征向量中的每个特征参数,根据样本URL对应的特征向量对检测模型训练完成的。训练完成的检测模型,可以根据输入的 URL对应的特征向量,确定URL对应的URL是否为恶意URL,从而确定所述URL对应的C&C服务器是否为恶意C&C服务器。
[0054] 由于在本发明实施例中,通过识别C&C文件存在的预设的多项操作及每项操作对应的权重系数或URL对应的多个特征参数,确定所述IP地址或URL 对应的C&C服务器是否为恶意C&C服务器,保证了确定恶意C&C服务器的准确性,并且全程自动化,面对大量的C&C文件的数据可以有效处理,提高了效率。
[0055] 实施例2:
[0056] 在上述各实施例的基础上,在本发明实施例中,为了便于对恶意C&C服务器进行防护与追踪操作,所述方法还包括:
[0057] 如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。
[0058] 具体的,如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C 文件关联的IP地址或URL添加到黑名单中。黑名单中保存的恶意C&C服务器对应IP地址或URL可以被技术人员用来追踪恶意C&C服务器,也可以用来作为安全防护使用,拒绝与所述黑名单中保存的IP地址或URL相符的C&C 服务器进行数据的传输。
[0059] 为了提高恶意C&C服务器确定效率,在上述各实施的基础上,如果获取到IP地址,确定所述C&C文件的评价分值之前,所述方法还包括:
[0060] 判断所述IP地址是否位于所述黑名单中,如果否,进行后续步骤;
[0061] 如果获取到URL,获取所述URL对应的每个特征参数之前,所述方法还包括:
[0062] 判断所述URL是否位于所述黑名单中,如果否,进行后续步骤。
[0063] 具体的,如果接收到的所述C&C文件关联的IP地址或者URL已经在所述黑名单中保存,则说明所述IP地址或者URL对应的C&C服务器为恶意服务器,为了提高效率,对已经在所述黑名单中保存的IP地址不进行后续确定所述IP地址对应的C&C服务器是否为恶意C&C服务器的步骤,对于已经在所述黑名单中保存的URL不进行后续确定所述URL对应的C&C服务器是否为恶意C&C服务器的步骤。
[0064] 另外,为了提高效率,也可以将关联的IP地址或URL对应的C&C服务器为恶意C&C服务器的C&C文件的MD5值,保存到所述黑名单中,当接收到C&C文件后,首先确定该C&C文件对应的MD5值是否保存在黑名单中,如果是,则说明该C&C文件为恶意C&C服务器的C&C文件,并且该恶意C&C 服务器对应的IP地址或URL已经保存在所述黑名单中,无需进行后续获取该 C&C文件关联的IP地址或URL,并对该IP地址或URL对应的C&C服务器是否为恶意C&C服务器进行判断的过程。如果否,则说明该C&C文件对应的 IP地址或URL未保存在所述黑名单中,获取该C&C文件关联的IP地址或 URL,并对该IP地址或URL对应的C&C服务器是否为恶意C&C服务器进行判断。
[0065] 图2为本发明实施例提供的一种恶意C&C服务器确定过程示意图,该过程包括:
[0066] S201:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作,如果获取到IP地址,进行S202,如果获取到URL,进行S204。
[0067] S202:判断所述IP地址是否位于所述黑名单中,如果否,进行S203,如果是,确定所述IP地址对应的C&C服务器为恶意C&C服务器。
[0068] S203:根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器,如果是,进行S206,如果否,结束。
[0069] S204:判断所述URL是否位于所述黑名单中,如果否,进行S205,如果是,确定所述URL对应的C&C服务器为恶意C&C服务器。
[0070] S205:根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及由所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器,如果是,进行S206,如果否,结束。
[0071] S206:将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。
[0072] 实施例3:
[0073] 为了提高对恶意C&C服务器确定的准确性,在上述各实施例的基础上,在本发明实施例中,所述预设的每项操作包括以下操作中的至少一种:
[0074] 注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作。
[0075] 具体的,恶意C&C服务器的C&C文件,通常会存在注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作中的一种或者多种,从而改变主机设置,实现对主机的控制,对用户信息的收集等。在本发明实施例中,针对恶意C&C 服务器的C&C文件在模拟运行时可能存在的每项操作,及每项操作给主机安全带来的威胁程度,对每项操作设定权重系数,通过C&C文件模拟运行时存在的每项操作的权重系数之和,确定该C&C文件的评价分值,从而确定所述 IP地址对应的C&C服务器是否为恶意C&C服务器。
[0076] 表1为本发明实施例提供的每项操作对应的权重系数的信息,其中C1、 C2、C3、C4、C5、C6、C7、C8为注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作对应的权重系数。并且注册表操作、禁用或隐藏操作、部署调用工具操作、网络连接操作、隐藏活动界面操作、其他进程操作、浏览器操作和用户信息收集操作对应的威胁等级为低、中、中、低、中、高、高、高。权重系数的取值与威胁等级相关,威胁等级为低对应的权重系数为5、威胁等级为中对应的权重系数为10、威胁等级为高对应的权重系数为20。
[0077]
[0078] 表1
[0079]
[0080]
[0081] 表2
[0082] 表2为本发明实施例提供的对每项操作的说明信息。具体的,当模拟运行 C&C文件时,如果存在对已有文件注册表关联程序进行修改,则确定存在注册表操作;如果存在禁用注册表、任务管理器、文件夹选项、禁用系统或隐藏文件的显示开关等,则确定存在禁用或隐藏操作;如果存在生成类似于系统文件的文件,修改自身文件名或者删除自身文件,则确定存在部署调用工具操作,如果存在网络连接行为,则确定存在网络连接操作;如果存在调用系统组建隐藏运行窗口和及任务栏和工具栏提示,则确定存在隐藏活动界面操作;如果存在有关闭其他进程操作,或者启动其他进程操作,例如关闭防火墙、杀毒软件,则确定存在其他进程操作;如果存在强制修改浏览器默认访问网站,擅自添加、删除、修改用户查用网站则确定存在浏览器操作;如果未明确提示用户就收集用户信息,则确定存在用户信息收集操作。
[0083] 具体的,在模拟运行C&C文件时,如果存在注册表操作,则注册表操作对应的B1取值为1,否则为0;如果存在禁用或隐藏操作,则禁用或隐藏操作对应的B2取值为1,否则为0;如果存在部署调用工具操作,则部署调用工具操作对应的B3取值为1,否则为0;如果存在网络连接操作,则网络连接操作对应的B4取值为1,否则为0;如果存在隐藏活动界面操作,则隐藏活动界面操作对应的B5取值为1,否则为0;如果存在其他进程操作,则其他进程操作对应的B6取值为1,否则为0;如果存在浏览器操作,则浏览器操作对应的 B7取值为1,否则为
0;如果存在用户信息收集操作,则用户信息收集操作对应的B8取值为1,否则为0。
[0084] 对于C&C文件的评价分值可以通过公式:
[0085] credit=B1*C1+B2*C2+B3*C3+B4*C4+B5*C5+B6*C6+B7*C7+B8*C8进行计算,确定该C&C文件的的评价分值,其中分值(credit)即为C&C文件的评价分值。
[0086] 例如:模拟运行C&C文件,存在禁用或隐藏操作、其他进程操作、浏览器操作,则禁用或隐藏操作、其他进程操作、浏览器操作对应B2、B6、B7取值为1,其他B1、B3、B4、B5、B8取值为0,已知C1、C2、C3、C4、C5、 C6、C7、C8对应的权重系数为5、10、10、5、10、20、20、20,该C&C文件对应的评价分值credit=0*5+1*10+0*10+0*5+0*10+1*20+1*20+0*20,计算得出C&C文件对应的评价分值credit为50。
[0087] 为了提高对恶意C&C服务器确定的准确性,在上述各实施例的基础上,在本发明实施例中,所述URL对应的每个特征参数包括以下参数中的至少一种:
[0088] URL的长度、主域名对应的参数、URL中包含字母的随机性、URL中的字符组成方式对应的参数、构成URL的字符串出现的频率。
[0089] 如果C&C文件关联的URL是恶意C&C服务器的URL,为了防止被追踪通常使用的URL都是随机生成的。在本发明实施例中所述URL的长度,即为该URL对应字节的长度;所述主域名对应的参数即为所述URL中对应的一级域名的信息,例如com、cn等,具体的可以针对每个一级域名设置一个唯一标识,例如com对应00001,cn对应00010。
[0090] 所述URL中包含字母的随机性可以通过香农熵公式 来计算,其中pi表示URL中每个字母出现的概率,n为URL中包含字母的数量、entropy为该URL中包含字母的随机性;通过香农熵公式公式进行计算的过程是现有技术,在本发明实施例中对该过程不再进行赘述。
[0091] URL中的字符组成方式对应的参数,即URL中对应的主机名是否为英文单词或中文拼音组成,具体的,可以提取URL中的主机名和主机名词典中保存的英文单词或中文拼音进行匹配,如果匹配成功,则确定URL中对应的主机名为英文单词或中文拼音组成,否则,确定URL中对应的主机名不为英文单词或中文拼音组成,其中主机名词典中保存有所有英文单词和中文拼音。由英文单词或中文拼音组成,对应的参数可以设置为1,不为英文单词或中文拼音组成,对应的参数可以设置为0。
[0092] 构成URL的字符串出现的频率,可以根据URL中每个单字(unigram)、相邻双字(bigram)、相邻三字(trigram),通过n-gram算法得出构成URL的字符串出现的频率。在本发明实施例中,每个单字(unigram)、相邻双字 (bigram)、相邻三字(trigram),通过n-gram算法得出字符串出现的频率的过程是现有技术,在本发明实施例中对该过程不再进行赘述。
[0093] 实施例4:
[0094] 在本发明实施例中检测模型是根据训练集中每个样本URL得到的,预先训练检测模型的过程包括:
[0095] 针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;
[0096] 根据每个样本URL是否为恶意URL,如果是,为所述样本URL添加第一标签,否则,为所述样本URL添加第二标签;
[0097] 将添加标签后的样本URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。
[0098] 具体的,训练集中包含大量的已知是恶意C&C服务器对应的URL和已知是非恶意C&C服务器对应的URL。具体的,在本发明实施例中对训练集中每个样本URL的特征参数的获取与上述实施3中对URL中特征参数的获取过程相同。针对训练集中每个样本URL,获取该样本URL对应的每个特征参数,并根据该样本URL是否为恶意C&C服务器对应的URL,如果是,为该样本 URL添加第一标签,否则,为该样本URL添加第二标签,将添加标签后的样本URL及所述每个特征参数构成的特征向量,输入到检测模型中,对检测模型进行训练。对检测模型进行训练的过程是现有技术,在本发明实施例中对该过程不再进行赘述。
[0099] 在本发明实施例中,对所述检测模型进行训练包括:
[0100] 采用支持向量机(Support Vector Machine,SVM)方法,对所述检测模型进行训练。
[0101] 其中使用SVM进行训练的主要过程如下:超平面:WT*X+b=0,WT*X+b 记为y,其中,X就是抽象的每一条记录的特征向量,W,b是待求参数; WT*Xi+b>=0或WT*Xi+b<=-1,这里yi可以归一化为1,-1;最大优化这两个超平面的距离即: 引入系数ai,便于计算优* *
化算法,通过 aiyi *(w*xi+b=0求出ai, 直至未
知变量收敛,即可求出待求参数,最终训练结束。使用SVM方法,对模型进行训练的过程属于现有技术,在本发明实施例中对该过程不再进行赘述。
[0102] 图3为本发明实施例提供的一种恶意C&C服务器确定过程示意图,对于每个C&C文件,获取该C&C文件关联的是IP地址或URL,如果关联的是IP 地址,确定该C&C文件的评价分值,根据该C&C文件的评价分值确定所述IP 地址对应的C&C服务器是否为恶意C&C服务器,如果是,将所述IP地址保存到黑名单中;并且预先针对URL训练完成了检测模型,检测模型所使用的样本URL为获取的恶意C&C服务器对应的样本URL和非恶意C&C服务器对应的样本URL,根据样本URL的特征向量对检测模型进行训练,如果关联的是URL,获取该URL的特征向量通过检测模型,确定所述URL对应的C&C 服务器是否为恶意C&C服务器,如果是,将所述URL保存到黑名单中。并可以按照设定时间将黑名单中保存的恶意C&C服务器的URL或IP地址备份到数据库中。
[0103] 实施例5:
[0104] 图4为本发明实施例提供的一种恶意C&C服务器确定装置结构示意图,该装置包括:
[0105] 获取识别模块41,用于模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;
[0106] 第一确定模块42,用于如果获取识别模块获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的 C&C服务器是否为恶意C&C服务器;
[0107] 第二确定模块43,用于如果获取识别模块获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C 服务器是否为恶意C&C服务器。
[0108] 所述装置还包括:
[0109] 添加模块44,用于如果确定C&C服务器为恶意C&C服务器,将获取的所述C&C文件关联的IP地址或URL添加到黑名单中。
[0110] 所述装置还包括:
[0111] 判断模块45,用于如果获取到IP地址,判断所述IP地址是否位于所述黑名单中,如果判断结果为否,触发所述第一确定模块;如果获取到URL,判断所述URL是否位于所述黑名单中,如果判断结果为否,触发所述第二确定模块。
[0112] 所述装置还包括:
[0113] 训练模块46,用于针对训练集中每个样本URL,获取该样本URL对应的每个特征参数;根据每个样本URL是否为恶意URL,如果是,为所述样本URL 添加第一标签,否则,为所述样本URL添加第二标签;将添加标签后的样本 URL及所述每个特征参数构成的特征向量,输入到检测模型中,对所述检测模型进行训练。
[0114] 本发明实施例公开了一种恶意C&C服务器确定方法及装置,所述方法包括:模拟运行接收到的C&C文件,获取所述C&C文件关联的IP地址或统一资源定位符URL,并识别所述C&C文件是否存在预设的每项操作;如果获取到IP地址,根据获取到的所述C&C文件是否存在预设的每项操作,及存在每项操作时对应的权重系数,确定所述C&C文件的评价分值,根据所述评价分值,确定所述IP地址对应的C&C服务器是否为恶意C&C服务器;如果获取到URL,根据所述URL中的每个字节及预设的特征向量,获取所述URL对应的特征向量中的每个特征参数,根据预先训练完成检测模型及所述特征向量,确定所述URL对应的C&C服务器是否为恶意C&C服务器。由于在本发明实施例中,通过识别C&C文件存在的预设的多项操作及每项操作对应的权重系数或URL对应的多个特征参数,确定所述IP地址或URL对应的C&C服务器是否为恶意C&C服务器,保证了确定恶意C&C服务器的准确性,并且全程自动化,面对大量的C&C文件的数据可以有效处理,提高了效率。
[0115] 对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0116] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0117] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0118] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0119] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0120] 尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0121] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。