Sinkhole域名处理方法及服务器与流程

文档序号:17536933发布日期:2019-04-29 14:05阅读:7196来源:国知局
Sinkhole域名处理方法及服务器与流程

本发明涉及网络技术领域,特别涉及一种sinkhole域名处理方法及服务器。



背景技术:

sinkhole(又名沉洞,或网络沉洞)技术是指在网络中的某一域名被判定为恶意域名后,由安全厂商或运营商将其原本解析到的ip地址变更到无害ip地址的技术。如果某一域名被sinkhole,则该域名解析到ip地址已被变更,因此受害主机不会再接受到恶意控制代码或恶意文件,也就不会受到安全威胁。同时,安全分析人员通过对被sinkhole的域名的当前域名服务器的流量进行研究和监控,可以监测到当前已经失陷的主机数量和状态。

在受害主机中的木马文件成功获取系统控制权后,将连接其c&c(commandandcontrol命令&控制)服务器,并接受来自c&c服务器的控制指令或其他恶意文件。通过使用sinkhole技术,域名解析到的c&c服务器的ip地址被变更到无害的ip地址,解析到该ip地址上的安全服务器不会向主机发送任何控制码或文件。因此受害的主机不会再受到进一步的攻击。当前,对于sinkhole技术,国内外已有广泛应用。

当前对于网络上的某一域名是否已经被sinkhole,缺少可信度较高的判定方法。另外,虽然通过对网络上的开源情报中的sinkholeip进行收集,能够得到一定数量的sinkholeip,但目前仍然缺少从已知sinkholeip来产生sinkhole域名的技术方法。同时,当前对于sinkhole技术的挖掘也不够深入,没有及时发现新增的sinkhole域名。



技术实现要素:

有鉴于解决目前仍然缺少从已知sinkholeip来产生sinkhole域名的技术方法,当前对于sinkhole技术的挖掘也不够深入,没有及时发现新增的sinkhole域名的问题,本发明提供了一种sinkhole域名处理方法及服务器。

本发明实施例的一种sinkhole域名处理方法,包括:

步骤1,对sinkholeip地址进行域名反解析查询,以获取与所述sinkholeip地址相关联的至少一个域名;

步骤2,获取所述sinkholeip地址相关联的域名的相关信息,所述相关信息包括所述域名的上下文信息、所述域名对应的dns服务器地址和/或所述域名的查询信息;

步骤3,根据所述相关信息进行sinkhole域名的判定;

步骤4,根据所述判定的结果获取新出现的所述sinkhole域名。

作为优选,步骤3包括:

步骤31,对所述域名相关上下文进行判断,判断其是否符合sinkhole的相关特征;

步骤32,对所述域名的查询信息、域名服务器记录进行分析,并根据所述域名的查询信息、域名服务器记录分别对应的权值,计算所述域名是所述sinkhole域名的概率,以实现所述sinkhole域名的判定。

作为优选,所述步骤4包括:

步骤41,将判定的所述sinkhole域名与预存储的原始sinkhole域名进行对比;

步骤42,根据对比结果获取新出现的所述sinkhole域名。

作为优选,所述步骤4具体包括:

对预存储的sinkholeip地址进行反解析域名的多次查询,将不同时间段内进行的第一查询结果与第二查询结果进行比对,得到新增域名;

对所述新增域名进行dns服务器地址的查询和比对,获取新增sinkhole域名。

作为优选,所述步骤1包括:将存储在数据库中的已知的sinkholeip地址进行解析;

获取所述sinkholeip地址对应的多个的域名,所述域名中包括所述sinkhole域名。

作为优选,所述步骤3还包括:基于所述sinkholeip地址,对解析所述sinkholeip地址的域名的dns服务器进行过滤,以过滤掉所述dns服务器地址。

作为优选,所述方法还包括:对所述sinkhole域名进行分析,获取与所述sinkhole域名相关联的主机的相关信息。

作为优选,所述方法还包括:将获取的新出现的所述sinkhole域名存储到数据库中以更新所述sinkhole域名的所述相关信息。

本发明实施例还提供了一种服务器,包括处理器和存储器,所述存储器中存储有可执行程序,所述处理器执行所述可执行程序以执行如下步骤:步骤1,对sinkholeip地址进行域名反解析查询;

步骤2,获取所述sinkholeip地址相关联的域名的相关信息,所述相关信息包括所述域名的上下文信息、所述域名对应的dns服务器地址和/或所述域名的查询信息;

步骤3,根据所述相关信息进行sinkhole域名的判定;

步骤4,根据所述判定的结果获取新出现的所述sinkhole域名。

本发明能够在已知sinkholeip地址的基础上,对解析到这些sinkholeip地址的域名的dns服务器进行有效过滤,对于比对成功的域名,能够以极高的可信度判定为sinkhole域名。同时,通过对已知sinkholeip地址的监控,可以得到新的sinkhole域名。

附图说明

图1是本发明实施例的sinkhole域名处理方法的流程图;

图2是本发明实施例的图1中步骤3的流程图;

图3是本发明实施例的图1中步骤4的流程图。

具体实施方式

为使本领域技术人员更好的理解本发明的技术方案,下面结合附图和具体实施方式对本发明作详细说明。

在本发明的一个实施例中,一个dns服务器可以被认为是一个sinkhole,被配置为为sinkhole中的所有域派发不可路由的地址,以便每个使用它的计算机将无法访问真实的网站,有效阻断了恶意站点对计算机的攻击。dns陷阱越高,越多的请求将被阻止,因为它将为大量较低的ns服务器提供答案,而这些服务器又将服务于更多的客户端,sinkholes在检测和阻止恶意攻击方面非常有效。本实施例中的sinkhole域名处理方法能够有效的判定sinkhole域名,并获取新增加的sinkhole域名的相关信息,以对sinkhole域名进行分析,这其中包括通过对已知sinkholeip地址对应的域名的监控,可以得到每日更新的解析到这些sinkholeip的域名,并将这些新域名收集,以作分析研究之用。本发明实施例的一种sinkhole域名处理方法,如图1所示,该方法包括以下步骤:

步骤1,对sinkholeip地址进行域名反解析查询,以获取与sinkholeip地址相关联的至少一个域名。sinkholeip地址本身可以通过查询专业数据库或搜索专业站点来预先获取,sinkholeip地址可以为已经经过sinkhole技术处理后重新指向的ip地址,该sinkholeip地址对应多个域名,如包括第一域名,第二域名,第三域名等,在这些域名中可能包含有含有恶意的sinkhole域名,也可能包含有非恶意的正常域名,而域名反解析查询能够获取sinkholeip地址对应的所有的上述域名。

步骤2,获取sinkholeip地址相关联的域名的相关信息,相关信息包括域名的上下文信息、域名对应的dns服务器地址和/或域名的查询信息(whois信息)。域名的上下文信息包括了与该域名相关联的各种信息,能够对该域名进行额外的说明;域名对应的dns服务器地址可以为该dns服务器在网络中的实际地址;域名的查询信息(whois信息)是用来查询域名的ip以及所有者等信息的传输协议,也可以说whois信息就是一个用来查询域名是否已经被注册的数据,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)。

步骤3,根据相关信息进行sinkhole域名的判定。根据上述的相关信息能够对具有恶意的sinkhole域名进行判定,在判断的过程中使用的上述相关信息根据类型不同其权重也不同,例如权重高的并且认定某一域名为sinkhole域名则判断的概率较大,否则判断的概率较小。

步骤4,根据判定的结果获取新出现的sinkhole域名。由于在网络中每天都会出现新的域名,这也就意味着每天也会出现新的sinkhole域名。在一个实施例中,通过对sinkhole域名的判定,再与当前的查询结果进行比对,可以得到新增的域名包括新增的sinkhole域名,从而能够使存储相关信息的数据库不断地得到更新,也使得安全威胁情报更加丰富。

在本发明的一个实施例中,如图2所示,步骤3包括以下步骤:

步骤31,对域名相关上下文进行判断,判断其是否符合sinkhole的相关特征。sinkhole的相关特征可以预先设定,判断时则可以直接将域名相关上下文与设定好的相关特征进行比对,从而判断域名相关上下文是否属于相关特征的范围中。

步骤32,对域名的查询信息、域名服务器记录(ns记录)进行分析,并根据域名的查询信息(whois信息)、域名服务器记录分别对应的权值,计算域名是sinkhole域名的概率,以实现sinkhole域名的判定。域名的查询信息、域名服务器记录对应的权值并不相同,可以根据实际需要来对具体的权值进行设定,例如如果域名服务器记录相对较为可靠则可以设定其具有较高的权值。

在本发明的一个实施例中,如图3所示,步骤4包括:

步骤41,将判定的sinkhole域名与预存储的原始sinkhole域名进行对比。原始sinkhole域名为之前已经判定为sinkhole域名的数据,该数据可以存储在数据库中。

步骤42,根据对比结果获取新出现的sinkhole域名。可以将新判定的sinkhole域名与原始sinkhole域名进行对比从而得到新出现的sinkhole域名。

作为优选,步骤4具体包括:对预存储的sinkholeip地址进行反解析域名的多次查询,将不同时间段内进行的第一查询结果与第二查询结果进行比对,得到新增域名。对新增域名进行dns服务器地址的查询和比对,获取新增sinkhole域名。第一查询结果与第二查询结果之间具有时间间隔,在一个实施例中,第一查询结果为当前查询结果,第二查询结果为预定时间段之前的查询结果,在预定时间段之内的时间里网络上可能增加了大量的新增域名,而新增域名中可能存在新增的具有恶意的sinkhole域名,对于此情况可以利用对新增域名进行dns服务器地址的查询和比对,以获取新增sinkhole域名。

在本发明的一个实施例中,步骤1包括:步骤11,将存储在数据库中的已知的sinkholeip地址进行解析;步骤12,获取sinkholeip地址对应的多个的域名,域名中包括sinkhole域名。该sinkholeip地址对应多个域名,如包括第一域名,第二域名,第三域名等,在这些域名中可能包含有含有恶意的sinkhole域名,也可能包含有非恶意的正常域名。

在本发明的一个实施例中,步骤3还包括:基于sinkholeip地址,对解析sinkholeip地址的域名的dns服务器进行过滤,以过滤掉dns服务器地址。

在本发明的一个实施例中,该方法还包括:对sinkhole域名进行分析,获取与sinkhole域名相关联的主机的相关信息。这些主机(客户端)已经被sinkhole处理,也可以说阻断了恶意站点向主机进行的恶意攻击,而是被重定向了其他的域名,获取到这些主机的相关信息后能够对恶意程序和恶意站点进行有效的分析,从而能够更好的为其他主机提供保护。

在本发明的一个实施例中,该方法还包括:将获取的新出现的sinkhole域名存储到数据库中以更新sinkhole域名的相关信息。数据库的更新操作可以使用户及时掌握sinkhole域名的相关信息,分析相应的变化。例如当用户在数据库存储的网络通信日志中监测到内网中出现对于这些sinkhole域名的连接操作后,能够马上得知当前系统已失陷,并能够对当前系统失陷程度做出更加有效的评估,进而采取相应的应急措施。

本发明实施例还提供了一种服务器,包括处理器和存储器,存储器中存储有可执行程序,处理器执行所述可执行程序以执行如下步骤:步骤1,对sinkholeip地址进行域名反解析查询。sinkholeip地址本身可以通过查询专业数据库或搜索专业站点来预先获取,sinkholeip地址可以为已经经过sinkhole技术处理后重新指向的ip地址,该sinkholeip地址对应多个域名,如包括第一域名,第二域名,第三域名等,在这些域名中可能包含有含有恶意的sinkhole域名,也可能包含有非恶意的正常域名,而域名反解析查询能够获取sinkholeip地址对应的所有的上述域名。

步骤2,获取sinkholeip地址相关联的域名的相关信息,相关信息包括域名的上下文信息、域名对应的dns服务器地址和/或域名的查询信息。域名的上下文信息包括了与该域名相关联的各种信息,能够对该域名进行额外的说明;域名对应的dns服务器地址可以为该dns服务器在网络中的实际地址;域名的查询信息(whois信息)是用来查询域名的ip以及所有者等信息的传输协议,也可以说whois信息就是一个用来查询域名是否已经被注册的数据,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)。

步骤3,根据相关信息进行sinkhole域名的判定。根据上述的相关信息能够对具有恶意的sinkhole域名进行判定,在判断的过程中使用的上述相关信息根据类型不同其权重也不同,例如权重高的并且认定某一域名为sinkhole域名则判断的概率较大,否则判断的概率较小。

步骤4,根据判定的结果获取新出现的sinkhole域名。由于在网络中每天都会出现新的域名,这也就意味着每天也会出现新的sinkhole域名。在一个实施例中,通过对sinkhole域名的判定,再与当前的查询结果进行比对,可以得到新增的域名包括新增的sinkhole域名,从而能够使存储相关信息的数据库不断地得到更新,也使得安全威胁情报更加丰富。

下面结合一个具体实施例,对sinkhole域名处理方法进行说明,基于已知sinkholeip地址判定并获取sinkhole域名方法主要分为以下五个步骤:(1)对sinkholeip地址进行域名反解析查询,(2)通过域名查询dns服务器地址,(3)过滤dns服务器地址,(4)判定sinkhole域名,(5)取得新增sinkhole域名,以下将对这五个阶段进行详细阐述。

(1)对sinkholeip地址进行域名查询。

根据网络上的开源威胁情报以及其他情报收集渠道,可以积累一部分已知的sinkholeip地址,这些ip地址被专门用来解析被sinkhole的域名。

使用数据库平台对收集到的sinkholeip地址进行域名反解析查询,就得到了解析到这些ip的域名。

(2)查询域名的相关信息,包括域名的相关上下文、dns服务器地址和whois信息等。

(3)分析收集到的域名信息。

(4)根据网络上的开源威胁情报以及其他情报收集渠道,可以积累一些对于域名的过滤方法。例如:

首先,对域名的相关上下文进行判断,看其是否符合sinkhole技术的相关特征;

其次,对该域名的查询信息(whois信息)、域名服务器记录(ns记录)等进行分析和查询,并根据不同的维度设置不同的权值,为每个域名打分,以此实现sinkhole域名的判定。

sinkhole技术在本质上是一种dns技术,对应的dns服务器被专门用来解析sinkhole域名。因此,当我们掌握并不断丰富对于一个疑似sinkhole域名的判定维度时,判定sinkhole域名的准确性就会明显提高,因此可以以高可信度认为某个域名为sinkhole域名。

(5)取得新增的sinkhole域名。

由于在网络中每天都会出现新的域名,这也就意味着每天也会出现新的sinkhole域名。通过每天对我们所掌握的sinkholeip地址进行反解析域名的查询,再与我们之前的查询结果进行比对,得到新增域名。接着,对新增域名进行dns服务器地址的查询和比对,我们就能在每天发现新的sinkhole域名。

由于采用了上述技术方案,当用户在网络通信日志中监测到内网中出现对于这些sinkhole域名的连接操作后,能够马上得知当前系统已失陷,并能够对当前系统失陷程度做出更加有效的评估,进而采取相应的应急措施。同时,每日新增域名的获得,能够使数据库不断地得到更新,也使得安全威胁情报更加丰富。

以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1