利用 BlastRADIUS 漏洞通过中间人攻击来操纵 RADIUS 认证过程。
网络安全研究人员揭露了 RADIUS 协议中的一个漏洞,被命名为 BlastRADIUS。虽然没有证据表明威胁行为者正在积极利用它,但研究团队呼吁所有 RADIUS 服务器都需要升级。
BlastRADIUS 攻击涉及攻击者拦截客户端(如路由器)与 RADIUS 服务器之间的网络流量。然后,攻击者可以操纵 MD5 哈希算法,使 Access-Denied 网络数据包被解读为 Access-Accept,从而无需正确的登录凭据即可访问客户端设备。
来自波士顿大学、Cloudflare、BastionZero、微软研究院、Centrum Wiskunde & Informatica 和加州大学圣地亚哥分校的研究人员团队首次在二月份发现了该漏洞,并通知了 InkBridge Networks 的首席执行官兼 RADIUS 专家 Alan DeKok。
根据由 DeKok 维护的 RADIUS 服务器 FreeRADIUS 发布的安全公告,BlastRADIUS 缺陷(现追踪为 CVE-2024-3596 和 VU#456537)是由于 RADIUS 协议的“根本设计缺陷”,因此,它不限于单一产品或供应商。
请参阅:如何使用 FreeRADIUS 进行 SSH 身份验证
DeKok在一份新闻稿中说:“网络技术人员将不得不安装固件升级,并重新配置全球几乎所有交换机,路由器,GGSN,BNG和VPN集中器。“我们预计在未来几周内会看到很多与RADIUS安全相关的讨论和活动。
什么是RADIUS协议?
RADIUS(远程认证拨入用户服务)是一种网络协议,提供集中式认证、授权和计费服务,用于连接到网络服务的用户。它广泛被互联网服务提供商和企业在交换机、路由器、接入服务器、防火墙和 VPN 产品中使用。
谁会受到 BlastRADIUS 缺陷的影响?
研究人员发现,使用 PAP、CHAP、MS-CHAP 和互联网上的 RADIUS/UDP 的 RADIUS 部署将受到 BlastRADIUS 缺陷的影响。这意味着 ISP、云身份提供商、电信公司和内部网络的企业面临风险,必须迅速采取行动,特别是如果 RADIUS 用于管理员登录。
家庭用户直接不受影响,但他们依赖 ISP 解决 BlastRADIUS 缺陷,否则他们的流量可能被导向攻击者控制的系统。
BlastRADIUS攻击是如何工作的?
利用该漏洞通过中间人攻击来操纵 RADIUS 认证过程。关键在于 RADIUS 协议中,一些 Access-Request 数据包未经认证且缺乏完整性检查。
攻击者首先尝试使用错误的凭据登录客户端,生成一个发送给服务器的 Access-Request 消息。消息包含一个名为 Request Authenticator 的 16 字节值,通过 MD5 哈希生成。
Request Authenticator 打算由接收服务器与所谓的“共享秘密”一起计算其响应,只有客户端和服务器知道这个秘密。因此,当客户端收到响应时,它可以使用其 Request Authenticator 和共享秘密解密数据包,验证它是由受信任的服务器发送的。
但在 BlastRADIUS 攻击中,攻击者在消息到达服务器之前拦截并操纵 Access-Request 消息进行 MD5 碰撞攻击。攻击者向 Access-Request 消息添加“垃圾”数据,确保服务器的 Access-Denied 响应也包括此数据。然后,他们操纵此 Access-Denied 响应,使其被客户端解释为有效的 Access-Accept 消息,授予未经授权的访问权限。
尽管 MD5 已知存在弱点,允许攻击者生成碰撞或逆向哈希,但研究人员表示 BlastRADIUS 攻击“比简单应用旧的 MD5 碰撞攻击更复杂”,在速度和规模上更先进。这是第一次对 RADIUS 协议实际演示 MD5 攻击。
Cloudflare 的研究人员在具有五分钟超时期的 RADIUS 设备上进行了攻击。然而,拥有高级计算资源的攻击者有可能在显著较短的时间内执行攻击,可能在 30 到 60 秒之间,这是许多 RADIUS 设备的默认超时期。
InkBridge Networks 的文档中写道:“关键在于,在许多情况下,Access-Request 数据包没有任何认证或完整性检查。攻击者然后可以执行选定前缀攻击,这允许修改 Access-Request 以替换有效响应为攻击者选择的响应。
“尽管响应经过认证并进行了完整性检查,但选定前缀漏洞允许攻击者几乎随心所欲地修改响应数据包。”
攻击者利用 BlastRADIUS 漏洞的难易程度如何?
虽然 BlastRADIUS 缺陷普遍存在,但利用它并非易事;攻击者需要能够读取、拦截、阻止和修改进出网络数据包的能力,而且没有公开的利用可供参考。攻击者还必须已经具备网络访问权限,这可能通过利用组织发送 RADIUS/UDP 跨越开放互联网或破坏企业网络的部分获得。
研究人员在专门针对 BlastRADIUS 的网站上表示:“即使 RADIUS 流量仅限于内部网络的受保护部分,配置或路由错误可能会无意中暴露此流量。拥有部分网络访问权限的攻击者可能能够利用 DHCP 或其他机制导致受害者设备将流量发送至专用 VPN 之外。”
此外,攻击者必须资金充足,因为每次 BlastRADIUS 攻击都需要大量的云计算能力。InkBridge Networks 在其 BlastRADIUS 常见问题解答中指出,对于希望针对特定用户的国家来说,此类成本“只是九牛一毛”。
组织如何保护自己免受 BlastRADIUS 攻击
安全研究人员为使用 RADIUS 协议的组织提供了以下建议:
- 在供应商提供的所有 RADIUS 客户端和服务器上安装最新更新。已部署补丁,以确保始终发送 Message-Authenticator 属性,并且请求和响应需要这些属性。FreeRADIUS 有一个更新版本可供下载,Palo Alto Networks 还发布了其 PAN-OS 防火墙的修复程序。
- 不要尝试一次更新所有 RADIUS 设备,因为可能会出错。理想情况下,首先集中精力升级 RADIUS 服务器。
- 考虑使用InkBridge Networks的验证工具来评估系统对BlastRADIUS和其他网络基础设施问题的影响。