1 交换机端口镜像
1.1 问题
本例要求快速构建交换环境,在交换机 LSW1 上配置端口镜像,相关说明如下。
1)LSW1 的 Ethernet 0/0/1 为镜像口,Ethernet 0/0/3 为观察口
2)当 Client1 访问 Server1 的网站时,可以对 LSW1 的 E0/0/3 口抓包分析
1.2 方案
使用 1 台客户机、1 台服务器,1 台 PC 机,如图 - 1 所示。
- 客户机 Client1,IP 地址 192.168.10.100/24
- 服务器 Server1,IP 地址 192.168.10.200/24,启用 HTTP 服务器
- PC 机 PC1,IP 地址 192.168.10.111/24
图 - 1
需要注意:由于 eNSP 模拟器的原因,在 eNSP 环境中的交换机配置端口镜像以后,通过观察口抓包看不到效果。因此,本例只测试在交换机上配置端口镜像的方法。
1.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:创建并部署实验环境
1)Client1 的设置
如图 - 2 所示。
图 - 2
2)Server 1 的设置
如图 - 3 所示。
图 - 3
简单配置一个网站服务,如图 - 4 所示。
图 - 4
3)PC1 的设置
如图 - 5 所示。
图 - 5
步骤二:在交换机 LSW1 上配置端口镜像
1)简单配置设备名
1. <Huawei>system-view
2. Enter system view, return user view with Ctrl+Z.
3. \[Huawei\]sysname LSW1
4. \[LSW1\]
2)配置端口镜像
1. \[LSW1\] observe-port 1 interface Ethernet 0/0/3
2. \[LSW1\] interface Ethernet 0/0/1
3. \[LSW1-Ethernet0/0/1\] port-mirroring to observe-port 1 both
3)保存配置
1. \[LSW1-Ethernet0/0/1\]quit
2. \[LSW1\]quit
3. <LSW1>save
4. The current configuration will be written to the device.
5. Are you sure to continue?\[Y/N\]y
6. Info: Please input the file name ( *.cfg, *.zip ) \[vrpcfg.zip\]:
7. Nov 26 2021 09:33:07-08:00 LSW1 %%01CFM/4/SAVE(l)\[6\]:The user chose Y when decid
8. ing whether to save the configuration to the device.
9. Now saving the current configuration to the slot 0.
10. Save the configuration successfully.
11. <LSW1>
步骤三:针对交换机 LSW1 的观察口抓包分析
1)启用抓包
右击交换机 LSW1,选择数据抓包 ->Ethernet 0/0/3,如图 - 6 所示,只会看到一些 STP 生成树通信的包。
图 - 6
2)从 Client1 上访问 Server1
从 Client1 上通过 HTTP Client 访问 Server1 的http://192.168.10.200/index.html,如图 - 7 所示。
图 - 7
3)查看抓包结果(无数据,模拟器原因)
立即查看观察口的抓包结果,实际环境应该可以看到 Client1 访问 Server1 的 HTTP 通信数据包(模拟器环境看不到),如图 - 8 所示。
图 - 8
2 路由器端口镜像
2.1 问题
本例要求快速构建路由环境,在路由器 AR2 上配置端口镜像,相关说明如下。
在路由器 AR2 上配置端口镜像。
1)AR2 的 GE 0/0/0 为镜像口,GE 0/0/2 为观察口
2)当 Client1 访问 Server1 的网站时,可以对 AR2 的 GE 0/0/2 口抓包分析
2.2 方案
使用 1 台客户机、1 台服务器,1 台 PC 机,如图 - 9 所示。
- 客户机 Client1,IP 地址 192.168.10.100/24,默认网关 192.168.10.1
- 服务器 Server1,IP 地址 192.168.20.200/24,默认网关 192.168.20.1,启用 HTTP 服务器
- PC 机 PC2,IP 地址 192.168.30.111/24,默认网关 192.168.30.1
图 - 9
2.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:创建并部署实验环境
1)Client1 的设置
如图 - 10 所示。
图 - 10
2)Server 1 的设置
如图 - 11 所示。
图 - 11
简单配置一个网站服务,如图 - 12 所示。
图 - 12
3)PC1 的设置
如图 - 13 所示。
图 - 13
步骤二:在路由器 AR2 上配置端口镜像
1)简单配置设备名
1. <Huawei>system-view
2. Enter system view, return user view with Ctrl+Z.
3. \[Huawei\]sysname AR2
4. \[AR2\]
2)为路由器配置接口
1. \[AR2\]interface g0/0/0
2. \[AR2-GigabitEthernet0/0/0\]ip address 192.168.10.1 24
3. \[AR2-GigabitEthernet0/0/0\]quit
4. \[AR2\]interface g0/0/1
5. \[AR2-GigabitEthernet0/0/1\]ip address 192.168.20.1 24
6. \[AR2-GigabitEthernet0/0/1\]quit
7. \[AR2\]interface g0/0/2
8. \[AR2-GigabitEthernet0/0/2\]ip address 192.168.30.1 24
9. \[AR2-GigabitEthernet0/0/2\]quit
10. \[AR2\]
3)配置端口镜像
1. \[AR2\]observe-port interface g0/0/2
2. \[AR2\]interface g0/0/0
3. \[AR2-GigabitEthernet0/0/0\]mirror to observe-port both
4)保存配置
1. \[AR2-GigabitEthernet0/0/0\]quit
2. \[AR2\]quit
3. <AR2>save
4. The current configuration will be written to the device.
5. Are you sure to continue? (y/n)\[n\]:y
6. It will take several minutes to save configuration file, please wait.......
7. Configuration file had been saved successfully
8. Note: The configuration file will take effect after being activated
9. <AR2>
步骤三:针对路由器 AR2 的观察口抓包分析
1)启用抓包
右击交换机 LSW1,选择数据抓包 ->GE 0/0/2,如图 - 14 所示,一开始并没有抓取到网络数据包。
图 - 14
2)从 Client1 上访问 Server1
从 Client1 上通过 HTTP Client 访问 Server1 的http://192.168.20.200/index.html,如图 - 15 所示。
图 - 15
3)查看抓包结果(无数据,模拟器原因)
立即查看观察口的抓包结果,应该可以看到 Client1 访问 Server1 的 HTTP 通信数据包,如图 - 16 所示。
图 - 16
3 Ettercap 嗅探
3.1 问题
本例要求基于 eNSP 模拟器 + VMware 虚拟机(kali2021)构建网络嗅探环境,熟悉 Ettercap 嗅探工具的使用,理解 ARP 欺骗的工作模式及危害,相关说明如下。
1)在 kali2021 虚拟机上启用 Ettercap 抓包
2)嗅探 Client1 访问 Server1 的 FTP 通信,截获登录用户名、密码
3.2 方案
使用 1 台客户机、1 台服务器,1 台 kali 虚拟机。
- 客户机 Client1,IP 地址 192.168.10.100/24
- 服务器 Server1,IP 地址 192.168.10.200/24,启用 FTP 服务器
- kali2021 虚拟机,IP 地址 192.168.10.211/24
如图 - 17 所示,kali 虚拟机通过网云 Cloud1 与 eNSP 环境连接。
图 - 17
注意网云配置要点,如图 - 18 所示。
图 - 18
3.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:创建并部署实验环境
1)Client1 的配置
配置 IP 地址 192.168.10.100/24,图略。
2)Server1 配置
配置 IP 地址 192.168.10.200/24,图略。
启用 FTP 服务,如图 - 19 所示。
图 - 19
步骤二:在 kali 中启用 Ettercap 嗅探
1)打开 Ettercap 嗅探工具
单击 kali 系统左上龙标 -> 09 - 嗅探 / 欺骗 -> ettercap graphical,即可打开 Ettercap 图形程序,点击右上角的对勾按钮(Accept),如图 - 20 所示,表示启用嗅探。
图 - 20
2)扫描网络主机
单击 Ettercap 上方的 “三点” 菜单 -> Hosts -> Scan for hosts,开始扫描网络中的所有主机,如图 - 21 所示。
图 - 21
扫描完成后,单击 “三点” 菜单 -> Hosts -> Hosts list,可以确认主机列表,如图 - 22 所示。
图 - 22
3)启用 ARP 欺骗
在主机列表中,选择主机 192.168.10.10,添加为 Target1;选择主机 192.168.10.200,添加为 Target2。如图 - 23 所示,作为 Ettercap 嗅探的两个主要对象。
图 - 23
然后单击 Ettercap 上方的小地球图标 -> ARP poisoning ,如图 - 24 所示。
图 - 24
弹出小窗口中选择 “OK”,如图 - 25 所示,然后就开始基于 ARP 欺骗方式的网络嗅探了。
图 - 25
步骤三:验证嗅探结果
1)从 Client1 访问 Server1 的 FTP 服务
从 Client1 通过 FtpClient 访问 Server1 的 FTP 服务,如图 - 26 所示,比如访问 192.168.10.200,输入用户名(zhsan)、密码(Abc@1234)。
图 - 26
注:用户名、密码可以任意输入。
2)观察 Ettercap 嗅探结果
嗅探成功后,直接展示截获的用户名 / 密码,如图 - 27 所示。
图 - 27
4 防御 ARP 欺骗
4.1 问题
本例以前一个 “Ettercap 嗅探” 案例的环境为基础,改用 Win10 真机访问 Server1 服务器,并且验证静态 ARP 绑定对 Ettercap 嗅探效果的影响,相关说明如下。
1)未静态绑定时,从 Win10 访问 Server1 的 FTP 服务,Ettercap 可嗅探密码
2)为 Win10 的 VMnet8 接口设置静态 ARP 条目
3)为 Server1 设置静态 ARP 条目(模拟器不支持,跳过此项)
4)再次 Ettercap 嗅探密码(绑定不彻底时,仍能截获)
4.2 方案
直接使用前一个案例的实验环境,只不过把测试用的 FTP 客户机改成了 Win10 真机,如图 - 28 所示。
图 - 28
4.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:未设置 ARP 静态防护时,Ettercap 嗅探可实施
1)在 Ettercap 中启用对 Win10 访问 Server1 的 ARP poison 嗅探
单击 Ettercap 上方的小地球按钮 ->Stop MITM attack(s),停止原来的嗅探任务,如图 - 29 所示。
图 - 29
将 Win10 真机的 IP 地址 192.168.10.1、192.168.10.2 都添加为 Target1,把 Server1 的 IP 地址 192.168.10.200 添加为 Target2,如图 - 30 所示。
图 - 30
然后开始 ARP poison 下毒方式的嗅探,如图 - 31 所示。
图 - 31
2)从 Win10 访问 Server1 的 FTP 服务
使用 Filezilla、WinSCP 或者 MobaXterm 等工具访问 Server1 的 FTP 资源,登录凭据输入用户名 lisi、密码 123456。注意不要用 “此电脑” 或网页浏览器,否则可能会因为缓存等原因导致看不到效果。
当完成访问以后,在 Ettercap 嗅探界面可以发现截获的 FTP 登录用户名、密码信息,如图 - 32 所示。
图 - 32
步骤二:为 Win10 的 VMnet8 接口设置静态 ARP 条目
1)以管理员身份运行 cmd 命令行
如图 - 33 所示。
图 - 33
2)为 Server1 的 MAC 地址设置静态 ARP 绑定
先使用 netsh 命令获取真机与 Cloud1 连接的 VMnet8 接口的网卡索引号,结果中找第一列 Idx 对应的数字,比如下列结果中的 6。
1. C:\Windows\system32>netsh interface ipv4 show interface
3. Idx Met MTU 状态 名称
4. \-\-\- \-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
5. 1 75 4294967295 connected Loopback Pseudo-Interface 1
6. 13 35 1500 connected 以太网
7. 26 25 1500 disconnected 本地连接* 1
8. 22 25 1500 disconnected 本地连接* 2
9. 23 35 1500 connected VMware Network Adapter VMnet1
10. 6 35 1500 connected VMware Network Adapter VMnet8
11. .. ..
再从 eNSP 环境查看 Server 的属性,确定 IP 地址、MAC 地址信息,然后使用 netsh 命令设置 ARP 静态绑定。
1. C:\Windows\system32> netsh -c "interface ipv4" add neighbors 6 192.168.10.200 54-89-98-E4-4C-71
3. C:\Windows\system32>netsh -c "i i" show neighbors 6
5. 接口 6: VMware Network Adapter VMnet8
8. Internet 地址 物理地址 类型
9. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-
10. 192.168.10.2 00-00-00-00-00-00 无法访问
11. 192.168.10.200 54-89-98-e4-4c-71 永久
12. 192.168.10.211 00-0c-29-75-59-0f 停滞
13. 192.168.10.255 ff-ff-ff-ff-ff-ff 永久
14. 224.0.0.22 01-00-5e-00-00-16 永久
15. 224.0.0.251 01-00-5e-00-00-fb 永久
16. 239.255.255.250 01-00-5e-7f-ff-fa 永久
步骤三:为 Server1 设置静态 ARP 条目(模拟器不支持,跳过此项)
步骤四:再次检查 Ettercap 嗅探(绑定不彻底时,仍能截获)
1)再从 Win10 访问 Server1 的 FTP 服务
登录凭据更换一个用户名 wangwu、密码 pwd@1234。注意不要用 “此电脑” 或网页浏览器,否则可能会因为缓存等原因导致看不到效果。
当完成访问以后,在 Ettercap 嗅探界面检查,发现并没有截获到刚刚的 FTP 登录用户名 wangwu、密码 pwd@1234 的信息,如图 - 34 所示。
图 - 34
通过 netsh 单向绑定 ARP 条目时,防御效果并不明显,可能使用 Ettercap 仍能截获密码信息。实际工作中,推荐部署终端安全、ARP 防火墙等设备,或者避免在服务端采用铭文通信,而是改用 SFTP、HTTPS 等加密的通信协议。
5 ICMP/UDP/TCP 协议攻防
5.1 问题
本例要求结合 eNSP+kali 测试机环境,使用 hping3 模拟 ICMP/UDP/TCP 泛洪攻击,在路由器上开启泛洪防御措施,相关说明如下。
1)为路由器 AR1 上部署 telnet 登录环境
2)在 kali2021 测试机上使用 hping3 模拟泛洪攻击
3)在路由器 AR1 上配置防御策略
5.2 方案
搭建实验环境,如图 - 35 所示。
网云 Cloud1 设置如之前案例中的图 - 18 所示。.
图 - 35
5.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:为路由器 AR1 上部署 telnet 登录环境
1)在路由器 AR1 上配置 telnet 服务
1. \[AR1\]telnet server enable
2. \[AR1\]telnet server port 23
3. \[AR1\]user-interface vty 0 4
4. \[AR1-ui-vty0-4\]user privilege level 15
5. \[AR1-ui-vty0-4\]authentication-mode password
6. Please configure the login password (maximum length 16):123456
8. \[AR1-ui-vty0-4\]protocol inbound all
2)从 kali 测试机访问路由器 R1 的 telnet 服务
1. ┌──(root💀kali)-\[~\]
2. └─# telnet 192.168.10.254
3. Trying 192.168.10.254...
4. Connected to 192.168.10.254.
5. Escape character is '^\]'.
8. Login authentication
11. Password:
12. <AR1>
13. <AR1> quit
16. Configuration console exit, please retry to log on
17. Connection closed by foreign host.
19. ┌──(root💀kali)-\[~\]
20. └─#
步骤二:在 kali2021 测试机上使用 hping3 模拟泛洪攻击
为了降低实验环境的负载压力,本节的 3 个泛洪测试案例建议分开做,而且每次攻击测试的时间不要太长,避免因 CPU 资源消耗过大导致死机。
1)使用 hping3 模拟 ICMP 泛洪攻击
实施 hping3 测试。
1. ┌──(root💀kali)-\[~\]
2. └─# hping3 --icmp --flood --rand-source -p 7 192.168.10.254
3. HPING 192.168.10.254 (eth0 192.168.10.254): icmp mode set, 28 headers + 0 data bytes
4. hping in flood mode, no replies will be shown
6. ^C
对路由器 AR1 抓包分析,可以看到大量的 ICMP 攻击包,如图 - 36 所示。
图 - 36
2)使用 hping3 模拟 UDP 泛洪攻击
实施 hping3 测试。
1. ┌──(root💀kali)-\[~\]
2. └─# hping3 --udp --flood --rand-source -p 7 192.168.10.254
3. HPING 192.168.10.254 (eth0 192.168.10.254): udp mode set, 28 headers + 0 data bytes
4. hping in flood mode, no replies will be shown
5. ^C
对路由器 AR1 抓包分析,可以看到大量的 UDP 攻击包,如图 - 37 所示。
图 - 37
3)使用 hping3 模拟 TCP syn 泛洪攻击
实施 hping3 测试。
1. ┌──(root💀kali)-\[~\]
2. └─# hping3 --syn --flood --rand-source -p 23 192.168.10.254
3. HPING 192.168.10.254 (eth0 192.168.10.254): S set, 40 headers + 0 data bytes
4. hping in flood mode, no replies will be shown
5. ^C
对路由器 AR1 抓包分析,可以看到大量的 TCP syn 攻击包,如图 - 38 所示。
图 - 38
步骤三:在路由器 AR1 上配置防御策略
1)启用 ICMP/UDP/TCP syn 泛洪防御(默认已启用)
1. \[AR1\] anti-attack icmp-flood enable
3. \[AR1\] anti-attack udp-flood enable
5. \[AR1\] anti-attack tcp-syn enable
6. \[AR1\] anti-attack tcp-syn car cir 8000
2)查看泛洪防御统计数据
跟踪 ICMP 防御统计信息,观察 PassPacketNum 对应的值,表示放行的数据包的个数。
1. \[AR1\] display anti-attack statistics icmp-flood
2. Packets Statistic Information:
3. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
4. AntiAtkType TotalPacketNum DropPacketNum PassPacketNum
5. (H) (L) (H) (L) (H) (L)
6. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
7. Icmp-flood 0 6802 0 0 0 6802
8. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
跟踪 UDP 防御统计信息,观察 DropPacketNum 对应的值,表示放行的数据包的个数。
1. \[AR1\] display anti-attack statistics udp-flood
2. Packets Statistic Information:
3. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
4. AntiAtkType TotalPacketNum DropPacketNum PassPacketNum
5. (H) (L) (H) (L) (H) (L)
6. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
7. Udp-flood 0 3420 0 3420 0 0
跟踪 TCP syn 防御统计信息,观察 PassPacketNum 对应的值,表示放行的数据包的个数。
1. \[AR1\] display anti-attack statistics tcp-syn
2. Packets Statistic Information:
3. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
4. AntiAtkType TotalPacketNum DropPacketNum PassPacketNum
5. (H) (L) (H) (L) (H) (L)
6. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
7. Tcp-syn 0 2237 0 0 0 2237
8. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
https://tts.tmooc.cn/ttsPage/NTD/NTDTN202109/NETSEC/DAY04/CASE/01/index.html