这种类型的 ARP 中毒攻击可能吗?

信息安全 网络 攻击 攻击预防 协议 拒绝服务
2021-08-15 16:29:26

我想知道是否可以通过发送一堆虚假的 ARP 响应数据包来瘫痪网络。

一些基础:我最近阅读了关于 ARP 和 ARP 中毒如何工作的较为详细的描述(在此处pdf)。我想我了解 ARP 中毒是如何工作的,至少在那篇文章中介绍的详细程度是这样。

我的问题是关于不同类型的 ARP 中毒。与其发送将所有流量导向攻击计算机的 ARP 响应数据包,设备是否可以发送 ARP 数据包,将受害设备的 ARP 缓存弄乱?它向网络上的每个设备发送许多数据包,为攻击设备可以找到的每个 IP 提供错误的 MAC 地址?

这种类型的攻击可能吗?有哪些应对措施?这些对策是常用的吗?

附加问题:ARP 数据包是否包含允许网络管理员定位隐藏的无线攻击设备的信息?有没有办法断开设备与网络的连接?

4个回答

这实际上称为 ARP 泛洪。受感染的系统/恶意用户向连接到网络的所有系统发送 ARP 回复,并用不正确的 ARP 条目填充它们。这会导致系统无法解析 MAC 和 IP 地址,从而导致系统无法连接到网络中的其他系统。

这对我来说听起来很合理,尽管本地网络拒绝服务攻击很少见,仅仅是因为可以轻松拔掉违规设备。

通过而不是看到随机 ARP 流量,您更有可能看到配置为Proxy ARP的设备,只是窃取所有网络流量。这是一种更容易实施的攻击,因为大多数路由器已经内置了该功能。

但同样,在本地网络上看到 DOS 攻击并不常见。通常这是配置错误的问题。

编辑:针对其他问题:

ARP 数据包包含发送者 MAC、目标 MAC 和目标 IP 地址(加上一些簿记)。与所有网络数据包一样,每一个最后一位都可以被欺骗。假设没有恶意,您至少会获得发件人 MAC 地址,其前几个字节是特定于供应商的,您可以查找该地址以确定制造网络适配器的供应商。这可以帮助识别设备。当然,它可以被欺骗,所以不要依赖它。

至于 WiFi 网络,就安全性而言,“开放”的未加密网络是一种“无所不能”的环境,因此保护它几乎不值得付出努力。但是,如果启用了任何形式的加密,那么单个客户端只能与路由器通信,而不是点对点通信,这意味着路由器可以过滤掉这样的噪音。

为了解决“有哪些对策可用”的问题,dot1x 身份验证可能是保护网络物理层的最佳方式。这将通过要求主机在被允许传输数据之前对网络进行身份验证来防止这些类型的物理和数据链路层攻击。交换机仍会看到来自攻击者的坏 MAC 地址,但它们不会到达任何其他交换机或网络上的任何其他主机,因此可以造成的危害大大减少。即不接管默认网关来做 MITM 等。

为了防止这种情况发生,您可以过滤允许在一个交换机端口上注册的 MAC 地址的数量。Cisco 将此端口称为安全性,HP 和 Juniper 也有类似的。通过限制可以在 mac-address 表中列出的 mac 地址的数量(并关闭端口以响应太多),您可以在它失控之前阻止它。

另一种选择(如果设备是关键组件)是在 cisco 交换机上使用mac-address-table static命令。这将阻止交换机为设备注册另一个 MAC 地址。结合此,您可以设置静态 ARP 条目以防止 arp 中毒(至少对于您的相邻网关),这可以通过 Windows 中的 GPO 或通过 DHCP 挂钩在 Linux 中部署。静态 arp 条目优先于动态接收的条目。

在无线网络上,你不能真正信任网关 arp,当你第一次进入网络时,所以如果可能的话,我会在我的 arp 表中硬编码网关 MAC 地址。

注意事项:当你做这种事情时,有一个浮动的mac地址是有正当理由的。集群环境、VMWare 来宾、移动的笔记本电脑。注意 arp 和 mac-address 表超时。在这种情况下将它们设置为低肯定会有所帮助,尽管它确实会略微增加网络流量。