CN109413015B - 一种dns劫持的防御方法和装置 - Google Patents

一种dns劫持的防御方法和装置 Download PDF

Info

Publication number
CN109413015B
CN109413015B CN201810399613.5A CN201810399613A CN109413015B CN 109413015 B CN109413015 B CN 109413015B CN 201810399613 A CN201810399613 A CN 201810399613A CN 109413015 B CN109413015 B CN 109413015B
Authority
CN
China
Prior art keywords
historical
response message
current
ttl field
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810399613.5A
Other languages
English (en)
Other versions
CN109413015A (zh
Inventor
曾祥禄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Sipuling Technology Co Ltd
Original Assignee
Wuhan Sipuling Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Sipuling Technology Co Ltd filed Critical Wuhan Sipuling Technology Co Ltd
Priority to CN201810399613.5A priority Critical patent/CN109413015B/zh
Publication of CN109413015A publication Critical patent/CN109413015A/zh
Application granted granted Critical
Publication of CN109413015B publication Critical patent/CN109413015B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种DNS劫持的防御方法和装置,其中,所述方法包括:防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;如果当前返回路径与各个历史返回路径均不相同,比较当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同;如果不同,将可信应答报文反馈至客户端。采用前述方法或装置能够解决现有DNS劫持的防御方法无法避免接收钓鱼网站IP地址的问题,从而提升网络的安全性。

Description

一种DNS劫持的防御方法和装置
技术领域
本申请涉及网络安全领域,尤其涉及一种DNS劫持的防御方法和装置。
背景技术
域名系统(Domain Name System,DNS),用于通过将网络域名映射为网络IP地址,为网络服务提供基础服务。DNS的安全性对网络安全起着举足轻重的作用,因此成为网络攻击的热点目标,其中一种常见的网络攻击的方式为DNS劫持。DNS劫持即域名劫持,在DNS劫持中,伪造DNS服务器是一个主要攻击手段,例如,攻击者搭建伪造DNS服务器后,伪造DNS服务器劫持客户端发往DNS服务器的域名解析请求,并把钓鱼网站的IP地址返回给客户端进行欺骗。
为了提高DNS安全性,需要对DNS劫持进行防御。在现有DNS劫持的防御方法中,客户端在接收到IP地址并打开后,根据显示的页面确定之前发送的域名解析请求是否被劫持,其中,若客户端显示的页面为钓鱼网站的页面,则确定之前发送的DNS请求报文被劫持,然后再采取相应的防御措施。例如,若网站服务商为同一IP地址提供两个域名,客户端通过现有的DNS劫持的防御方法确定之前发送的DNS请求报文被劫持后,使用另一个域名访问该IP地址。
但是,发明人在本申请的研究过程中发现,现有DNS劫持的防御方法为被动防御方法,采用该方法,当检测到一个域名解析请求被劫持时,客户端往往已经收到了钓鱼网站的IP地址,且已经打开了该钓鱼网站的主页,导致网络安全受到威胁。
发明内容
本申请提供了一种DNS劫持的防御方法和装置,以解决现有DNS劫持的防御方法无法避免接收钓鱼网站IP地址这一问题。
第一方面,本申请实施例提供一种DNS劫持的防御方法,所述方法包括:
防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;
所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;
如果所述当前返回路径与所述各个历史返回路径均不相同,所述防御系统比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;
如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,所述防御系统将所述可信应答报文反馈至客户端。
结合第一方面,在一种实现方式中,所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径,包括:
所述防御系统获取所述各个历史应答报文中的目标历史TTL字段值;
所述防御系统比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同;
若所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同,所述防御系统确定所述当前返回路径与所述各个历史返回路径均不相同。
结合第一方面,在一种实现方式中,所述防御系统获取所述各个历史应答报文中目标历史TTL字段值,包括:
所述防御系统获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率;
所述防御系统选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
结合第一方面,在一种实现方式中,所述防御系统选取出现频率排在前n位的历史TTL字段值之后,所述方法还包括:如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
结合第一方面,在一种实现方式中,在比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同之后,还包括:如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,所述防御系统将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。
第二方面,本申请实施例部分提供了一种DNS劫持的防御装置,所述装置包括:
获取模块,用于按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;
第一比较模块,用于在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;
第二比较模块,用于如果所述当前返回路径与所述各个历史返回路径均不相同,比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;
第一反馈模块,用于如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,将所述可信应答报文反馈至客户端。
结合第二方面,在一种实现方式中,所述第一比较模块,包括:
获取单元,用于获取所述各个历史应答报文中的目标历史TTL字段值;
比较单元,用于比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同;
判断单元,用于在所述比较单元确定所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同之后,确定所述当前返回路径与所述各个历史返回路径均不相同。
结合第二方面,在一种实现方式中,所述获取单元,包括:
统计子单元,用于获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率;
选取子单元,用于选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
结合第二方面,在一种实现方式中,所述装置还包括更新子单元,用于:如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
结合第二方面,在一种实现方式中,所述装置还包括第二反馈模块,用于:如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。
由以上技术方案可知,本申请实施例提供的一种DNS劫持的防御方法和装置。其中所述方法包括:防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;如果当前返回路径与各个历史返回路径均不相同,比较当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;如果当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,即可确定当前的域名解析请求被劫持,这种情况下,防御系统将可信应答报文反馈至客户端。
现有技术中,当检测到域名解析请求被劫持时,客户端往往已经收到了钓鱼网站的IP地址,且已经打开了该钓鱼网站的主页,降低了客户端的网络安全性。而采用前述方法或装置,在检测到当前域名解析请求被劫持后,防御系统将可信报文反馈至客户端,避免客户端接收到钓鱼网站IP地址,进一步会避免客户端打开钓鱼网站的主页,因此相对于现有技术,提高客户端的网络安全性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种DNS劫持的防御方法的工作流程示意图;
图2是本申请实施例提供的一种DNS劫持的防御方法中比较返回路径的工作流程示意图;
图3是本申请实施例提供的一种DNS劫持的防御方法中获取目标历史TTL字段值的工作流程示意图;
图4是本申请实施例提供的一种DNS劫持的防御方法中历史TTL字段值更新的工作流程示意图;
图5是本申请实施例提供的一种DNS劫持的防御方法的又一工作流程示意图;
图6是本申请实施例提供的一种DNS劫持的防御装置的结构示意图;
图7是本申请实施例提供的一种DNS劫持的防御装置中第一比较模块的结构示意图;
图8是本申请实施例提供的一种DNS劫持的防御装置中获取单元的结构示意图;
图9是本申请实施例提供的一种DNS劫持的防御装置中获取单元的又一结构示意图;
图10是本申请实施例提供的一种DNS劫持的防御装置的又一结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出了本申请实施例提供的一种DNS劫持的防御方法的工作流程示意图,具体可以包括如下步骤:
步骤101,防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文。
本申请实施例提供的DNS劫持的防御方法中,防御系统设置在客户端与DNS服务器之间,当客户端想要通过在浏览器输入域名访问目标主机时,客户端向DNS服务器发送一个带有目标主机域名的域名解析请求,在DNS服务器接收到域名解析请求后,反馈给客户端一个带有目标主机IP地址的应答报文。防御系统在应答报文反馈至客户端之前,先获取客户端将要接收的应答报文,并对该应答报文进行分析、处理,达到了主动防御的效果。其中,一个历史域名解析请求对应一个历史应答报文,因此历史应答报文的数量与历史域名解析请求的数量一致,均为预设数量。
步骤102,所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径。
本步骤中,返回路径指的是应答报文从发送端由路由器转发至接收端的过程中经历的转发次数,每个应答报文的返回路径记载在该报文的TTL字段中。
步骤103,如果所述当前返回路径与所述各个历史返回路径均不相同,所述防御系统比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成。
本步骤中,目标主机为客户想要通过域名解析访问的主机,目标主机的IP地址通常被加载在应答报文中answers部分的IP地址中。
本实施例中,如果所述当前返回路径与所述各个历史返回路径均不相同,可以确定当前域名解析请求存在被伪造DNS服务器劫持的可能。若当前域名解析请求未被劫持,DNS服务器会对当前域名解析请求进行解析,生成当前应答报文,其中当前应答报文中包含目标主机的IP地址,可认为是正常的当前应答报文。若当前域名解析请求被伪造DNS服务器劫持,伪造DNS服务器会根据当前域名解析请求生成的当前应答报文,该当前应答报文中将正常的当前应答报文中包含的目标主机的IP地址篡改为钓鱼网站的IP地址,因此,需要对当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址进行比较,从而判断目标主机的IP地址是否被篡改。
其中,可信DNS服务器为提供准确域名解析服务的服务器,通过将可信DNS服务器反馈的应答报文中目标主机的IP地址,与当前应答报文中目标主机的IP地址进行对比,能够确定当前域名解析请求是否被伪造DNS服务器劫持。这种情况下,可信DNS服务器有较多选择,例如谷歌域名解析服务器,该服务器的IP地址为8.8.8.8。
步骤104,如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,所述防御系统将所述可信应答报文反馈至客户端。
本实施例中,如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,可以确定当前域名解析请求已被伪造DNS服务器劫持。
另外,如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,可以确定当前域名解析请求未被伪造DNS服务器劫持。
通过本申请实施例公开的方案,能够通过比较当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址,对当前域名解析请求是否被伪造DNS服务器劫持进行判断,如果确定当前域名解析请求被伪造DNS服务器劫持,将可信应答报文反馈至客户端。避免了现有的DNS劫持防御方法中,当检测到一个DNS请求报文被劫持时,客户端已经收到了钓鱼网站的IP地址的情况,提升了网络安全性。
参照图2,示出了本申请实施例提供的一种DNS劫持的防御方法中比较返回路径的工作流程示意图。所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径,包括:
步骤201,所述防御系统获取所述各个历史应答报文中的目标历史TTL字段值。
本步骤中,TTL字段值即生存时间值(Time To Live,TTL),代表着一个报文从发送端由路由器转发至接收端的过程中经历的转发次数。
步骤202,所述防御系统比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同。
本步骤中,以目标历史TTL字段值为标准,通过对当前应答报文的TTL字段值与之进行比较,从而对当前应答报文中包含的返回路径与各个历史应答报文中包含的返回路径进行比较。
步骤203,若所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同,所述防御系统确定所述当前返回路径与所述各个历史返回路径均不相同。
本实施例中,若所述目标历史TTL字段值为t1、t2,所述当前应答报文的TTL字段值为t0,如果t0≠t1且t0≠t2,则所述当前应答报文的TTL字段值与所述目标TTL字段值均不相同,确定所述当前应答报文的返回路径与所述各个历史返回路径均不相同,则表明当前应答报文存在被伪造DNS服务器劫持的可能性。
通过本实施例公开的方案,对当前应答报文中TTL字段值与目标应答报文中TTL字段值的比较,能够达到判断所述当前应答报文中包含的返回路径是否发生变化的效果,进一步地,能够判断当前应答报文是否存在被伪造DNS服务器劫持的可能性。
参照图3,示出了本申请实施例提供的一种DNS劫持的防御方法中获取目标历史TTL字段值的工作流程示意图,所述防御系统获取所述各个历史应答报文中目标历史TTL字段值,包括:
步骤301,所述防御系统获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率。
本步骤中,所述各个历史应答报文与历史域名解析请求相对应,且一个历史域名解析请求对应一个历史应答报文,一个历史应答报文中包含一个历史TTL字段值,即一个历史应答报文对应一个历史TTL字段值。因此,所述历史TTL字段值的数量,与所述历史应答报文的数量,以及与所述历史域名解析请求的数量都一致,即为预设数量。
步骤302,所述防御系统选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
通过本实施例公开的方案,通过选取出出现频率排在前n位的历史TTL字段值为所述目标历史TTL字段值,能够确定的是,所述目标历史TTL字段值是根据按照预设时间间隔获得的历史应答报文中获取的,具有实时性,是一个可以被当作判断当前应答报文返回路径是否发生变化的良好判断标准。
另外,还可以通过其他方式确定目标历史TTL字段值,例如,可以预先设定一个出现频率的频率阈值,所述防御系统在统计所述各个历史应答报文中包含的TTL字段值的出现频率之后,将其中出现频率大于所述频率阈值的历史TTL字段值作为目标历史TTL字段值。
参照图4,示出了本申请实施例提供的一种DNS劫持的防御方法中历史TTL字段值更新的工作流程示意图,所述防御系统选取出现频率排在前n位的历史TTL字段值之后,所述方法还包括:
步骤401,在所述预设时间间隔后,判断所述历史TTL字段值的出现频率的排序是否发生变化。
步骤402,如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
通过本实施例公开的方案,通过历史TTL字段值的出现频率的排序的更新,对目标历史TTL字段值进行更新,保证防御系统对DNS劫持判断的实时性,从而提高防御系统对DNS劫持判断的准确性。
参照图5,示出了本申请实施例提供的一种DNS劫持的防御方法的又一工作流程示意图:
步骤501,防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文。
步骤502,所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径。
步骤503,如果所述当前返回路径与所述各个历史返回路径均不相同,所述防御系统比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成。
若是,即所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,执行步骤504的操作。若否,即所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,执行步骤505的操作。
步骤504,如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,所述防御系统将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。
本步骤中,通过将当前应答报文添加至所述DNS服务器的缓存列表,得到了记录着可信应答报文的缓存列表,如果客户端再次发送与当前域名解析请求一致的域名解析请求,为了避免再次发送的域名解析请求被伪造DNS服务器劫持,也避免防御系统的重复性工作,直接将所述缓存列表中与再次发送的域名解析请求相对应的应答报文反馈至客户端。
步骤505,如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,所述防御系统将所述可信应答报文反馈至客户端。
其中步骤501、步骤502、步骤503和步骤505的实施过程分别与图1中的步骤101、步骤102、步骤103和步骤104的实施过程相同,可互相参见,此处不再赘述。
通过本实施例公开的方案,在提升防御系统的工作效率的同时,保障网络的安全性。
参照图6,示出了本申请实施例提供的一种DNS劫持的防御装置的结构示意图,包括:
获取模块601,用于按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;
第一比较模块602,用于在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;
第二比较模块603,用于如果所述当前返回路径与所述各个历史返回路径均不相同,比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;
第一反馈模块604,用于如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,将所述可信应答报文反馈至客户端。
参照图7,示出了本申请实施例提供的一种DNS劫持的防御装置中第一比较模块的结构示意图,包括:
获取单元701,用于获取所述各个历史应答报文中的目标历史TTL字段值;
比较单元702,用于比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同;
判断单元703,用于在所述比较单元确定所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同之后,确定所述当前返回路径与所述各个历史返回路径均不相同。
参照图8,示出了本申请实施例提供的一种DNS劫持的防御装置中获取单元的结构示意图,包括:
统计子单元801,用于获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率;
选取子单元802,用于选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
参照图9,示出了本申请实施例提供的一种DNS劫持的防御装置中获取单元的又一结构示意图,所述更新子单元901,用于:如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
参照图10,示出了本申请实施例提供的一种DNS劫持的防御装置的又一结构示意图,所述装置还包括第二反馈模块1001,用于:如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的DNS劫持的防御方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。

Claims (10)

1.一种DNS劫持的防御方法,其特征在于,包括:
防御系统按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;
所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;
如果所述当前返回路径与所述各个历史返回路径均不相同,所述防御系统比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;
如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,所述防御系统将所述可信应答报文反馈至客户端。
2.根据权利要求1所述的DNS劫持的防御方法,其特征在于,所述防御系统在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径,包括:
所述防御系统获取所述各个历史应答报文中的目标历史TTL字段值;
所述防御系统比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同;
若所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同,所述防御系统确定所述当前返回路径与所述各个历史返回路径均不相同。
3.根据权利要求2所述的DNS劫持的防御方法,其特征在于,所述防御系统获取所述各个历史应答报文中目标历史TTL字段值,包括:
所述防御系统获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率;
所述防御系统选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
4.根据权利要求3所述的DNS劫持的防御方法,其特征在于,所述防御系统选取出现频率排在前n位的历史TTL字段值之后,所述方法还包括:如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,所述防御系统根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
5.根据权利要求1所述的DNS劫持的防御方法,其特征在于,在比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同之后,所述方法还包括:如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,所述防御系统将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。
6.一种DNS劫持的防御装置,其特征在于,包括:
获取模块,用于按照预设时间间隔,获取DNS服务器根据预设数量的历史域名解析请求生成的各个历史应答报文;
第一比较模块,用于在接收到根据当前域名解析请求生成的当前应答报文之后,比较所述当前应答报文中包含的当前返回路径与所述各个历史应答报文中包含的各个历史返回路径;
第二比较模块,用于如果所述当前返回路径与所述各个历史返回路径均不相同,比较所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址是否相同,所述可信应答报文由第三方可信DNS服务器根据当前域名解析请求生成;
第一反馈模块,用于如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址不同,将所述可信应答报文反馈至客户端。
7.根据权利要求6所述的DNS劫持的防御装置,其特征在于,所述第一比较模块,包括:
获取单元,用于获取所述各个历史应答报文中的目标历史TTL字段值;
比较单元,用于比较所述当前应答报文的TTL字段值与所述目标历史TTL字段值是否相同;
判断单元,用于在所述比较单元确定所述当前应答报文的TTL字段值与所述目标历史TTL字段值均不相同之后,确定所述当前返回路径与所述各个历史返回路径均不相同。
8.根据权利要求7所述的DNS劫持的防御装置,其特征在于,所述获取单元,包括:
统计子单元,用于获取到所述各个历史应答报文后,统计所述各个历史应答报文中包含的TTL字段值的出现频率;
选取子单元,用于选取出现频率排在前n位的历史TTL字段值,将所述出现频率排在前n位的历史TTL字段值作为所述目标历史TTL字段值,其中n≥2且为整数。
9.根据权利要求8所述的DNS劫持的防御装置,其特征在于,所述装置还包括更新子单元,用于:如果在所述预设时间间隔后,所述历史TTL字段值的出现频率的排序发生变化,根据变化后的排序对所述目标历史TTL字段值进行更新,其中n≥2且为整数。
10.根据权利要求6所述的DNS劫持的防御装置,其特征在于,所述装置还包括第二反馈模块,用于:如果所述当前应答报文中目标主机的IP地址与可信应答报文中目标主机的IP地址相同,将所述当前应答报文反馈至客户端,并将所述当前应答报文添加至所述DNS服务器的缓存列表,当客户端发送的域名解析请求与所述缓存列表中任一应答报文相对应时,直接将所述缓存列表中与所述域名解析请求相对应的应答报文反馈至客户端。
CN201810399613.5A 2018-04-28 2018-04-28 一种dns劫持的防御方法和装置 Active CN109413015B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810399613.5A CN109413015B (zh) 2018-04-28 2018-04-28 一种dns劫持的防御方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810399613.5A CN109413015B (zh) 2018-04-28 2018-04-28 一种dns劫持的防御方法和装置

Publications (2)

Publication Number Publication Date
CN109413015A CN109413015A (zh) 2019-03-01
CN109413015B true CN109413015B (zh) 2021-06-08

Family

ID=65463522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810399613.5A Active CN109413015B (zh) 2018-04-28 2018-04-28 一种dns劫持的防御方法和装置

Country Status (1)

Country Link
CN (1) CN109413015B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855636B (zh) * 2019-10-25 2020-12-08 武汉绿色网络信息服务有限责任公司 一种dns劫持的检测方法和装置
CN111031048A (zh) * 2019-12-17 2020-04-17 紫光云(南京)数字技术有限公司 一种dns劫持防御方法
CN113055405B (zh) * 2021-04-09 2022-03-08 哈尔滨工业大学(威海) 一种dns旁路抢答设备识别及溯源方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1954545A (zh) * 2003-03-03 2007-04-25 思科技术公司 利用tcp认证ip源地址
CN103581363A (zh) * 2013-11-29 2014-02-12 杜跃进 对恶意域名和非法访问的控制方法及装置
CN104052755A (zh) * 2014-06-26 2014-09-17 国家计算机网络与信息安全管理中心 基于云平台的dns欺骗攻击探测及定位的系统和方法
CN104243408A (zh) * 2013-06-14 2014-12-24 中国移动通信集团公司 域名解析服务dns系统中监控报文的方法、装置及系统
CN106603501A (zh) * 2016-11-22 2017-04-26 汉柏科技有限公司 一种域名劫持的防护方法、系统及防火墙设备
CN107920087A (zh) * 2017-12-14 2018-04-17 成都网丁科技有限公司 一种基于距离测量的dns劫持检测方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10735461B2 (en) * 2015-10-21 2020-08-04 Verisign, Inc. Method for minimizing the risk and exposure duration of improper or hijacked DNS records

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1954545A (zh) * 2003-03-03 2007-04-25 思科技术公司 利用tcp认证ip源地址
CN104243408A (zh) * 2013-06-14 2014-12-24 中国移动通信集团公司 域名解析服务dns系统中监控报文的方法、装置及系统
CN103581363A (zh) * 2013-11-29 2014-02-12 杜跃进 对恶意域名和非法访问的控制方法及装置
CN104052755A (zh) * 2014-06-26 2014-09-17 国家计算机网络与信息安全管理中心 基于云平台的dns欺骗攻击探测及定位的系统和方法
CN106603501A (zh) * 2016-11-22 2017-04-26 汉柏科技有限公司 一种域名劫持的防护方法、系统及防火墙设备
CN107920087A (zh) * 2017-12-14 2018-04-17 成都网丁科技有限公司 一种基于距离测量的dns劫持检测方法

Also Published As

Publication number Publication date
CN109413015A (zh) 2019-03-01

Similar Documents

Publication Publication Date Title
US20230336577A1 (en) Malware detection for proxy server networks
US10200402B2 (en) Mitigating network attacks
US9742795B1 (en) Mitigating network attacks
US9794281B1 (en) Identifying sources of network attacks
US10097566B1 (en) Identifying targets of network attacks
US10503899B2 (en) Cyberanalysis workflow acceleration
US8261351B1 (en) DNS flood protection platform for a network
Klein et al. Internet-wide study of DNS cache injections
CN109413015B (zh) 一种dns劫持的防御方法和装置
EP3340568A2 (en) Anycast-based spoofed traffic detection and mitigation
WO2018214853A1 (zh) 一种减小dns报文长度的方法、装置、介质及设备
US10397225B2 (en) System and method for network access control
CN107690004B (zh) 地址解析协议报文的处理方法及装置
CN106487807A (zh) 一种域名解析的防护方法和装置
Gashinsky et al. Operational neighbor discovery problems
CN110061998B (zh) 一种攻击防御方法及装置
US10432646B2 (en) Protection against malicious attacks
CN105939320A (zh) 处理报文的方法及装置
US11658995B1 (en) Methods for dynamically mitigating network attacks and devices thereof
CN108471427B (zh) 一种防御攻击的方法及装置
CN109962838B (zh) 垃圾邮件处理方法、装置、系统和计算机可读存储介质
US20160337394A1 (en) Newborn domain screening of electronic mail messages
US10560480B1 (en) Rule enforcement based on network address requests
US11153265B1 (en) Decoupling of IP address bindings and use in a distributed cloud computing network
JP2019186659A (ja) Dns水責め攻撃を防御する方法、プログラム、及び装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant