一、DNS工作原理
1、DNS:域名服务协议,提供主机域名和IP地址之间的转换。
属应用层协议,端口号为53。DNS数据通过无连接的UDP协议传递
2、过程:
被
二、DNS欺骗原理原理及实现
1、DNS欺骗原理
当客户主机向本地DNS服务器查询域名的时候,如果服务器的缓存中已经有相应记录,DNS服务器就不会再向其他服务器进行查询,而是直接将这条记录返回给用户。
2、DNS欺骗实现方法
当主机向某一个DNS服务器发送解析请求时,攻击者冒充被请求方,向请求方返回一个被篡改了的应答,从而请求方访问了被篡改后的IP地址
3、实现步骤
第一种情况:
(1)攻击者控制了某个域名服务器
直接在其数据库增加一条记录,将攻击者目标的域名指向攻击者的IP地址。
第二种情况:
(2)攻击者控制某个服务器所在网络的某台主机
首先,攻击者要冒充某个域名服务器的IP
其次,要预测目标服务器所发送的DNS数据包的ID号(关键)
两种方法:
- 在某个拥有DNS服务器的网络中嗅探
向远程DNS服务器发送一个对本地域名的解析请求,远程DNS服务器一定会转到本地域名服务器上,于是攻击者通过远程服务器向本地服务器发送的请求包就能知道id号了
- 无法监听某个拥有DNS服务器的网络
攻击者X向目标DNS服务器B发送一个不存在的域名的请求解析,由于目标DNS服务器B在缓存中找不到对应关系,进而向另一个DNS服务器C请求。
此时,攻击者冒充DNS服务器C向目标DNS服务器发送多个应答包,将源地址设为C的IP地址,伪造域名J的IP地址为X的IP地址,数据包ID号依次增加。
然后,攻击者再向DNS服务器B发送对域名J的解析请求,有返回结果表示攻击者猜测的ID号在正确的范围内;否则可再次尝试。
三、DNS欺骗攻击的防御
1、局限性
(1)攻击者不能替换缓存中已存在的记录
(2)DNS服务器缓存时间刷新
2、防御措施
配置时应注意:
(1)使用最新版本的DNS服务器软件,及时安装补丁
(2)关闭DNS服务器的递归功能
(3)限制区域传输范围
(4)限制动态更新
(5)采用分层的DNS体系结构