1、什么是ARP?
ARP地址解析协议,为网络层协议,用于将MAC地址与IP地址建立映射关系。
2、ARP怎么工作的?
当发送端知道接收端的IP地址,但是不知道其对应的MAC地址,这个时候就需要请求其接收端MAC地址,于是发送端会广播的发送ARP Request包,所有收到请求数据包的设备都会进行处理,若非目标设备收到请求包后会直接进行丢弃操作,而目标主机不仅会记录发送端的IP地址和MAC地址放入自己的ARP缓存中,并同时进行响应,发送ARP Reply包给发送段,发送端接收后会记录目标端的IP地址与MAC地址,双方建立通信。
3、ARP攻击?
ARP攻击主要目的就是使网络无法正常通信,就是通过伪造IP地址和MAC地址实现ARP欺骗。
如下图:
(1) 当PC1在请求PC2的MAC地址时,交换机ARP缓存无PC2的对应条目则会广播发送Arp Request请求包进行请求询问;
(2) 如果我是PC3想攻击PC1,在收到PC1的Arp请求包的时候,我接收这个请求,同时回应一个虚假的回应包,告诉PC1我就是PC2。
(3) 然后PC1就会收到2条说自己是PC1的回应包,但是PC1并不知道到底哪个是真的,所以PC1会做出判断,并且判断后到达的为真。
(4) 那为了实现ARP欺骗,需要使PC3成为后到达的回应包。
(5) 因此需要使PC3连续不断的发送这样的回应包,总会把哪个正确的回应包覆盖掉,然后加入ARP缓存里面去。然后ARP缓存对应就会出错,本来应该发送到PC2的数据就会被发送到PC3那里。
ps:如果你需要以下或更多网工资料,可以找我要~
4、ARP欺骗方式
如下图:
方式有两种ARP欺骗,第一种是冒充主机,第二种是冒充网关,现在普遍都是双向欺骗的,就是欺骗PC1我是网关,欺骗网关我是PC1
如何实现让PC1不能上网?
首先以上图为例,我们假设PC1的IP地址为192.168.1.1,网关的IP地址为192.168.1.254,欺骗者的IP地址为192.168.1.2
(1) 若PC1想要上网,需要寻找网关MAC,于是PC1会发送广播ARP Request,欺骗者就会接收这个请求报文,并通过不断发送ARP应答给发送端,告诉PC1,我就是网关,192.168.1.254就是我,所以每次PC1要去往网关的时候数据都去了我这里。
(2) 我还会给网关发送一个ARP应答包,告诉网关,192.168.1.1的地址是指向我的,你只要将发送给这个地址的数据包都发给我就可以了!于是,网关就会更新自己的ARP缓存,将去PC1的数据包都发给我。
那么PC1就无法到达网关,网关也无法到达PC1,欺骗者将中间的通信路线给截断了,PC1数据无法到达网关,于是无法正常上网通信。
5、实验验证
实验目的:使用P2P终结者对局域网内的PC机(192.168.1.37)进行ARP攻击
(1)可知图网关地址192.168.1.1正确MAC地址14-14……;
(2)使用P2P软件设定规则,限制上网后;
由图可知去往网关的MAC地址被更改,主机数据无法到达网关,实现了ARP欺骗,访问网站失败,因为网关那边是错的。