DNS的攻击

DNS 相关的攻击类型1 针对DNS 服务器的DDOS 攻击第一类 基于主机耗尽型的dns 查询拒绝服务攻击这类攻击就是想受害者DNS 服务器发送大量的dns 解析请求包,由于DNs 服务器美妙查询的

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 服务器,修改其中的数据库记录。

这种就是比较直接暴力的方法了,当然也是最困难的。

标签: