GLBP & HSRP Attacks
最后更新于
最后更新于
FHRP 旨在通过将多个路由器合并为单个虚拟单元来提供网络鲁棒性,从而增强负载分配和容错能力。思科系统推出了该套件中的重要协议,如 GLBP 和 HSRP。
思科的创造,GLBP,在 TCP/IP 协议栈上运行,利用 UDP 端口 3222 进行通信。GLBP 组中的路由器每隔 3 秒交换一次“hello”数据包。如果路由器在 10 秒内未发送这些数据包,则被视为离线。但这些计时器并非固定,可以进行修改。
GLBP 通过使用单个虚拟 IP 和多个虚拟 MAC 地址实现跨路由器的负载分配。在 GLBP 组中,每个路由器都参与数据包转发。与 HSRP/VRRP 不同,GLBP 通过几种机制提供真正的负载平衡:
主机相关负载平衡: 为主机分配一致的 AVF MAC 地址,对于稳定的 NAT 配置至关重要。
轮询负载平衡: 默认方法,在请求主机之间交替分配 AVF MAC 地址。
加权轮询负载平衡: 根据预定义的“权重”指标分配负载。
AVG(活动虚拟网关): 负责为对等路由器分配 MAC 地址的主要路由器。
AVF(活动虚拟转发器): 指定用于管理网络流量的路由器。
GLBP 优先级: 决定 AVG 的度量标准,从默认值 100 开始,范围在 1 到 255 之间。
GLBP 权重: 反映路由器上的当前负载,可以手动调整或通过对象跟踪进行调整。
GLBP 虚拟 IP 地址: 为所有连接设备提供网络的默认网关。
在交互方面,GLBP 使用保留的组播地址 224.0.0.102 和 UDP 端口 3222。路由器每隔 3 秒传输“hello”数据包,如果在 10 秒内错过一个数据包,则被视为非操作。
攻击者可以通过发送优先级值最高(255)的 GLBP 数据包成为主要路由器。这可能导致 DoS 或 MITM 攻击,允许拦截或重定向流量。
Loki 可以通过注入优先级和权重设置为 255 的数据包执行 GLBP 攻击。攻击前的步骤包括使用诸如 Wireshark 等工具收集虚拟 IP 地址、认证存在和路由器优先级值等信息。
攻击步骤:
切换到混杂模式并启用 IP 转发。
确定目标路由器并检索其 IP。
生成一个恶意的 Gratuitous ARP。
注入一个恶意的 GLBP 数据包,冒充 AVG。
为攻击者的网络接口分配一个次要 IP 地址,镜像 GLBP 虚拟 IP。
实施 SNAT 以实现完整的流量可见性。
调整路由以确保通过原始 AVG 路由器继续访问互联网。
通过遵循这些步骤,攻击者将自己定位为“中间人”,能够拦截和分析网络流量,包括未加密或敏感数据。
以下是演示所需的命令片段:
HSRP是思科专有协议,旨在实现网络网关冗余。它允许将多个物理路由器配置为单个逻辑单元,共享一个IP地址。这个逻辑单元由主路由器管理,负责流量导向。与使用优先级和权重进行负载平衡的GLBP不同,HSRP依赖于单个活动路由器进行流量管理。
HSRP活动路由器:充当网关的设备,管理流量流向。
HSRP备用路由器:备用路由器,准备在活动路由器故障时接管。
HSRP组:一组路由器合作形成一个单一的弹性虚拟路由器。
HSRP MAC地址:分配给HSRP设置中逻辑路由器的虚拟MAC地址。
HSRP虚拟IP地址:HSRP组的虚拟IP地址,充当连接设备的默认网关。
HSRP有两个版本,HSRPv1和HSRPv2,主要区别在于组容量、多播IP使用和虚拟MAC地址结构。该协议利用特定的多播IP地址进行服务信息交换,每3秒发送一次Hello数据包。如果在10秒内未收到数据包,则假定路由器处于非活动状态。
HSRP攻击涉及通过注入最大优先级值强制接管活动路由器的角色。这可能导致中间人攻击。攻击前的基本步骤包括收集有关HSRP设置的数据,可以使用Wireshark进行流量分析。
将包含HSRP数据的网络流量保存为.pcap文件。
使用hsrp2john.py从.pcap文件中提取MD5哈希。
使用John the Ripper破解MD5哈希。
使用Loki执行HSRP注入
启动Loki以识别HSRP广告。
将网络接口设置为混杂模式并启用IP转发。
使用Loki瞄准特定路由器,输入破解的HSRP密码,并执行必要的配置以冒充活动路由器。
获得活动路由器角色后,配置您的网络接口和IP表以拦截合法流量。
修改路由表以通过以前的活动路由器路由流量。
使用net-creds.py或类似实用程序从拦截的流量中捕获凭据。
执行这些步骤将使攻击者能够拦截和操纵流量,类似于GLBP劫持的过程。这突显了像HSRP这样的冗余协议的漏洞以及对强大安全措施的需求。