DNS原理及局域网DNS劫持实验

DNS原理及局域网DNS劫持实验

1. DNS原理

1.1 DNS是什么?

DNS(Domain Name System)即域名系统。我们常说的DNS是域名解析协议。

1.2 为什么需要DNS?

DNS协议提供域名到IP地址之间的解析服务。计算机既可以被赋予IP地址,也可以被赋予主机名和域名。用户通常使用主机名或域名来访问对方的计算机,而不是直接通过IP地址访问。因为与IP地址的一组纯数字相比,用字母配合数字的表示形式来指定计算机名更符合人类的记忆习惯。但要让计算机去理解名称,相对而言就变得困难了。因为计算机更擅长处理一长串数字。
为了解决上述的问题,DNS服务应运而生。DNS协议提供通过域名查找IP地址,或逆向从IP地址反查域名的服务。

1.3 DNS工作原理
1.3.1 DNS的递归和迭代

先看图DNS工作原理

  • **本地DNS:**即host
  • **根服务器:**根服务器主要用来管理互联网的主目录。全世界只有13个根逻辑服务器节点,其中10个设置在美国,另外3个分别在英国、瑞典、日本。
  • **顶级域名服务器:**顶级域名服务器一般用于存储.com、.edu、.cn等顶级域名
  • **递归服务器:**递归服务器可以理解为存储着官方域名解析授权的授权服务器。一般存储着这个网络中域名和IP地址的解析关系。试想一下,如果每个用户在上网的时候都向授权服务器发送请求,那授权服务器必然承受不住,所以就有了缓存服务器。
  • **缓存服务器:**缓存服务器相当于授权服务器的代理。用户在每次上网的时候,域名解析的请求都是发给缓存服务器的。缓存服务器经过迭代查询后,将域名和IP的解析表存储在本地,等后续再有用户请求相同的域名时,就会直接答复,不再请求。
1.3.2 DNS解析过程
  • DNS客户端查询先采用递归方式,先确认本地DNS文件是否有域名和IP的解析表。如果没有,则将请求发送给缓存服务器,缓存服务器判断本地是否有这个域名的解析缓存。
  • 如果本地没有缓存,就会把域名发送到根服务器。根服务器收到www.baidu.com请求后,会判断.com是谁授权管理,并返回.com所在的顶级域名服务器IP地址。
  • 缓存服务器继续向顶级域名服务器发送www.baidu.com的解析请求,顶级域名服务器收到请求后,会返回下一级.baidu.com的递归服务器IP地址。
  • 缓存服务器继续向递归服务器发送www.baidu.com的解析请求,递归服务器收到请求后,返回www.baidu.com的解析地址。如果域名层级较多,则递归服务器也会存在多级。
  • 缓存服务器得到www.baidu.com的解析IP后,将IP地址发送给客户端,同时在本地存储。
  • 后续一段时间内,当有客户端再次请求www.baidu.com的域名解析时,缓存服务器直接回应解析的IP地址,不再重复询问。

2. 局域网DNS劫持实验

2.1 实验原理

本质上是利用了ARP欺骗原理。攻击机通过ARP欺骗伪装成缓存服务器,将客户端的DNS请求返回指定的IP地址。

2.2 实验过程
2.2.1 实验环境

kali-10.0.0.200(攻击机),win10-10.0.0.128(靶机),网关-10.0.0.2

2.2.2 实验工具

Ettercap

2.2.3 配置文件

修改etter.dns

 vim /etc/etter.dns`

在这里插入图片描述

2.2.4 配置被劫持后用户打开的web页面

将编辑好的网页文件放在/var/www/html/下
在这里插入图片描述开启apche服务
在这里插入图片描述

2.2.5 开启Ettercap
ettercap -G

依次选择sniff->unified sniff ,
然后打开hosts->scan for hosts。
如果扫描不到主机,可以选择Targets->Enter Targets,手动添加目标主机(需要同时添加IP和MAC)。
我这里将靶机添加到Target1,网关添加到Target2。
在这里插入图片描述然后点击Mitm->ARP Posining,
在这里插入图片描述然后在plugin->manage plugin里面双击dns spoof 来激活这个插件,
在这里插入图片描述
这个时候,靶机就已经处于被劫持的状态了 。
在靶机上ping百度的域名,返回的主机是攻击机的IP。
在这里插入图片描述
通过浏览器访问百度,返回的页面是在攻击机上配好的页面。
在这里插入图片描述
至此,DNS劫持成功。

3.总结

局域网DNS劫持本质上是利用ARP欺骗原理进行的中间人攻击。只要做好ARP防护,即可避免此类攻击。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值