一种DNS信息处理方法及装置与流程

文档序号:11930368阅读:274来源:国知局
一种DNS信息处理方法及装置与流程

本发明实施例涉及网络信息安全技术领域,具体涉及一种DNS信息处理方法及装置。



背景技术:

随着信息时代的到来和社会的快速发展,人们越来越多的访问网站,以获取更多的信息。

域名解析系统(Domain Name System,以下简称DNS),能够帮助用户更加方便的访问互联网。由于DNS的存在,互联网用户在访问网站的时候可以直接使用域名来实现,而不用记住网站所使用的IP地址。通过域名最终找到对应的IP地址的行为叫做域名解析。然而近来部分恶意用户及厂商为了获取流量和不法的目的,进行监听正常用户的DNS会话,抢先将虚假的DNS响应返回给客户端,被称为DNS劫持,最终会导致用户无法打开目标网站,甚至打开带有病毒木马的网站。现有技术只能在DNS劫持发生后采取一定的措施(比如及时关闭钓鱼页面或者修改网关的DNS服务器地址等)来避免DNS劫持带来危害。

因此,如何有效的防护DNS劫持的发生,成为亟需解决的技术问题。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供一种DNS信息处理方法及装置。

一方面,本发明实施例提供一种DNS信息处理方法,包括:

接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息;

接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文;

根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

另一方面,本发明实施例提供一种DNS信息处理装置,包括:

发送单元,用于接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息;

接收单元,用于接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文;

转发单元,用于根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理方法及装置,通过将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

附图说明

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

图1为本发明实施例DNS信息处理方法用到的设备连接图;

图2为本发明实施例DNS信息处理方法的流程示意图;

图3为本发明实施例DNS信息处理装置的结构示意图;

图4为本发明实施例提供的装置实体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例DNS信息处理方法用到的设备连接图,如图1所示,当用户正常打开一个网站(如www.test.com)时流程如下:

1、用户在浏览器中访问www.test.com时,操作系统向DNS服务器发起DNS请求,询问www.test.com对应的IP地址。

2、DNS请求报文依次经过防火墙设备,网关,到达DNS服务器。

3、DNS服务器查询到结果后将查询结果返回,报文依次经过网关,防火墙设备到达用户电脑。

4、用户获得DNS解析结果后向网站服务器的IP地址发起TCP三次握手打开网站页面。

运营商劫持原理如下:

当网关检测到第一步用户发起的DNS请求时,直接通过旁路部署的劫持服务器返回一个DNS解析结果给用户,但解析报文中的IP地址不是正确的地址,由于劫持服务器属于旁路部署,所以错误的DNS解析报文会先于正确的解析结果到达用户电脑,默认情况下操作系统会将后到达的DNS解析结果丢弃。用户就会打开一个错误的网站。

图2为本发明实施例DNS信息处理方法的流程示意图,如图2所示,本实施例提供的一种DNS信息处理方法,包括以下步骤:

S1:接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息。

具体的,装置接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息。

S2:接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文。

具体的,装置接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文。需要说明的是:该响应信息可以是多个,其中包含DNS服务器针对所述请求信息返回的响应信息,还可以包含劫持服务器针对所述请求信息返回的响应信息。

S3:根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,装置根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。需要说明的是:在接收时间到达以后的一段时间内,如果还接收到响应信息中携带的应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理方法,通过将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,包括:

根据所述接收时间和预设时间段,获取截止时间,其中,所述截止时间为所述接收时间加上所述预设时间段所对应的时间。

具体的,装置根据所述接收时间和预设时间段,获取截止时间,其中,所述截止时间为所述接收时间加上所述预设时间段所对应的时间。需要说明的是:预设时间段可以由装置根据实际情况自主设定,以确保装置能够收到DNS服务器返回的响应信息,例如:接收时间为5:00:00,预设时间段为10秒,则截止时间为5:00:10,在5:00:10装置已经确保能够收到DNS服务器返回的响应信息。

若达到所述截止时间时,接收到的所述应答报文个数大于1,则将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,若达到所述截止时间时,装置接收到的所述应答报文个数大于1,则将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。需要说明的是:应答报文个数大于1,可以认为该域名信息被劫持服务器所劫持,而且劫持服务器所发出的针对所述请求信息的响应信息都先于DNS服务器所发出的针对所述请求信息的响应信息发送到网关,网关将这些响应信息返回给装置,装置将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,使得将DNS服务器所发出的针对所述请求信息的响应信息抵达用户终端。

本发明实施例提供的DNS信息处理方法,通过设置截止时间,并在达到截止时间时将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述方法还包括:

若到达所述截止时间时,接收到的所述应答报文个数等于1,则将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

具体的,若到达所述截止时间时,装置接收到的所述应答报文个数等于1,则将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。需要说明的是:应答报文个数等于1,可以认为该应答报文是由DNS服务器经由网关返回到装置的,因此说明该域名信息没有被劫持服务器所劫持,因此可以认为在一定的时间内是比较安全的,将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

本发明实施例提供的DNS信息处理方法,通过将没有被劫持的域名信息添加到DNS白名单中,能够更加快捷的转发还没有被劫持的域名信息所对应的应答报文。

在上述实施例的基础上,还获取所述请求信息的发送时间,相应地,所述根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,包括:

获取所述接收时间与所述发送时间之间的第一时间间隔T。

具体的,装置获取所述响应信息的接收时间与所述请求信息的发送时间之间的第一时间间隔T。

若在KT时间段内再次收到所述应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,其中所述K为大于1的预设系数。

具体的,若在KT时间段内再次收到所述应答报文,装置将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,其中所述K为大于1的预设系数。需要说明的是:K是大于1的预设系数,可以为小数,可以由装置根据网络环境来自由调整,如网速越高,预设系数K越小,网速越低,预设系数K越大,举例说明如下:接收时间为5:00:00,发送时间为4:59:50,则第一时间间隔T为5:00:00与4:59:50之间的差值,计算得知为10秒,如果当前网络的网速较高,可以将预设系数K设置为1.2,则装置若在KT时间段内,即(1.2*10秒=12秒)内再次收到所述应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,如果当前网络的网速较低,可以将预设系数K设置为1.5,则装置若在KT时间段内,即(1.5*10秒=15秒)内再次收到所述应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理方法,通过设置预设系数K,并在达到KT时将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述方法还包括:

若在KT时间段内没有收到所述应答报文,则将已收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

具体的,若在KT时间段内没有收到所述应答报文,则装置将已收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。可以认为第一时间间隔T已经接收到的应答报文是由DNS服务器经由网关返回到装置的,因此说明该域名信息没有被劫持服务器所劫持,因此可以认为在一定的时间内是比较安全的,将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

本发明实施例提供的DNS信息处理方法,通过将没有被劫持的域名信息添加到DNS白名单中,能够更加快捷的转发还没有被劫持的域名信息所对应的应答报文。

在上述实施例的基础上,所述方法还包括:

接收到所述网关返回的针对所述请求信息的响应信息后,若判断获知所述域名信息在所述DNS白名单中,则直接将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,装置接收到所述网关返回的针对所述请求信息的响应信息后,若判断获知所述域名信息在所述DNS白名单中,则直接将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。需要说明的是:由于该域名信息在DNS白名单中,该域名信息还没有被劫持服务器所劫持,因此可以直接将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

若判断获知所述域名信息不在所述DNS白名单中,则根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,装置若判断获知所述域名信息不在所述DNS白名单中,则根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。需要说明的是:由于域名信息不在DNS白名单中,该域名信息还不能确定是否已经被劫持服务器所劫持,因此还需要根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理方法,通过设置DNS白名单中,并将DNS白名单用于DNS信息处理的过程中,优化了DNS信息处理的运行过程。

在上述实施例的基础上,所述方法还包括:

所述DNS白名单设置有超时时间间隔,若所述域名信息添加到所述DNS白名单的时间与当前时间之间的时间间隔超过所述超时时间间隔,则将所述域名信息从所述DNS白名单中删除。

具体的,装置对所述DNS白名单设置有超时时间间隔,若所述域名信息添加到所述DNS白名单的时间与当前时间之间的时间间隔超过所述超时时间间隔,则将所述域名信息从所述DNS白名单中删除。需要说明的是:超时时间间隔可以由装置自主设置,可以选择为1天,即24小时,例如:装置将域名信息添加到DNS白名单的时间为4:00,在一天以后的4:00,即在24小时后,装置将该域名信息从DNS白名单中删除。

本发明实施例提供的DNS信息处理方法,通过设置DNS白名单的超时时间间隔,更好的保证了DNS白名单中的域名信息没有被劫持,从而提高了DNS信息处理的安全性。

图3为本发明实施例DNS信息处理装置的结构示意图,如图3所示,本实施例提供了一种DNS信息处理装置,包括:发送单元1、接收单元2和转发单元3,其中:

发送单元1用于接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息;接收单元2用于接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文;转发单元3用于根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,发送单元1用于接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息;发送单元1将所述请求信息发送给接收单元2,接收单元2用于接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文;接收单元2将响应信息发送给转发单元3,转发单元3用于根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理装置,通过将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述转发单元3,包括:获取子单元31和第一转发子单元32,其中:

获取子单元31用于根据所述接收时间和预设时间段,获取截止时间,其中,所述截止时间为所述接收时间加上所述预设时间段所对应的时间,第一转发子单元32用于若达到所述截止时间时,接收到的所述应答报文个数大于1,则将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,获取子单元31用于根据所述接收时间和预设时间段,获取截止时间,其中,所述截止时间为所述接收时间加上所述预设时间段所对应的时间,获取子单元31将获取到的截止时间发送给第一转发子单元32,第一转发子单元32用于若达到所述截止时间时,接收到的所述应答报文个数大于1,则将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理装置,通过设置截止时间,并在达到截止时间时将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述第一转发子单元32还用于:

若到达所述截止时间时,接收到的所述应答报文个数等于1,则将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

具体的,第一转发子单元32若到达所述截止时间时,接收到的所述应答报文个数等于1,则将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

本发明实施例提供的DNS信息处理装置,通过将没有被劫持的域名信息添加到DNS白名单中,能够更加快捷的转发还没有被劫持的域名信息所对应的应答报文。

在上述实施例的基础上,还获取所述请求信息的发送时间,相应地,所述转发单元3包括:第一时间间隔获取子单元33和第二转发子单元34,其中:

第一时间间隔获取子单元33用于获取所述接收时间与所述发送时间之间的第一时间间隔T;第二转发子单元34用于若在KT时间段内再次收到所述应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,其中所述K为大于1的预设系数。

具体的,第一时间间隔获取子单元33用于获取所述接收时间与所述发送时间之间的第一时间间隔T;第一时间间隔获取子单元33将第一时间间隔T发送给第二转发子单元34,第二转发子单元34用于若在KT时间段内再次收到所述应答报文,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,其中所述K为大于1的预设系数。

本发明实施例提供的DNS信息处理装置,通过设置预设系数K,并在达到KT时将最后收到的响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,从而有效的防护DNS劫持行为的发生。

在上述实施例的基础上,所述第二转发子单元34还用于:

若在KT时间段内没有收到所述应答报文,则将已收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

具体的,第二转发子单元34还用于若在KT时间段内没有收到所述应答报文,则将已收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端,并将所述域名信息添加到DNS白名单中。

本发明实施例提供的DNS信息处理装置,通过将没有被劫持的域名信息添加到DNS白名单中,能够更加快捷的转发还没有被劫持的域名信息所对应的应答报文。

在上述实施例的基础上,所述转发单元3具体用于:

接收到所述网关返回的针对所述请求信息的响应信息后,若判断获知所述域名信息在所述DNS白名单中,则直接将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端;

若判断获知所述域名信息不在所述DNS白名单中,则根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

具体的,转发单元3具体用于接收到所述网关返回的针对所述请求信息的响应信息后,若判断获知所述域名信息在所述DNS白名单中,则直接将收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端;

转发单元3还具体用于若判断获知所述域名信息不在所述DNS白名单中,则根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

本发明实施例提供的DNS信息处理装置,通过设置DNS白名单中,并将DNS白名单用于DNS信息处理的过程中,优化了DNS信息处理的运行过程。

在上述实施例的基础上,所述转发单元3还具体用于:

所述DNS白名单设置有超时时间间隔,若所述域名信息添加到所述DNS白名单的时间与当前时间之间的时间间隔超过所述超时时间间隔,则将所述域名信息从所述DNS白名单中删除。

具体的,转发单元3还具体用于所述DNS白名单设置有超时时间间隔,若所述域名信息添加到所述DNS白名单的时间与当前时间之间的时间间隔超过所述超时时间间隔,则将所述域名信息从所述DNS白名单中删除。

本发明实施例提供的DNS信息处理装置,通过设置DNS白名单的超时时间间隔,更好的保证了DNS白名单中的域名信息没有被劫持,从而提高了DNS信息处理的安全性。

本实施例提供的DNS信息处理装置具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。

图4为本发明实施例提供的装置实体结构示意图,如图4所示,该装置可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。通信接口420可以用于装置与用户终端和网关之间的信息传输。处理器410可以调用存储器430中的逻辑指令,以执行如下方法:接收用户终端发送的DNS请求信息后,经由网关向DNS服务器发送所述请求信息,其中,所述请求信息携带有待解析的域名信息;接收所述网关返回的针对所述请求信息的响应信息,所述响应信息携带有所述域名信息的应答报文;根据所述响应信息的接收时间,将最后收到的所述响应信息中携带的应答报文作为所述DNS服务器的域名解析结果转发给所述用户终端。

此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,装置,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所描述的装置的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,装置,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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