防御ARP攻击和ARP欺骗并查找攻击主机

简介: 防御ARP攻击和ARP欺骗并查找攻击主机

 网络管理员在网络维护阶段需要处理各种各样的故障,出现最多的就是网络通信故障。除物理原因外,这种现象一般是ARP攻击或ARP欺骗导致的。

      无论是ARP攻击还是ARP欺骗,它们都是通过伪造ARP应答来实现的。

1.防御ARP攻击和ARP欺骗并查找攻击主机

下面介绍防御ARP攻击和ARP欺骗并查找攻击主机的方法。

 

   1.防御ARP攻击和ARP欺骗

       防御ARP攻击和ARP欺骗最有效的方法是进行ARP绑定,即分别在主机和网关进行ARP绑定,这样ARP表将不会受到虚假的ARP应答信息的影响而出现网络故障。如果网络中的主机较多,

进行ARP绑定的工作量十分大,并且主机ARP绑定后重启系统就需要重新绑定,所以,可以使用

ARP防火墙自动抵御。

                  如果网关是路由器而不是主机,则需要在网关设备上手动绑定

                  ARP。这是因为ARP攻击是双向的,只攻击网关就可以导致网络通信

                  瘫痪。

2.查找进行ARP攻击或ARP欺骗的主机

       当网络出现故障时,可通过ARP协议查到有问题主机的MAC地址,但是如果MAC地址没有记

录或攻击者使用的是虚假的MAC地址,那么应该如何找到问题主机呢?

       在网络出现ARP病毒时,可以知道中病毒主机的MAC地址(MAC地址可能是虚假的)。经查表

没有发现对应的主机,这说明ARP病毒可能伪造了一个虚假的MAC地址,这时要查找出问题主机

就要查看交换机的MAC地址表。

       由干交换机学习数据帧中的源MAC地址,因此使用show mac address-table命令可查看端口学习到的MAC 地址。从MAC 地址表中找到问题的MAC地址,从而判断发出此MAC地址数据帧的主机下挂在此端口;再查看下挂交换机的MAC地址表,最终确定一个端口下所有问题的主机。

      例如,出现问题的MAC地址是001fcaff1003,查找此MAC地址对应的端口。

       可以找到此MAC地址对应的端口。如果网络结构比较复杂,可能会有多个端口对应此MAC地

址,这时就要对接口下挂设备进行逐个查找。

2 使用Sniffer软件分析ARP协议

       上一节中我们对ARP引起的安全性问题进行了详细说明,也通过相关软件验证了结论。本节将通过Sniffer抓包工具软件对其底层原理进行深入剖析。

1.使用SnifferPro捕获数据包

       Sniffer Pro是一个能够在网络中捕获数据包的软件,通过它可以学习并理解TCP/IP的各种协议。那么如何使用Sniffer Pro抓包呢?

       启动Sniffer Pro后,单击图中的》按钮,出现如图所示的界面。

       当图中的曲按钮可用时,表示已捕获到数据。单击编按钮,再选择“解码”选项,出现

如图所示的界面,即可看到捕获到的数据包。

Sniffer Pro抓包界面

2.ARP协议原理分析

      ARP分组直接封装在数据链路层的帧中

ARP分组的封装

     下面通过抓包来看一下ARP分组和帧的结构。

     实验环境如图所示,在PC2上安装SnifferPro软件,以确保两台主机通信正常。

      首先在主机PC1上使用arp-d命令清除ARP缓存表,然后向主机PC2发送一个ICMP包。

     在 PC2 上用 Sniffer 抓到了两个ARP分组,分别如图

这里重点介绍几个字段。

      (1)操作代码(Opcode):1表示ARP请求,2表示ARP应答。

      (2)发送端硬件地址(Sender's hardware address):图中表示主机PC1的网卡地址。

      (3)发送端协议地址(Sender's protocoladdress):图中表示主机PC1的IP地址,

      (4)目标端硬件地址(Target hardware address):图中的000000000000表示主机PC1不

知道PC2的网卡地址,而图中表示主机PC1的网卡地址。

      (5)目标端协议地址(Targetprotocoladdress):图中表示主机PC2的IP地址。

      可以看到,主机PC2在ARP应答分组中已经包含了自己的物理地址,这样PC1就获得了PC2的

物理地址,下一步PC1就可以向PC2发送IP数据报文。

      接下来看一下数据链路层帧头的结构。

查看如图所示的ARP分组的DLC(数据链路层),看一下它的帧头结构,如图所示。

       这是PC2回应PC1的帧,其字段说明如下。

              目的地址(Destination):这里是指主机PC1的网卡地址。

              源地址(Source):这里是指主机PC2的网卡地址。

              类型(Ethertype):0806表示此帧所携带的数据是ARP分组。

       回顾之前讲的ARP攻击,那么如何通过Sniffer抓包来分析ARP攻击的原理呢?如图所示,攻击方主机(100.0.12)运行长角生网络监控机软件给网络中的主机发送网关的虚假MAC地址。现在其中一台“受害”主机(10.0.0.95)安装 Sniffer Pro,通过Sniffer抓包来分析ARP攻击的原理。

推荐步骤如下。

(1)捕获并查看报文。

       单击▶按钮,将开始捕获所有收到和发出的数据报文,等待一段时间之后,单击的按钮,查看分析结果。

(2)分析验证ARP攻击的原理。

       如图所示,ARP数据包来自MAC地址为005056C00002的主机。

 

       选中一个报文查看其具体内容,该数据报文属于ARP的回应包(ARPReply),其内容是网关

10.0.0.178的IP 地址对应的 MAC 地址为000C29943155,这个地址显然和真实的网关MAC

(000C29288DE9)不同。因此,如果本机将这个地址存入ARP缓存,就无法和网关通信。

3.ARP协议:

地址解析协议,就是根据ip地址获取局域网中主机的MAC地址

相关文章
|
2月前
|
网络协议 安全
使用映像劫持,ARP欺骗,autorun.inf等技术的AV杀手mgemtjk.exe,sb.exe,qodwjay.exe,smsovct.exe等1
使用映像劫持,ARP欺骗,autorun.inf等技术的AV杀手mgemtjk.exe,sb.exe,qodwjay.exe,smsovct.exe等1
|
24天前
|
监控 网络协议 安全
中间人公鸡之ARP欺骗
中间人公鸡之ARP欺骗
|
26天前
|
缓存 网络协议 IDE
主动信息搜集:基于ARP的主机发现
主动信息搜集:基于ARP的主机发现
24 0
|
3月前
|
网络协议
卧槽!放个假,交换机受到ARP攻击了,怎么破?
卧槽!放个假,交换机受到ARP攻击了,怎么破?
|
3月前
|
缓存 监控 网络协议
中间人攻击之ARP欺骗
【8月更文挑战第13天】
83 1
|
3月前
|
网络协议 网络虚拟化
遇到ARP欺骗攻击,咋整?别慌!这3招教制服它!
遇到ARP欺骗攻击,咋整?别慌!这3招教制服它!
190 0
|
5月前
|
存储 缓存 网络协议
ARP欺骗与攻击原理
ARP欺骗与攻击原理
164 0
|
6月前
|
缓存 监控 网络协议
面对ARP攻击,怎么做好主机安全,受到ARP攻击有哪些解决方案
ARP攻击的具体原理主要是基于ARP(Address Resolution Protocol,地址解析协议)的漏洞进行欺骗和攻击。ARP协议是TCP/IP协议族中的一个重要协议,用于实现IP地址到MAC地址的映射。然而,由于ARP协议在设计时缺乏必要的安全验证机制,使得攻击者有机会进行欺骗和攻击。
|
1天前
|
网络协议 安全 NoSQL
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
|
26天前
|
缓存 网络协议 Linux
Python渗透测试之ARP毒化和协议应用
Python渗透测试之ARP毒化和协议应用
25 0