一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种域名检测方法、系统、设备及计算机可读存储介质与流程

2022-03-16 14:08:20 来源:中国专利 TAG:


1.本技术涉及网络安全技术领域,更具体地说,涉及一种域名检测方法、系统、设备及计算机可读存储介质。


背景技术:

2.在服务器等设备的运行过程中,攻击者会对设备进行攻击,比如通过僵尸网络等对设备进行攻击,僵尸网络指采用一种或多种传播手段,将大量主机感染bot程序(僵尸程序)病毒,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。因为网络的定位访问可以借助域名实现,域名(domain name)又称网域,是由一串用点分隔的名字组成的internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识,所以用户可能访问僵尸网络域名,也即僵尸网络的域名,而受到僵尸网络的攻击,因此,为了保护设备安全,便需要对僵尸网络等的域名进行检测,以便基于相应的域名进行安全防护。
3.比如可以通过对沙箱释放流量的异常进行分析来提取出恶意域名,但受限于沙箱环境以及样本本身对抗手段,如加壳、代码混淆、执行环节检查等方式,会使得沙箱对于文件样本的流量释放情况不准确,从而无法准确对域名进行检测。
4.综上所述,如何提高域名检测的准确性是目前本领域技术人员亟待解决的问题。


技术实现要素:

5.本技术的目的是提供一种域名检测方法,其能在一定程度上解决如何提高域名检测的准确性的技术问题。本技术还提供了一种域名检测系统、电子设备及计算机可读存储介质。
6.为了实现上述目的,本技术提供如下技术方案:
7.一种域名检测方法,包括:
8.确定各个目标设备访问的各个目标域名;
9.对所述目标域名进行聚合,得到各类目标聚合域名;
10.确定各类所述目标聚合域名的目标文法特征及目标时序特征;
11.基于所述目标文法特征和所述目标时序特征检测所述目标域名是否为僵尸网络域名,得到对应的检测结果。
12.优选的,所述对所述目标域名进行聚合,得到各类目标聚合域名,包括:
13.将顶级域名相同的所述目标域名聚合在一起,得到各类初始聚合域名;
14.将各个所述初始聚合域名中各级域名长度相同的所述目标域名聚合在一起,得到所述目标聚合域名。
15.优选的,所述确定各类所述目标聚合域名的目标文法特征,包括:
16.按照预设分割符,对所述目标聚合域名中各个所述目标域名中二级以上域名进行分割,得到各个所述目标域名对应的各个目标字符串;
17.对各个所述目标域名的所述目标字符串进行文法模式提取,得到所述目标聚合域名对应的所述目标文法特征。
18.优选的,所述对各个所述目标域名的所述目标字符串进行文法模式提取,得到所述目标聚合域名对应的所述目标文法特征,至少包括如下处理方式之一:
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.一种电子设备,包括:
44.存储器,用于存储计算机程序;
45.处理器,用于执行所述计算机程序时实现如上任一所述域名检测方法的步骤。
46.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述域名检测方法的步骤。
47.本技术提供的一种域名检测方法,确定各个目标设备访问的各个目标域名;对目标域名进行聚合,得到各类目标聚合域名;确定各类目标聚合域名的目标文法特征及目标时序特征;基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。本技术中,可以对目标域名进行聚合,得到各类目标聚合域名,使得相似的域名可以聚合在一起,后续确定各类目标聚合域名的目标文法特征及目标时序特征的话,相当于确定一组相似的目标域名的文法特征及时序特征,最后再基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果的话,相当于根据一组相似的域名的文法特征及时序特征来检测域名是否为僵尸网络域名,实现了基于僵尸网络域名的自身特征来对僵尸网络域名进行检测,而现有通过对沙箱释放流量的异常进行分析来提取出恶意域名的方式,相当于根据访问域名的异常结果来对僵尸网络域名进行检测,因为僵尸网络域名的自身特征不会发生变化,而访问僵尸网络域名的结果可能并不会被检测出异常,所以本技术基于僵尸网络域名的自身特征进行检测的话,能够提高僵尸网络域名的检测准确性。本技术提供的一种域名检测系统、设备及计算机可读存储介质也解决了相应技术问题。
附图说明
48.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
49.图1为本技术实施例提供的域名检测方案的应用场景图;
50.图2为本技术实施例提供的一种域名检测方法的流程图;
51.图3为本技术实施例提供的一种域名检测方法的另一流程图;
52.图4为本技术实施例提供的一种域名检测方法中目标文法特征的提取示意图;
53.图5为本技术实施例提供的一种域名检测方法中僵尸网络域名的检测流程图;
54.图6为本技术实施例提供的一种域名检测系统的结构示意图;
55.图7为本发明实施例电子设备的硬件组成结构示意图。
具体实施方式
56.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.在服务器等设备的运行过程中,攻击者会对设备进行攻击,比如通过僵尸网络等对设备进行攻击,僵尸网络指采用一种或多种传播手段,将大量主机感染bot程序(僵尸程序)病毒,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。因为网络的定位访问可以借助域名实现,域名(domain name)又称网域,是由一串用点分隔的名字组成的internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识,所以用户可能访问僵尸网络域名,也即僵尸网络的域名,而收到僵尸网络的攻击,因此,为了保护设备安全,便需要对僵尸网络等的域名进行检测,以便基于相应的域名进行安全防护。比如可以通过对沙箱释放流量的异常进行分析来提取出恶意域名,但受限于沙箱环境以及样本本身对抗手段,如加壳、代码混淆、执行环节检查等方式,会使得沙箱对于文件样本的流量释放情况不准确,从而无法准确对域名进行检测。本技术提供的域名检测方案可以提高僵尸网络域名的检测准确性。
58.本技术的域名检测方案中,采用的系统框架具体可以参见图1所示,具体可以包括:后台服务器01和与后台服务器01建立通信连接的若干数量的用户端02。需要说明的是,后台服务器可以为专门用于域名检测的服务器,用户端可以为用户使用的服务器、终端设备等,本技术在此不做具体限定。
59.本技术中,后台服务器01用于执行域名检测方法步骤,包括确定各个目标设备访问的各个目标域名;对目标域名进行聚合,得到各类目标聚合域名;确定各类目标聚合域名的目标文法特征及目标时序特征;基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
60.进一步的,后台服务器01中还可以设有访问记录数据库、域名数据库、文法特征数据库及时序特征数据库、僵尸网络域名数据库等。其中,访问记录数据库用于保存获取的各个目标设备对各个目标域名的访问信息,域名数据库用户保存各类目标聚合域名,文法特征数据库用于保存各类目标聚合域名的目标文法特征,时序特征数据库用于保存各类目标聚合域名的目标时序特征,僵尸网络域名数据库用于保存被检测为僵尸网络域名的目标域名等。本技术中,后台服务器01可以对一个或多个用户端02的域名检测请求进行响应,可以理解的是,本技术不同的用户端02所发起的域名检测请求,可以是针对同一域名的检测请求,也可以是针对不同域名的检测请求等。
61.需要说明的是,本技术提供的域名检测方法还可以应用在其他场景中,比如可以
直接应用在沙箱中对域名进行检测;或者以软件客户端的形式运行在设备中,对设备访问的域名进行域名检测等;本技术在此不做具体限定。
62.请参阅图2,图2为本技术实施例提供的一种域名检测方法的流程图。
63.本技术实施例提供的一种域名检测方法,可以包括以下步骤:
64.步骤s101:确定各个目标设备访问的各个目标域名。
65.实际应用中,可以先确定各个目标设备访问的各个目标域名,具体的,可以通过防火墙流量监控获取各个目标设备在各个时间段下的dns访问流量,根据dns访问流量确定各个目标设备访问的各个目标域名等。
66.需要说明的是,dns访问流量中可以包括设备id(dev_id)、源ip(sip)、目的ip(dip)、目的端口(dport)、时间戳(timestamp)、dns请求内容(queries)、dns请求类型(qtype)、dns返回结果(rdata)等信息,其可以根据实际需要灵活确定,相应的,在区分各个目标设备时,可以直接根据设备id及源ip进行区分等,而在根据dns访问流量确定各个目标设备访问的各个目标域名的过程中,可以对dns访问流量进行过滤,只保留dns请求类型为合法域名且dns请求类型为1的目标dns访问流量,在从目标dns中提取出目标设备及其所访问的目标域名等,其中,合法域名为满足域名规则的域名等,本技术在此不做具体限定。
67.步骤s102:对目标域名进行聚合,得到各类目标聚合域名。
68.实际应用中,因为僵尸网络域名间存在共性,所以在对域名的检测过程中,可以对目标域名进行聚合,得到具有相同特征的各类目标聚合域名,以便后续基于目标聚合域名分析目标域名是否为僵尸网络域名。
69.具体应用场景中,在对目标域名进行聚合,得到各类目标聚合域名的过程中,可以将顶级域名相同的目标域名聚合在一起,得到各类初始聚合域名;将各个初始聚合域名中各级域名长度相同的目标域名聚合在一起,得到目标聚合域名。
70.为了便于理解,假设目标域名为[a.1.com,b.2.com,c.3.cn,d.4.cn,e.5.net],则按照顶级域名进行聚合后得到的各类初始聚合域名为:{com:[a.1.com,b.2.com],cn:[c.3.cn,d.4.cn],net:[e.5.net]};而在将各个初始聚合域名中各级域名长度相同的目标域名聚合在一起,得到目标聚合域名的过程中,只有相同等级且长度相同的域名也会被聚合在一起形成目标聚合域名,假设初始聚合域名为{com:[a.1.com,bb.22.com,cc.33.com,d.4.com],cn:[cc.3.cn,dd.4.cn]},则目标聚合域名便为:{com:{1.1.com:[a.1.com,d.4.com],2.2.com:[bb.22.com,cc.33.com]},cn:{2.1.com:[cc.3.cn,dd.4.cn]}}。
[0071]
步骤s103:确定各类目标聚合域名的目标文法特征及目标时序特征。
[0072]
步骤s104:基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
[0073]
实际应用中,僵尸域名的文法特征和时序特征具有共性,所以在对目标域名进行聚合,得到各类目标聚合域名之后,可以确定各类目标聚合域名的目标文法特征及目标时序特征,并基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
[0074]
需要说明的是,在拿到一个域名之后,因为不知道僵尸网络域名的信息,所以无法直接进行僵尸域名识别,比如一个域名为777.abc.com,是无法直接确定其是否为僵尸网络域名的,所以需借助域名检测技术来对其进行检测,比如通过在沙箱中模拟访问该域名的
结果是否异常来进行域名识别,比如访问该域名后的结果出现访问僵尸网络域名对应的异常,则认为此域名为僵尸网络域名,但某些僵尸网络的访问结果并不异常,比如访问僵尸网络域名的结果为发送了心跳流量,此结果会被沙箱认定为正常,沙箱便无法将其检测出来,但该僵尸网络域名生成后,其文法特征便固定不变,且目标设备访问该僵尸网络域名的时序特征会贴合僵尸网络的攻击模式,比如目标设备持续访问该僵尸网络域名等,所以可以基于目标域名的目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
[0075]
需要说明的是,本技术中的文法特征(grammatical features)是指描述一行字符串序列中字符与字符之间关系的特征,常用于语法分析与语义分析,描述字符串序列的某维度的特性;时间序列(temporal sequences)是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列,所以在确定目标域名的目标时间序列的过程中,可以先确定各个目标设备访问目标域名的时间信息,在将同一目标设备访问目标域名的所有时间戳聚合在一起,便可以得到该目标设备对目标域名的时间序列,在对该时间序列进行分析,便可以得到对应的目标时序特征,比如目标设备a访问目标域名a的时间序列为[1s、3s、5s],也即目标设备a在统计时刻之后的1s、3s及5s时均访问了目标设备a,则可以将目标设备a访问目标域名a的目标时序特征确定为:每2s访问一次等;具体的时序特征及相应的确定方式可以根据实际需要确定,本技术在此不做具体限定。
[0076]
具体应用场景中,为了进一步保证检测出的僵尸网络域名的准确性,在基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果之后,还可以基于预设的中文词法库及白域名库,对域名进行降误报处理,具体的,若目标域名被检测为僵尸网络域名,且基于中文词法库检测出目标域名并非由全部中文词语构成,且目标域名不属于白域名库,则可以将该目标域名确定为僵尸网络域名,相应的,若目标域名被检测为僵尸网络域名,且基于中文词法库检测出目标域名由全部中文词语构成,或目标域名属于白域名库,则可以将该目标域名的检测结果更改为非僵尸网络域名;其中,中文词法库也即存储中文词法的词法库,白域名库为存储安全域名的域名库。比如存储有icp备案的域名、有主站网络的域名、常见的功能性域名等,其中,常见的功能性域名可以为ntp类、查询自我ip类、微软类等域名。也即若检测结果为僵尸网络域名的域名出现在白域名库中,则可以将该域名的检测结果调整为非僵尸网络域名等。
[0077]
本技术提供的一种域名检测方法,确定各个目标设备访问的各个目标域名;对目标域名进行聚合,得到各类目标聚合域名;确定各类目标聚合域名的目标文法特征及目标时序特征;基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。本技术中,可以对目标域名进行聚合,得到各类目标聚合域名,使得相似的域名可以聚合在一起,后续确定各类目标聚合域名的目标文法特征及目标时序特征的话,相当于确定一组相似的目标域名的文法特征及时序特征,最后再基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果的话,相当于根据一组相似的域名的文法特征及时序特征来检测域名是否为僵尸网络域名,实现了基于僵尸网络域名的自身特征来对僵尸网络域名进行检测,扩充了僵尸网络域名的检测方式,而现有通过对沙箱释放流量的异常进行分析来提取出恶意域名的方式,相当于根据访问域名的异常结果来对僵尸网络域名进行检测,因为僵尸网络域名的自身特征不会发生变化,而访问僵
尸网络域名的结果可能并不会被检测出异常,所以本技术基于僵尸网络域名的自身特征进行检测的话,能够提高僵尸网络域名的检测准确性。
[0078]
请参阅图3,图3为本技术实施例提供的一种域名检测方法的另一流程图。
[0079]
本技术实施例提供的一种域名检测方法,可以包括以下步骤:
[0080]
步骤s201:确定各个目标设备访问的各个目标域名。
[0081]
步骤s202:将顶级域名相同的目标域名聚合在一起,得到各类初始聚合域名。
[0082]
步骤s203:将各个初始聚合域名中各级域名长度相同的目标域名聚合在一起,得到目标聚合域名。
[0083]
步骤s204:以“.”为分隔符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个字符串信息。
[0084]
步骤s205:若字符串信息中包含其他分割符,则按照其他分割符对字符串信息进行分割,得到目标字符串;若字符串信息中不包含其他分割符,则直接将字符串信息作为目标字符串。
[0085]
实际应用中,在确定各类目标聚合域名的目标文法特征的过程中,因为域名的文法特征体验在域名的字符串中,所以可以按照预设分割符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个目标字符串;再对各个目标域名的目标字符串进行文法模式提取,得到目标聚合域名对应的目标文法特征。
[0086]
实际应用中,预设分割符的类型可以根据实际需要确定,比如因为域名的各个级别间是以“.”为分隔符的,而各级域名所对应的字符串反映了域名的文法特征,比如域名bb.22.com的第二级域名为纯数字,第三级域名为纯字母,所以在按照预设分割符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个目标字符串的过程中,可以先以“.”为分隔符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个字符串信息;具体的,因为目标域名可以是由多个字符拼接而成的,比如目标域名为server-111.abc.com,此时,按照“.”分割后得到的各个字符串信息为server-111、abc,而server-111是由字符和分隔符组成的,文法特征并非最细,此时,可以在对其进行分割,以得到最小单位的目标字符串,进而得到最细粒度的文法特征,也即若字符串信息中包含其他分割符,则按照其他分割符对字符串信息进行分割,得到目标字符串;若字符串信息中不包含其他分割符,则直接将字符串信息作为目标字符串。此时,本技术中的预设分割符是由“.”和其他分割符组成的。
[0087]
需要说的是,其他分隔符的类型可以根据实际需要确定,比如可以为
“‑”
、“/”等,本技术在此不做具体限定。
[0088]
步骤s206:对各个目标域名的目标字符串进行文法模式提取,得到目标聚合域名对应的目标文法特征。
[0089]
步骤s207:确定各类目标聚合域名的目标时序特征。
[0090]
步骤s208:基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
[0091]
请参阅图4,图4为本技术实施例提供的一种域名检测方法中目标文法特征的提取示意图。
[0092]
本技术实施例提供的一种域名检测方法,在对各个目标域名的目标字符串进行文
法模式提取,得到目标聚合域名对应的目标文法特征的过程中,可以具体执行以下步骤:
[0093]
步骤s301:若目标字符串所有字符均是数字,则将目标字符串的文法特征标记为:数字个数与预设字符的组合。
[0094]
实际应用中,在得到目标字符串之后,若目标字符串所有字符均是数字,则可以将目标字符串的文法特征标记为:数字个数与预设字符的组合。假设表征目标字符串为纯数字的预设字符为*,则内容为194820的目标字符串的文法特征可以标记为:6*等。
[0095]
步骤s302:若目标字符串中字符为单词或目标字符串的长度小于第一预设值,则将目标字符串的文法特征标记为:目标字符串。
[0096]
实际应用中,在得到目标字符串之后,若目标字符串中字符为单词或目标字符串的长度小于第一预设值,则可以将目标字符串的文法特征标记为:目标字符串。也即可以直接将目标字符串作为相应的文法特征,假设目标字符串为keyword,则目标字符串的文法特征便为keyword等。此外,第一预设值可以根据实际需要确定,比如可以为6等,此时目标字符串为长度小于6的非字符串时,也可以直接将目标字符串作为对应的文法特征,比如目标字符串为yyds,则可以直接将yyds作为该目标字符串的文法特征等。
[0097]
步骤s303:若目标字符串中的字符非单词且目标字符串的长度大于等于第一预设值,则将目标字符串的文法特征标记为:目标字符串的字符个数值。
[0098]
实际应用中,在得到目标字符串之后,若目标字符串中的字符非单词且目标字符串的长度大于等于第一预设值,则将目标字符串的文法特征标记为:目标字符串的字符个数值。为便于理解,假设目标字符串为abcdefg,则目标字符串的文法特征可以为7,需要说明的是,此时的文法特征并未携带预设字符,所以可以将未带预设字符的文法特征解析为字符非单词且长度大于等于第一预设值的目标字符串的文法特征。
[0099]
步骤s304:将目标域名对应的目标字符串的文法特征与目标域名的顶级域名相组合,得到目标域名的目标文法特征。
[0100]
实际应用中,在得到目标字符串的文法特征之后,便可以将目标域名对应的目标字符串的文法特征与目标域名的顶级域名相组合,得到目标域名的目标文法特征。以目标字符串为194820.com为例,目标文法特征便为6*.com;以目标字符串为keyword.com为例,目标文法特征便为keyword.com;以目标字符串为abcdefg.com为例,目标文法特征便为7.com等。
[0101]
请参阅图5,图5为本技术实施例提供的一种域名检测方法中僵尸网络域名的检测流程图。
[0102]
本技术实施例提供的一种域名检测方法中,在基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名的过程中,可以执行以下步骤:
[0103]
步骤s401:将相同目标文法特征对应的目标域名进行聚合,得到各类文法聚合域名。
[0104]
实际应用中,在基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名的过程中,可以先将相同目标文法特征对应的目标域名进行聚合,得到各类文法聚合域名。为例便于理解,假设目标域名为ancdeq.1fdwrt.com、1jfhqk.jfuqpo.com、server-111.abc.com、server-123.abc.com,则各类文法聚合域名可以为{6.6.com:[ancdeq.1fdwrt.com,1jfhqk.jfuqpo.com],server-3*.abc.com:[server-111.abc.com,
server-123.abc.com]}。
[0105]
需要说明的是,因为僵尸网络域名是批量生成的,所以能够反映僵尸网络域名的一类文法聚合域名中会包含多个域名,比如6.6.com的文法聚合域名中会包含13个域名等,所以在将相同目标文法特征对应的目标域名进行聚合,得到各类文法聚合域名之后,还可以先基于文法聚合域名中的域名数量来初步进行僵尸网络域名筛选,以便提高方法运行效率,具体的,可以将域名数量小于目标数值的文法聚合域名剔除掉,比如将域名数量小于10个的文法聚合域名给剔除掉,只对域名数量大于等于目标数值的文法聚合域名进行后续操作等,本技术在此不做具体限定。
[0106]
步骤s402:将每类文法聚合域名中二级域名相同且为确认单词的目标域名聚合在一起,得到各类第一文法子聚合域名,若第一文法子聚合域名对应的目标时序特征表征二级域名下属的所有三级域名模式至少在第一预设数量个目标设备上出现,则确定第一文法子聚合域名对应的目标域名为僵尸网络域名。
[0107]
实际应用中,在基于文法聚合域名进行僵尸网络检测的过程中,可以以二级域名是否为非确认单词对文法域名进行分类并应用对应的方式进行检测,也即将每类文法聚合域名中二级域名相同且为确认单词的目标域名聚合在一起,得到各类第一文法子聚合域名,若第一文法子聚合域名对应的目标时序特征表征二级域名下属的所有三级域名模式至少在第一预设数量个目标设备上出现,比如目标时序特征表明下属全部3级域名模式中的域名集合访问相同的2个及以上的主机,则确定第一文法子聚合域名对应的目标域名为僵尸网络域名。
[0108]
步骤s403:将每类文法聚合域名中二级域名为非确认单词的目标域名作为单独的一个第二文法子聚合域名;
[0109]
步骤s404:若第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备连续时间内的出现次数大于第一预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备不同时间的出现次数大于第二预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备的预设周期内的不同时间的出现次数大于第三预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征所有的目标域名在同一目标设备同时出现,则确定第二文法子聚合域名中的目标域名为僵尸网络域名。
[0110]
实际应用中,对于每类文法聚合域名中二级域名为非确认单词的目标域名,也即对于每个第二文法子聚合域名,只需满足下述四个条件中的任一条件,便认为此域名为僵尸网络域名等。四个条件分别为:
[0111]
1、第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备连续时间内的出现次数大于第一预设次数,比如某文法特征下有3个及以上域名,且该域名在相同主机连续时间(3s内)出现2次及以上等;
[0112]
2、第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备不同时间的出现次数大于第二预设次数;比如某文法特征下有3个及以上域名,且该域名在该域名在相同主机不同时间出现5次及以上等;
[0113]
3、第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表
征目标域名在同一目标设备的预设周期内的不同时间的出现次数大于第三预设次数;比如某文法特征下有3个及以上域名,且该域名一天在同主机不同时间出现20次及以上等;
[0114]
4、第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征所有的目标域名在同一目标设备同时出现;比如某文法特征下有3个及以上域名,且该域名在同主机同时间一起出现等。
[0115]
请参阅图6,图6为本技术实施例提供的一种域名检测系统的结构示意图。
[0116]
本技术实施例提供的一种域名检测系统,可以包括:
[0117]
域名确定模块101,用于确定各个目标设备访问的各个目标域名;
[0118]
聚合模块102,用于对目标域名进行聚合,得到各类目标聚合域名;
[0119]
特征确定模块103,用于确定各类目标聚合域名的目标文法特征及目标时序特征;
[0120]
检测模块104,用于基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果。
[0121]
本技术实施例提供的一种域名检测系统,聚合模块可以包括:
[0122]
第一聚合单元,用于将顶级域名相同的目标域名聚合在一起,得到各类初始聚合域名;
[0123]
第二聚合单元,用于将各个初始聚合域名中各级域名长度相同的目标域名聚合在一起,得到目标聚合域名。
[0124]
本技术实施例提供的一种域名检测系统,特征确定模块可以包括:
[0125]
第一分割单元,用于按照预设分割符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个目标字符串;
[0126]
第一提取单元,用于对各个目标域名的字符串信息进行文法模式提取,得到目标聚合域名对应的目标文法特征。
[0127]
本技术实施例提供的一种域名检测系统,第一分割单元可以具体用于;以“.”为分隔符,对目标聚合域名中各个目标域名中二级以上域名进行分割,得到各个目标域名对应的各个字符串信息;若字符串信息中包含其他分割符,则按照其他分割符对字符串信息进行分割,得到目标字符串;若字符串信息中不包含其他分割符,则直接将字符串信息作为目标字符串。
[0128]
本技术实施例提供的一种域名检测系统,第一提取单元,可以具体用于:若目标字符串所有字符均是数字,则将目标字符串的文法特征标记为:数字个数与预设字符的组合;若目标字符串中字符为单词或目标字符串的长度小于第一预设值,则将目标字符串的文法特征标记为:目标字符串;若目标字符串中的字符非单词且目标字符串的长度大于等于第一预设值,则将目标字符串的文法特征标记为:目标字符串的字符个数值;将目标域名对应的目标字符串的文法特征与目标域名的顶级域名相组合,得到目标域名的目标文法特征。
[0129]
本技术实施例提供的一种域名检测系统,检测模块可以包括:
[0130]
第三聚合单元,用于将相同目标文法特征对应的目标域名进行聚合,得到各类文法聚合域名;
[0131]
第一检测单元,用于将每类文法聚合域名中二级域名相同且为确认单词的目标域名聚合在一起,得到各类第一文法子聚合域名,若第一文法子聚合域名对应的目标时序特征表征二级域名下属的所有三级域名模式至少在第一预设数量个目标设备上出现,则确定
第一文法子聚合域名对应的目标域名为僵尸网络域名;
[0132]
第一确定单元,用于将每类文法聚合域名中二级域名为非确认单词的目标域名作为单独的一个第二文法子聚合域名;
[0133]
第二检测单元,用于若第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备连续时间内的出现次数大于第一预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备不同时间的出现次数大于第二预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征目标域名在同一目标设备的预设周期内的不同时间的出现次数大于第三预设次数,或第二文法子聚合域名中目标域名的数量大于第二预设数量且目标时序特征表征所有的目标域名在同一目标设备同时出现,则确定第二文法子聚合域名中的目标域名为僵尸网络域名。
[0134]
本技术实施例提供的一种域名检测系统,还可以包括:
[0135]
降误报模块,用于检测模块基于目标文法特征和目标时序特征检测目标域名是否为僵尸网络域名,得到对应的检测结果之后,基于预设的中文词法库及白域名库,对域名进行降误报处理;其中,白域名库为存储安全域名的域名库。
[0136]
基于上述程序模块的硬件实现,且为了实现本发明实施例的方法,本发明实施例还提供了一种电子设备,图7为本发明实施例电子设备的硬件组成结构示意图,如图7所示,电子设备包括:
[0137]
通信接口1,能够与其它设备比如网络设备等进行信息交互;
[0138]
处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的用户操作处理方法。而所述计算机程序存储在存储器3上。
[0139]
当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线系统4。
[0140]
本发明实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
[0141]
可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,
dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic randomaccess memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本发明实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。
[0142]
上述本发明实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
[0143]
处理器2执行所述程序时实现本发明实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
[0144]
在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
[0145]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置、终端和方法,可以通过其它的方式实现。以上所描述的设备实施例仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0146]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0147]
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0148]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0149]
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品
销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0150]
本技术实施例提供的域名检测系统、设备及计算机可读存储介质中相关部分的说明请参见本技术实施例提供的域名检测方法中对应部分的详细说明,在此不再赘述。另外,本技术实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
[0151]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0152]
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献