学习前准备
一台kali攻击机、一台windows攻击对象(都可以用vmare或virtualbox创建)
1、图片为攻击对象,windows2008服务器
2、图片为kali攻击机,kali2020版本
3、使用Ettercap来进行DNS的内网劫持
Ettercap工具介绍:它是一个综合性的中间人攻击工具,可以进行ARP欺骗DNS劫持等常见的中间人攻击。
使用方法:
3.1
准备一个欺骗的页面,当DNS劫持成功后会在对方上网打开网页时显示我们准备好的欺骗页面
,首先我们需要先启动apace2服务使网页生效
systemctl start apache2
cd /var/www/html/
如图为我准备好的页面
打开ettercap工具配置文件
leafpad /etc/ettercap/etter.dns
添加如图所示kali攻击机的ip地址,*代表所有域名
更改完毕后 ctrl+s保存退出
终端输入如图所示命令打开ettercap工具
ettercap -G
点击确定后弹出GUI界面,页面功能介绍
(1)Targets
Current targets 显示已经选择好的主机目标
Select targets
手动输入要选择的主机目标地址
Protocol
选择要欺骗的协议
Reverse matching
反向匹配
Target 1 与Target 2 作用相反
Wipe targets
重置已经选择好的主机
(2)Hosts
(3)View
Connections
Profiles
显示主机信息
Statistics
统计数据包
解析IP地址 Resolve IP address
对嗅探到的IP地址进行下一步解析
等等…
3.2
开始,选择主机列表,将网关添加到列表1
目的地址添加到列表2
选择如图所示图标,点击ARP欺骗
点击OK后,选择plugin模块,管理模块
双击,选中dns_spoof欺骗
点击开始按钮,开始攻击
如果攻击成功,在靶机系统上浏览任何网站都会被指向我们提前设定好的页面。
下面解释下攻击原理:
计算机通信需要对方的ip,但是在最底层的物理层传输上传输的二进制和MAC帧,将ip解析成MAC地址的就是ARP缓存表,这个缓存每个二层设备及以上都有
如图,主机A和B通信知道主机A的ip但是ARP缓存表没有主机B的mac地址,于是他会在局域网广播询问主机B的MAC,主机B会应答自己的MAC,每个主机的ip是不固定的,所以设备的arp缓存表也要每隔一段时间都会更新发起广播,这种方式有一个bug,就是如果主机C不停的应答自己的MAC,这是主机A中就会以为主机C是主机B,攻击者就可以对这些数据进行截获,被攻击者请求百度的时候,攻击者截获请求并解析成自己的ip,并配置好自己的伪造页面,被攻击者打开的就是你伪造的页面,这就是整个的原理了。