从交换机安全配置,看常见局域网攻击
前言
构建零信任网络,自然离不开网络准入(NAC),这就涉及到交换机的一些安全测试,于是有了此文《从交换机安全配置看常见局域网攻击》。
交换机安全配置
如本文标题所说从交换机安全配置看常见的局域网攻击,那么下面提到的各种攻击方式,自然是建立在交换机安全配置之上来说的。我们通过 h3c 官方提供的《H3C 交换机安全加固手册》和《安全配置指导》,从这两份手册可以看出交换机支持的安全配置非常多,基本已经覆盖了各种我们熟知局域网攻击。下面就挑几个典型的攻击方式进行演示。
arp 欺骗
【一>所有资源获取<一】1、电子书籍(白帽子)2、安全大厂内部视频 3、100 份 src 文档 4、常见安全面试题 5、ctf 大赛经典题目解析 6、全套工具包 7、应急响应笔记 8、网络安全学习路线
原理
在每台主机都有一个 ARP 缓存表,缓存表中记录了 IP 地址与 MAC 地址的对应关系,而局域网数据传输依靠的是 MAC 地址。ARP 缓存表机制存在一个缺陷,就是当请求主机收到 ARP 应答包后,不会去验证自己是否向对方主机发送过 ARP 请求包,就直接把这个返回包中的 IP 地址与 MAC 地址的对应关系保存进 ARP 缓存表中,如果原有相同 IP 对应关系,原有的则会被替换。
那么攻击者就可以发送恶意广播消息,告诉目标我是某某主机,毒化目标主机 arp 缓存表,这就是 arp 欺骗。
工具
arpspoof
Ettercap
bettercap
arp 攻击主要有如下两种场景:
arp 断网攻击,主要原理是:毒化目标主机 arp 缓存表,欺骗网关地址;
中间人嗅探,主要原理是:目标主机和网关双向欺骗,需配合路由转发功能。
攻击演示
这里,我们采用 bettercap 进行 arp 攻击演示。
攻击者:192.168.6.3
目标:192.168.6.5
1.启动 bettercap,如果机器有多网卡需指定对应网卡,http-ui 根据个人喜好决定是否开启。具体命令如下所示:
sudo ./bettercap -caplet http-ui -iface en0
如下显示即为成功
账号密码在 http-ui.cap 里面可以找到
2.主机探测:
进入 LAN 选项卡,开始进行主机探测。
也可以直接在终端输入命令开启,如下
3.配置开启 arp 欺骗
进入 Advanced 选项卡开始进行 arp 欺骗,如下所示。
默认会欺骗整个局域网主机,我们按需进行配置,配置目标 ip,把 fullduplex 一起打开可以欺骗还可以网关(双向)。
然后回来 LAN 选项卡,可以看着这个小图标即为配置成功。
最后再来看下效果
如上可以看到攻击成功的效果,目标机器 arp 表里面网关 mac 被改成了攻击者的 mac。
再看看交换机的路由表也一样如此。
wireshark 抓包结果如下,一目了然。
arp 欺骗防御
接下来我们再来看看交换机如何防护这种攻击。
通过翻官方手册,找到如下这条:
进行简单配置后,达到了预期效果。
为了更全面的防御各种 ARP 攻击,最后整理出如下配置:
dns 欺骗
原理
需要和 ARP 欺骗配合使用,当 ARP 欺骗成功后,嗅探到对方发出的 DNS 请求数据包,分析数据包取得 ID 和端口号后,向目标发送自己构造好的一个 DNS 返回包,对方收到 DNS 应答包后,发现 ID 和端口号全部正确,即把返回数据包中的域名和对应的 IP 地址保存进 DNS 缓存表中,而后来的当真实的 DNS 应答包返回时则被丢弃。
工具
Ettercap
bettercap
dns 欺骗主要用途就是用来钓鱼。
攻击演示
我们还是用 bettercap 进行演示:
配置并启用 arp 欺骗。
配置 dns 欺骗
此处为了方便演示,我们起了一台 kali 当 web 服务器,待会儿 dns 欺骗会用到。
再配置 dns 欺骗,此处用博客进行演示,让域名解析到 192.168.6.3 上,也是就之前配置好的 kali。
然后我们在被欺骗的主机上主动发起 dns 查询,可以看到符合我们的预期。
我们再用 wireshark 筛选一下结果如下,可以看到成功伪造了 dns 应答包。
Bettercap 更多模块使用,请直接查看官方文档。
https://www.bettercap.org/modules/
关于 arp 攻击最常见的就是上面演示的两种,除此之外还有一些攻击如 arp 泛洪之类的,由于操作比较简单,这里不做演示。可用下面工具进行测试:
https://github.com/davidgfnet/net-tools
https://github.com/EmreOvunc/ARP-Poisoning-Tool
DHCP Flood
原理
攻击源发送大量 DHCP 请求报文给 DHCP 服务器,占用 DHCP 服务器大量的 CPU 资源并耗尽 DHCP 服务器上的地址空间,使合法的 DHCP 客户端无法获取到 IP 地址。
工具
这里主要采用 yersinia 进行演示:
yersinia 介绍
yersinia 是一款针对交换机二层网络的攻击工具,功能包括:
支持针对以下网络协议的攻击:
生成树协议 (STP)
思科发现协议 (CDP)
动态中继协议 (DTP)
动态主机配置协议 (DHCP)
热备路由器协议 (HSRP)
802.1q
802.1x
交换机间链路协议 (ISL)
VLAN 中继协议 (VTP)
攻击演示
1.以图形化界面方式启动
yersinia -G
2.配置并启动 dhcp 攻击
开始前,先看看 dhcp 的 ip 使用情况,可以看到一切正常。
回到 kali 开始配置,切换到 DHCP 选项卡,可以看到支持四种模式,我们只需要选择支持 dos 的就可以发起 DHCP Flood 攻击。
kali 发起攻击后,到交换机再看 ip 池的使用,如下图可以看到已经使用了很多 ip。这种攻击主要是把 dhcp 的 ip 池占满,那么别的客户端就不能正常获取 ip 了。
DHCP 攻击防御
最后
这些 xp 时代的技术放到今天已经不好用了,在实战中也基本不会用上这些攻击方式,只能说时代变了。
评论