DNS欺骗
5.5.1 DNS工作原理
DNS服务器里有一个“DNS缓存表”。
本地域名服务器、授权域名服务器、根域名服务器、顶级域名服务器
DNS默认使用UDP,当大于512字节时,用TCP连接。端口号53。
5.5.2 DNS欺骗原理
攻击者冒充域名服务器的欺骗行为。把查询到的IP地址设为攻击者的IP地址。
如果DNS服务器缓存中有相应记录,就没必要再查上层服务器。所以实现DNS欺骗关键在于,在缓存表中构造一个伪造的缓存记录。
目前有两种实现办法:
- 攻击者可以控制本地域名服务器
- 攻击者无法控制任何DNS服务器
但他可以控制该服务所在网络的某台主机。
首先,黑客要冒充某个域名服务器的IP地址。
其次,黑客要能预测目标域名服务器所发送DNS数据包的ID号。
DNS数据是通过UDP协议传递,DNS服务器之间进行域名解析通信时,用的都是53号端口。而且,两台服务器之间可能进行多个通信过程。
于是使用DNS报文头部的ID域用来区别不同会话过程。请求方和应答方只有使用相同的ID,才会标示是同一个会话。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0rwJSILO-1585798319682)(ppt114)]
5.5.3 DNS欺骗的局限性及防御
DNS欺骗主要存在两点局限性:
- 攻击者不能替换缓存中已经存在的记录
- 缓存会刷新
在