解决linux ARP攻击

一、知识背景
1.什么是arp
ARP,即地址解析协议,实现通过IP地址得知其物理地址。在TCP/IP网络环境下,每个主机都分配了一个32位的IP地址,这种互联网地址是在网际范 围标识主机的一种逻辑地址。为了让报文在物理网路上传送,必须知道对方目的主机的物理地址。这样就存在把IP地址变换成物理地址的地址转换问题。以以太网 环境为例,为了正确地向目的主机传送报文,必须把目的主机的32位IP地址转换成为48位以太网的地址。这就需要在互连层有一组服务将IP地址转换为相应 物理地址,这组协议就是ARP协议。
2、arp工作原理
在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。

以 主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地 址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络 上发送一个广播,A主机MAC地址是“主机A的MAC地址”,这表示向同一网段内的所有主机发出这样的询问:“我是192.168.1.5,我的硬件地址 是"主机A的MAC地址".请问IP地址为192.168.1.1的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时, 才向主机A做出这样的回应:“192.168.1.1的MAC地址是00-aa-00-62-c6-09”。这样,主机A就知道了主机B的MAC地址,它 就可以向主机B发送信息了。同时A和B还同时都更新了自己的ARP缓存表(因为A在询问的时候把自己的IP和MAC地址一起告诉了B),下次A再向主机B 或者B向A发送信息时,直接从各自的ARP缓存表里查找就可以了。ARP缓存表采用了老化机制(即设置了生存时间TTL),在一段时间内(一般15到20 分钟)如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

3、什么是arp攻击
ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
RARP的工作原理:
1. 发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;
2. 本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;
3. 如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;
4. 如果不存在,RARP服务器对此不做任何的响应;
5. 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。
6.如果在第1-3中被ARP病毒攻击,则服务器做出的反映就会被占用,源主机同样得不到RARP服务器的响应信息,此时并不是服务器没有响应而是服务器返回的源主机的IP被占用。

二、如何判断是受到arp攻击?
知道了arp攻击是怎么回事,就很容易判断是否受到arp攻击。arp是有机器伪装成了网关的mac,所以浏览受害机器的arp缓存肯定可以发现一台或者多台机器与网关有相同的mac地址。如果真的有这种情况,就可以判断是arp攻击。具体:
[email protected]:~$ arp -a
? (10.91.11.58) 位于 00:14:2a:44:55:72 [ether] 在 eth0
? (10.91.11.73) 位于 00:1e:ec:77:95:9d [ether] 在 eth0
? (10.91.255.254) 位于 00:14:2a:44:55:72 [ether]  在 eth0
(或者:
[email protected]:~$ cat /proc/net/arp 
IP address       HW type     Flags       HW address            Mask     Device
10.91.11.58      0x1         0x2         00:14:2a:44:55:72     *        eth0
10.91.11.73      0x1         0x2         00:1e:ec:77:95:9d     *        eth0
10.91.255.254    0x1         0x2         00:14:2a:44:55:72     *        eth0

看,10.91.11.58与网关有相同的mac地址(实际是10.91.11.58对寻找10.91.255.254的mac地址的广播进行相应,并且欺骗广播,说10.91.255.254的mac地址是 00:14:2a:44:55:72,于是本应发给10.91.255.254的包发给了58,正常的网络通信就受到影响了)~判断58可能中了arp攻击病毒~
我们看看网关的真实mac地址:
[email protected]:~$ arping 10.91.255.254
WARNING: interface is ignored: Operation not permitted
ARPING 10.91.255.254 from 10.91.11.150 eth0
Unicast reply from 10.91.255.254 [00:D0:03:C5:9B:FC]  3.525ms
Unicast reply from 10.91.255.254 [00:D0:03:C5:9B:FC]  0.878ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  59.480ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  59.660ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  51.857ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  56.920ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  54.042ms
Unicast reply from 10.91.255.254 [00:14:2A:44:55:72]  55.230ms
^CSent 18 probes (1 broadcast(s))
Received 8 response(s)
看,我们受到的响应中有网关正确的响应(第一行),也有其他主机的arp欺骗响应(第三行后面都是~)

三:解决:arp绑定
1.首先,清空arp缓存。
#arp -d 网关ip

2.找到网关真实mac地址。
#arping 网关ip

3.绑定mac地址
#arp -s 网关ip 网关真实mac

如果是暂时性arp欺骗攻击至此即可,如果网络中常有此问题,继续以下:
4、如下命令建立 /ect/ip-mac 文件
echo ‘网关IP地址 网关MAC地址‘ >/ect/ip-mac
通过下面的命令查看文件是否写的正确
more /ect/ip-mac

5、arp -f /ect/ip-mac 加载静态绑定arp记录。

6、如果想开机自动绑定

echo ‘arp -f /ect/ip-mac‘ >> /etc/rc.d/rc.local

时间: 2024-08-02 10:56:48

解决linux ARP攻击的相关文章

linux arp攻击解决方法 测试很有效

公司有台centos服务器中了arp攻击,严重影响业务,测试了很多方法都没解决,机房技术也没法处理. 通过下面方法,可以有效抵挡arp攻击. 1.环境 centos6.4 2.执行 arping -U -I em1 -s 113.105.1.20 113.105.1.1 说明: em1网卡的IP是113.105.1.20,113.105.1.1是网关地址,把上面命令放到rc.local 完成!

SylixOS ARP攻击解决办法

1.ARP攻击介绍 1.1 ARP协议 ARP(地址解析协议)位于数据链路层,主要负责将某个IP地址解析成对应的MAC地址. 1.2 ARP原理 当局域网中的某台机器A要向机器B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输.如果未找到,则A广播一个ARP请求报文(携带机器A的IP地址,物理地址),请求B的IP地址回答对应的MAC地址.局域网所有机器包括B都收到ARP请求,但只有机器B识别自己的IP地址,于是向A主机发回一个ARP响应报文.其中就包含有B

浅谈局域网ARP攻击的危害及防范方法(图)

浅谈局域网ARP攻击的危害及防范方法(图)   作者:冰盾防火墙 网站:www.bingdun.com 日期:2015-03-03   自 去年5月份开始出现的校内局域网频繁掉线等问题,对正常的教育教学带来了极大的不便,可以说是谈“掉”色变,造成这种现象的情况有很多,但目前最常见的是 ARP攻击了.本文介绍了 ARP攻击的原理以及由此引发的网络安全问题,并且结合实际情况,提出在校园网中实施多层次的防范方法,以解决因ARP攻击而引发的网络安全问题,最后介 绍了一些实用性较强且操作简单的检测和抵御攻

网络转载:局域网安全:解决ARP攻击的方法和原理

局域网安全:解决ARP攻击的方法和原理 IT世界网2006-01-26 10:17 [故障原因] 局域网内有人使用ARP欺骗的木马程序(比如:传奇盗号的软件,某些传奇外挂中也被恶意加载了此程序). [故障原理] 要了解故障原理,我们先来了解一下ARP协议. 在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的.ARP协议对网络安全具有重要的意义.通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞. ARP协议是“Address Re

kali linux下的arp攻击

这是我第一篇博客,写的不好请谅解 ____________________________(分割线)_______________________________ 在kali linux系统下自带工具中有个arp神器叫做"arpspoof",废话不多说,直接上手 此次实验环境为靶机与FTP服务器之间的arp中间人 靶机 ip:10.90.100.53   mac:04:69:f8:db:75:6b 中间人kali ip:10.90.100.242   mac:00:0c:29:a7:1

ARP攻击及原理

Arp介绍 1.1 Ip地址解析mac地址的过程 主机10.1.1.1想发送数据给主机10.1.1.2,检查缓存,发现没有10.1.1.2的mac地址 1.先检查自己的缓存看有没有,没有的话发送广播,所有主机都可以接收到 2..2收到后将mac地址私聊给10.1.1.1,恢复单播给10.1.1.1 .1收到后并将mac地址存入缓存 1.1.1 命令行测试 Arp -a 显示所有缓存 Arp -d清除所有缓存 Arp相应过程 1.1.2 Linux下arp查看方法 查看 [[email prote

基于Layer2交换网络的ARP攻击防御

故障现象  客户企业反映"常有部分人不能上网",且毫无规律.经了解整栋大楼物理拓扑结构为"接入-汇聚-网关",整个交换网络工作在二层(Layer2)模式 ,客户端基本采用固定IP,接入层交换机华为二层1700/1720系列,核心汇聚为华为5700 千兆三层(Layer3)交换. 排查步骤 STEP1:搜集 登陆网关(H3C-F1000-c防火墙)查看安全日志,幸运的是很快就发现类似"duplicate ip 192.168.1.1.../ARP"

信息安全技术实验二 网络扫描实验+ARP攻击

一.实验目的及要求 1. 了解扫描技术的工作原理: 2. 加深对网络底层的理解: 3. 掌握常用扫描工具的基本用法: 4. 学习扫描器程序设计的基本方法.(以后再补充) 二.实验环境及相关情况(包含使用软件.实验设备.主要仪器及材料等) 1.实验设备:微型计算机: 2.软件系统:Windows 7操作系统,Nmap. 三.实验内容 1. Windows平台下Nmap的安装. 2. Windows平台下Nmap的使用. 3. Windows平台下查看本地端口. 4. 端口扫描的防范. 四.实验步骤

内网ARP攻击

ARP攻击内网的网络现象: 突发性瞬间断线,快速连上,期间上网速度越来越慢,一段时间又瞬间断线. ARP攻击内网诊断: 1.断线时(ARP攻击木马程序运行时)在内网的PC上执行ARP –a命令,看见网关地址的mac地址信息不是路由器的真实mac地址: 2.内网如果安装sniffer软件的话,可以看到ARP攻击木马程序运行时发出海量的ARP查询信息. 内网被攻击原因: ARP攻击木马程序运行时,将自己伪装成路由器,所有内网用户上网从由路由器上网转为从中毒电脑上网,切换过程中用户会断一次线.过程用户