一 甚么是DNS
DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心办事,它作为可以将域名和IP地址彼此映照的一个漫衍式数据库,可以或许令人更便利的拜候互联网,而不消往记住可以或许被机械直接读取的IP数串。
DNS 域名布局
凡是 Internet 主机域名的一般布局为:主机名.三级域名.二级域名.顶级域名。 Internet 的顶级域名由 Internet收集协会域名注册查询负责收集地址分派的委员会进行挂号和治理,它还为 Internet的每台主机分派独一的 IP 地址。全球现有三个大年夜的收集信息中间: 位于美国的 Inter-NIC,负责美国及其他地区; 位于荷兰的RIPE-NIC,负责欧洲地区;位于日本的APNIC ,负责亚太地区。
DNS查询报文
DNS应对报文
DNS 的解析流程
全球有良多的域名需要解析,这些不成能都在一台办事器上解析,那就太慢了。dns解析采取了树形布局的解析流程。
在上面的解析流程的前面其实还有一步的,系统在发出dns解析之前会先看看本地是不是保留了相干域名的解析,假定有的话会节流会多的时候。该文件保留在C:\Windows\System32\drivers\etc\hosts,文件保留了本地dns解析的相干内容,以下:
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
二 DNS相干的报复打击类型
1 针对DNS办事器的DDOS报复打击
第一类 基于主机耗尽型的dns查询拒尽办事报复打击
这类报复打击就是想受害者DNS办事器发送大年夜量的dns解析要求包,因为DNs办事器美好查询的次数有限,使得它忙不外来造成拒尽办事报复打击。
第二类 基于宽带耗尽型的DNS反弹式拒尽办事报复打击(DNS reflector attacks,又称DNS amplification attacks)
道理:大年夜量主机捏造受害者ip向胡亮王上的大年夜量开放式递回DNS办事器发送NDS查询要求包。因为开放递回DNS办事器其实不合弊端要求包进行地质真实性验证,是以城市进行应对,如许受害着将同时领遭到大年夜量的DNS要求应对包,梗塞受害DNS办事器的收集,最终构成拒尽办事报复打击。
甚么是开放递回DNS办事器?
开放递回办事器是指撑持递回查询,同时对倡议递回查询要求的客户端不进行身份验证的DNS办事器。
以下图:
2 针对用户的DNS劫持
简单的说甚么是dns劫持呢?
就是本来你想拜候携程的网站www.ctrip.com,成果输进域名后返回给你的是百度的办事器ip,那么天然显示在浏览器中的也就是百度的页面。
那么我可以按照上面介绍的dns解析流程来看看哪些处所会导致返回给你的ip是弊端的。
a 起首是dns办事器地址被劫持
好比你的路由器中的dns办事器地址被点窜成歹意的dns办事器。那就一切都垮台了,你拜候的任何域名都被解析成其他的地址。
可是这类环境通常为不会产生的, 因为歹意人员登录不了的路由器点窜不了dns办事器地址,就更点窜不了你本机的dns设置。不外当几个小的缝隙连络在一路的时辰就成了大年夜的缝隙。好比之前呈现过的路由器劫持事务:
缝隙本身依托3个部门:
tp-link路由器发现存在csrf缝隙。
有些用户的路由器没有更改用户名和暗码,利用了默许的用户名和暗码;或浏览器记实了路由器的登录状况。
firefox和chrome等浏览器撑持Http Authentication。
这些连络在一路就导致了这么一个报复打击流程:
歹意人员机关了一个歹意的web页面,如www.foo.com/text.html,页面的功能是主动登录路由器并点窜dns地址。
歹意人员机关一个url发送给被害者,当被害者点击这个链接的时辰就拜候了歹意页面,就点窜了路由器的dns地址。
接下来就简单了,歹意人员可以将你想要拜候的网站域名如www.ctrip.com解析到肆意其他的地址如1.1.1.1等。(当然他不会解析到这里,要有经济好处,或告白或ctrip奉行联盟url等。)
下面附上tplink的小demo:
//点窜dns
//
登录
b hosts文件被点窜
按照解析流程来看,假定要解析www.ctrip.com的ip,系统会起首拜候hosts文件,看看有没有相干的绑定:
假定有以下记实:
1.1.1.1 www.ctrip.com
你们系统就不会将www.ctrip.com发送给dns办事器往解析,直接就将它解析为1.1.1.1。
c DNS办事器缓存中的映照关系被点窜,又称缓存投毒报复打击
系统检测到hosts文件中没有响应的域名的解析的时辰就会发送给本地dns办事器进行解析,解析之前会先查看缓存中是不是存在,假定没有,再将解析要求发送给下一个dns办事器。成果返回后将该域名的解析成果保留到缓存中,便利下一次的解析。
针对缓存中的解析的报复打击有2种:
传统的DNS缓存投毒报复打击:歹意人员向受害DNS办事器发送域名的解析要求,然后抢在权势巨子办事器应对前捏造应对包发送给受害办事器。如许弊端的解析记实就保留到了缓存中,那么接下来缓存时候内所有该域名的解析就都是弊端了。这类报复打击捏造的是答复资本记实,报复打击时候很短,效力低。
kaminsky缓存投毒报复打击:歹意人员发送近似这类的查询要求www24385.ctrip.com到dns办事器,抢在权势巨子应对前捏造应对包发送给dns办事器。它点窜的是授权资本记实,可以大年夜量的测验测验。
d 进侵dns办事器,点窜此中的数据库记实。
这类就是比较直接暴力的编制了,当然也是最坚苦的。