DNS防劫持方法、装置及电子设备制造方法及图纸

技术编号:22534876 阅读:31 留言:0更新日期:2019-11-13 11:01
本公开提供了一种DNS防劫持方法、装置及电子设备,其DNS防劫持方法,包括:获取IP地址,根据获取的IP地址进行连接,判断连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否后再发送数据包以获取响应,如果否则直接发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。本公开既能在解析过程保护DNS,又能在连接后感知到DNS被劫持并使访问恢复,利于在保证性能的同时兼顾良好的防劫持能力。

DNS anti hijacking methods, devices and electronic equipment

The present disclosure provides a DNS anti hijacking method, device and electronic device. The DNS anti hijacking method includes: acquiring IP address, connecting according to the acquired IP address, and judging whether the connection is successful; if the connection is successful, judging whether to use local DNS resolution according to the scenario settings, if so, setting whether DNS may have been hijacked, and then sending data packet to get response, if so, then Otherwise, directly send the packet to get the response; judge whether the response is normal, and set whether DNS may have been hijacked according to the result. The disclosure can not only protect DNS in the resolution process, but also sense that DNS is hijacked after connection and restore access, which is conducive to ensuring performance and taking good anti hijacking capability into account.

【技术实现步骤摘要】
DNS防劫持方法、装置及电子设备
本公开涉及域名解析领域,尤其涉及一种DNS防劫持方法、装置及电子设备。
技术介绍
自从DNS(DomainNameSystem,域名系统)协议出现,客户访问各个网站就变的十分方便,但是DNS服务中关键的一环——域名解析往往存在一定风险,域名劫持就是其中之一。域名劫持就是指通过某些手段取得某域名的解析控制权,修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址,因此DNS防劫持就成了网络安全的一个重点研究方向。目前针对DNS防劫持的主要方法包括使用DNS的TCP(TransmissionControlProtocol,传输控制协议)形式,使用加密的方式对DNS请求和响应进行加密等。但是这两种方法都不同程度的降低了DNS请求的速度,第二种方法更是需要VPS(VirtualPrivateServer,虚拟专用服务器),代价过大。并且这些方法中,一旦域名被劫持,没有有效的方法支持重连,留给用户的操作比较多。现有技术对DNS劫持的防护,大多在DNS解析阶段进行保护,但域名仍有一定可能被劫持。但是发生劫持后用户只能手动重连,用户体验感并不好。并且在智能音箱芯片中都存在写好的系统文件,在考虑负载均衡的情况下,每个需要连接的域名对应一个IP,如果每次都对域名做解析,在极端情况下会影响服务器的负载均衡。因此需要一个能有效解决上述问题的DNS防劫持方法。
技术实现思路
(一)要解决的技术问题本公开提供了一种DNS防劫持方法、装置及电子设备,以至少部分解决以上所提出的技术问题。(二)技术方案根据本公开的一个方面,提供了一种DNS防劫持方法,包括:获取IP地址,根据获取的IP地址进行连接,判断连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否,如果否则直接进行下一步骤;发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。在本公开的一些实施例中,所述获取IP地址,根据获取的IP地址进行连接,判断连接是否成功,包括:如连接失败,根据场景设置判断本地DNS是否被劫持;如果被劫持则进行DNS解析后,根据本次DNS解析获得的IP发起连接,重新判断IP连接是否成功;如果未被劫持则设置本地DNS可能已经被劫持为是,重新判断连接是否成功。在本公开的一些实施例中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为是则判断是否使用本地DNS解析;如果判断是否使用本地DNS解析为是,则设置DNS可能已经被劫持为否。在本公开的一些实施例中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为是则判断是否使用本地DNS解析;如果判断是否使用本地DNS解析为否,则结束。在本公开的一些实施例中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为否则判断是否使用本地DNS解析;如果为是则设置DNS可能已经被劫持为是;断开连接并返回至获取IP地址,根据重新获取的IP地址进行连接,判断连接是否成功。在本公开的一些实施例中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为否则判断是否使用本地DNS解析;如果为否则断开连接并返回至获取IP地址,根据重新获取的IP地址进行连接,判断连接是否成功。在本公开的一些实施例中,所述场景设置包括:设置可能被劫持的状态和设置是否使用本地DNS解析中的一种或多种。在本公开的一些实施例中,获取IP地址,根据获取的IP地址进行连接,判断连接是否成功中,首次获取的IP地址为本地文件中的IP地址。根据本公开的另一个方面,提供了一种DNS防劫持装置,包括:第一处理模块,用于判断系统文件中域名对应的IP连接是否成功;第二处理模块,连接成功后判断是否使用本地DNS解析,并判断响应是否正常;第一执行模块,根据第一处理模块,决定是否执行DNS解析;第二执行模块,根据第二处理模块的判断结果,决定是否执行断开IP连接并进行重新连接。根据本公开的另一个方面,提供了一种电子设备,包括存储器、处理器和网络接口控制器,所述存储器中存储有可在所述处理上运行的计算机程序,其中,所述存储器用于存放至少一条可执行指令,网络接口控制器用于允许网络通信,所述可执行指令使所述处理器执行如前所述的DNS防劫持方法对应的操作。(三)有益效果从上述技术方案可以看出,本公开DNS防劫持方法、装置及电子设备至少具有以下有益效果其中之一或其中一部分:本公开既能在解析过程保护DNS,又能在连接后感知到DNS被劫持并使访问恢复,利于在保证性能的同时兼顾良好的防劫持能力。附图说明图1为本公开DNS防劫持方法的示意图。图2为本公开一个实施例DNS防劫持方法的示意图。图3为本公开另一个实施例DNS防劫持方法的示意图。具体实施方式本公开提供了一种DNS防劫持方法、装置及电子设备,其DNS防劫持方法,包括:判断系统文件中域名对应的IP连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否后再发送数据包以获取响应,如果否则直接发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。本公开既能在解析过程保护DNS,又能在连接后感知到DNS被劫持并使访问恢复,利于在保证性能的同时兼顾良好的防劫持能力。在描述问题的解决方案之前,先定义一些特定词汇是有帮助的。DNS解析,又称域名解析,是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。DNS劫持,又称域名劫持,指攻击者利用其他攻击手段,篡改了某个域名的解析结果,使得指向该域名的IP变成了另一个IP,导致对相应网址的访问被劫持到另一个不可达的或者假冒的网址,从而实现非法窃取用户信息或者破坏正常网络服务的目的。为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。本公开某些实施例于后方将参照所附附图做更全面性地描述,其中一些但并非全部的实施例将被示出。实际上,本公开的各种实施例可以许多不同形式实现,而不应被解释为限于此数所阐述的实施例;相对地,提供这些实施例使得本公开满足适用的法律要求。在本公开的一个示例性实施例中,提供了一种DNS防劫持方法。图1为本公开DNS防劫持方法的示意图。如图1所示,本公开DNS防劫持方法包括:包括:判断系统文件中域名对应的IP连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否,如果否则发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。其中,判断系统文件中域名对应的IP连接是否成功中,如连接失败,根据场景设置判断本地DNS是否被劫持;如果已被劫持则进行DNS解析后,根据本次DNS解本文档来自技高网...

【技术保护点】
1.一种DNS防劫持方法,包括:获取IP地址,根据获取的IP地址进行连接,判断连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否,如果否则直接进行下一步骤;发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。

【技术特征摘要】
1.一种DNS防劫持方法,包括:获取IP地址,根据获取的IP地址进行连接,判断连接是否成功;如连接成功,根据场景设置判断是否使用本地DNS解析,如果是则设置DNS可能已经被劫持为否,如果否则直接进行下一步骤;发送数据包以获取响应;判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持。2.根据权利要求1所述的DNS防劫持方法,其中,所述获取IP地址,根据获取的IP地址进行连接,判断连接是否成功,包括:如连接失败,根据场景设置判断本地DNS是否被劫持;如果被劫持则进行DNS解析,根据本次DNS解析获得的IP发起连接,重新判断IP连接是否成功;如果未被劫持则设置本地DNS可能已经被劫持为是,重新判断连接是否成功。3.根据权利要求1所述的DNS防劫持方法,其中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为是则判断是否使用本地DNS解析;如果判断是否使用本地DNS解析为是,则设置DNS可能已经被劫持为否。4.根据权利要求1所述的DNS防劫持方法,其中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为是则判断是否使用本地DNS解析;如果判断是否使用本地DNS解析为否,则结束。5.根据权利要求1所述的DNS防劫持方法,其中,所述判断响应是否正常,根据判断结果,相应设置DNS是否可能已经被劫持,包括:判断响应是否正常,如果为否则判断是否使用本地D...

【专利技术属性】
技术研发人员:陈孝良王彦龙苏少炜
申请(专利权)人:北京声智科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1