1中间人之arp劫持
1.1前言
相信有不少同学平时在网吧或者家里上网的时候会发生网络断开、网络超时、请求的路径不存在等问题,这些问题有时候刷新页面会被解决,但是对于一些针对掉电、断网等处理不好的应用来说,无非是致命的;用户体验也会非常不满意。这很多数原因是与arp劫持有关。
1.2 arp的概念
ARP是地址转换协议(Address Resolution Protocol)的英文缩写,它是一个链路层协议,工作在OSI 模型的第二层,在本层和硬件接口间进行联系,同时对上层(网络层)提供服务。我们知道二层的以太网交换设备并不能识别32位的IP地址,它们是以48位以太网地址(就是我们常说的MAC地址)传输以太网数据包的。也就是说IP数据包在局域网内部传输时并不是靠IP地址而是靠MAC地址来识别目标的,因此IP地址与MAC地址之间就必须存在一种对应关系,而ARP协议就是用来确定这种对应关系的协议
1.3 arp的表机制
ARP工作时,首先请求主机会发送出一个含有所希望到达的IP地址的以太网广播数据包,然后目标IP的所有者会以一个含有IP和MAC地址对的数据包应答请求主机。这样请求主机就能获得要到达的IP地址对应的MAC地址,同时请求主机会将这个地址对放入自己的ARP表缓存起来,以节约不必要的ARP通信。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除。
1.4 arp的攻击原理
局域网上的一台主机,如果接收到一个ARP报文,即使该报文不是该主机所发送的ARP请求的应答报文,该主机也会将ARP报文中的发送者的MAC地址和IP地址更新或加入到ARP表中。
ARP欺骗攻击就利用了这点,攻击者主动发送ARP报文,发送者的MAC地址为攻击者主机的MAC地址,发送者的IP地址为被攻击主机的IP地址。通过不断发送这些伪造的ARP报文,让局域网上所有的主机和网关ARP表,其对应的MAC地址均为攻击者的MAC地址,这样所有的网络流量都会发送给攻击者主机。由于ARP欺骗攻击导致了主机和网关的ARP表的不正确,这种情况我们也称为ARP中毒
1.5 arp劫持的分类
主机型ARP欺骗:即改变某台主机的网关的mac地址,使受害者流向网关的流量直接流经攻击者的电脑
网关型ARP欺骗:即改变某台主机的mac地址,使网关流经受害者的流量直接流向攻击者的电脑。
1.6网关的概念
从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。顾名思义,网关Gateway就是一个网络连接到另一个网络的“关口”。也就是网络关卡
1.7 arp劫持攻击的实验操作
1.7.1 背景
1、环境决定这里只能提供主机型arp劫持(即伪造网关的mac地址)的例子
2、环境类型为windows环境,由于图形化界面让大家能够更好的理解,这里不举例使用linux环境(其实知道原理后,方法都是一样的)
1.7.2 攻击前的准备
1、两台windows7系统的电脑,并且处于同一网络,ip地址分别为172.20.17.148(攻击者A的ip)、172.20.17.83(受害者B的ip)、网关为172.20.17.254
2、A电脑上安装cain工具(注意:安装前需要装wincap,安装教程见度娘)、wireshark抓包工具
3、浏览器同一使用谷歌浏览器
1.7.3 实验步骤
1、查看受害者B的arp列表,命令为arp -a,注意红圈部分网关的mac地址
2、查看攻击者A的mac地址,命令为ipconfig /all
3、打开攻击者的cain工具,在【配置】中选择网卡信息
4、打开图标嗅探和arp按钮
5、进入【嗅探器】下的【主机】,左击空白处,点击上栏中的加号,搜寻所有局域网中的ip地址
已在FreeBuf发表 0 篇文章
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022