7.7 KiB
EIGRP 攻击
从零到英雄学习 AWS 黑客攻击 htARTE (HackTricks AWS 红队专家)!
支持 HackTricks 的其他方式:
- 如果您想在 HackTricks 中看到您的公司广告或下载 HackTricks 的 PDF,请查看订阅计划!
- 获取 官方 PEASS & HackTricks 商品
- 发现 PEASS 家族,我们独家的 NFTs 集合
- 加入 💬 Discord 群组 或 telegram 群组 或在 Twitter 🐦 上关注我 @carlospolopm。
- 通过向 HackTricks 和 HackTricks Cloud github 仓库提交 PR 来分享您的黑客技巧。
本页面基于 ****。查看以获取更多信息。
理解 EIGRP 协议漏洞
EIGRP (增强型内部网关路由协议) 被识别为一个动态的、距离向量路由协议。如果忽视了认证或被动接口的配置,将观察到一个关键的漏洞,导致潜在的路由表污染。此外,EIGRP 网络或自治系统的结构是非分段的,缺乏任何形式的区域划分。这种扁平结构意味着攻击者注入的路由可能会在整个自治系统中传播。
![](../../.gitbook/assets/image (25) (1).png)
利用 EIGRP 系统的初始步骤涉及与合法的 EIGRP 路由器建立连接。这种连接开启了从侦察到各种形式的注入的途径。为了促进这一点,使用 FRRouting,一个开源解决方案,来在 Unix 和 Linux 系统上模拟路由器。FRRouting 支持多种协议,包括 BGP、OSPF 和 EIGRP。在攻击者的系统上部署 FRRouting,使他们能够在路由域内模拟一个合法的路由器。部署 FRR 在您的系统上的详细说明将在后面提供。
收集网络情报
整合到路由域允许枚举和侦察网络,提供了一个比广泛扫描更高效的时间替代方案。这种方法不仅节省时间,还减少了被 IPS/IDS 安全系统检测的风险。实现这一点需要部署 FRRouting。
需要修改 daemons
配置文件,该文件控制守护进程活动。必须激活 eigrpd 守护进程。
~# nano /etc/frr/daemons
eigrpd=yes
![](../../.gitbook/assets/image (15) (1).png)
此外,需要对 vtysh.conf 文件进行调整,以确保各种协议的配置被合并到一个文件中。
~# nano /etc/frr/vtysh.conf
service integrated-vtysh-config
配置完成后,需要启动 FRR 守护进程并启用流量路由(在 Linux 发行版中默认禁用)。
~$ sudo systemctl start frr
~$ sudo sysctl -w net.ipv4.ip_forward=1
![](../../.gitbook/assets/image (32).png)
vtysh 命令提供了对 FRR 路由器控制面板的访问。
~$ sudo vtysh
示例用法:
root# show version
![](../../.gitbook/assets/image (3) (2) (2).png)
> 注意:EIGRP 路由域可能通过认证来保护。然而,通过从 hello 包中提取加密哈希并重置密码,潜在的访问仍然是可能的。
在全局配置模式下,启动 **EIGRP** 过程并定义自治系统号 — **1**,以及网络位置。
root# config
root(config)# router eigrp 1
root(config-router) network 10.10.100.50/32
在与合法的EIGRP路由器(在这个案例中,是GW1 (10.10.100.100) 和 GW2 (10.10.100.200))建立邻居连接后,路由器会交换路由信息。这个过程导致新路由出现在攻击系统的路由表中,有助于渗透测试并节省子网扫描的时间。此时,系统已成为EIGRP路由域的一部分,准备进行进一步的攻击向量开发。
![](../../.gitbook/assets/image (5) (1) (2).png) ![](../../.gitbook/assets/image (30) (1).png) ![](../../.gitbook/assets/image (29) (1) (2).png)
利用EIGRP:攻击向量
1. 伪造EIGRP邻居
大量发送EIGRP hello数据包可能导致路由器CPU过载,为DoS攻击铺平道路。使用一个脚本helloflooding.py来实现这一点,但其发送数据包的速度受到GIL(全局解释器锁)的限制。目前正在计划用C语言重写脚本以提高性能。
![](../../.gitbook/assets/image (2) (6) (1).png)
脚本使用时需要指定:
- 网络接口(例如,eth0)
- EIGRP自治系统号(例如,1)
- 子网位置(例如,10.10.100.0/24)
~$ sudo python3 helloflooding.py --interface eth0 --as 1 --subnet 10.10.100.0/24
2. EIGRP 黑洞攻击
这种攻击涉及注入虚假路由以扰乱流量,通常被称为黑洞攻击。routeinject.py 脚本被用于此目的。例如,将 172.16.100.140/32
的流量重定向到一个不存在的目的地。
脚本参数包括:
- 攻击者系统接口
- EIGRP AS 号
- 攻击者的 IP 地址
- 目标子网 IP 及其掩码
~$ sudo python3 routeinject.py --interface eth0 --as 1 --src 10.10.100.50 --dst 172.16.100.140 --prefix 32
![](../../.gitbook/assets/image (20) (1).png)
结果是由于路由注入,导致目标主机失去连接性。
![](../../.gitbook/assets/image (6) (1) (1).png)
3. 滥用 K-值
EIGRP 路由器之间不匹配的 K-值可以破坏 EIGRP 域。relationshipnightmare.py 脚本通过注入改变的 K-值来利用这一点,触发 EIGRP 域内持续的中断和重新连接,有效地导致 DoS 攻击。
![](../../.gitbook/assets/image (12) (2) (1).png)
脚本需要:
- 网络接口
- EIGRP AS 号码
- 合法路由器的 IP 地址
注入的更改从指定的 IP 发送到多播 EIGRP IP 地址,导致不匹配。
~$ sudo python3 relationshipnightmare.py --interface eth0 --as 1 --src 10.10.100.100
4. 路由表溢出
此攻击通过用假路由淹没路由表,给路由器的CPU和RAM带来压力。routingtableoverflow.py 脚本通过快速发送大量假路由来促进这一点。
脚本参数:
- 网络接口
- EIGRP AS 编号
- 攻击者的IP地址
执行脚本后,路由表将被伪造路由饱和,严重影响路由器性能。
sudo python3 routingtableoverflow.py --interface eth0 --as 1 --src 10.10.100.50
![](../../.gitbook/assets/image (4) (4).png) ![](../../.gitbook/assets/image (21) (1).png)
从零到英雄学习AWS黑客攻击,通过 htARTE (HackTricks AWS 红队专家)!
支持HackTricks的其他方式:
- 如果您想在HackTricks中看到您的公司广告或下载HackTricks的PDF,请查看订阅计划!
- 获取官方PEASS & HackTricks商品
- 发现PEASS家族,我们独家的NFTs系列
- 加入 💬 Discord群组或telegram群组或在Twitter 🐦 上关注我 @carlospolopm。
- 通过向 HackTricks 和 HackTricks Cloud github仓库提交PR来分享您的黑客技巧。