OpenID Connect客户端Atom耗尽漏洞分析
漏洞概述
CVE-2024-31209是一个中等严重性的安全漏洞,影响Erlang的OpenID Connect客户端库(oidcc)。该漏洞存在于提供者配置工作器的ETS表处理过程中,可能被利用导致Atom资源耗尽,最终引发节点崩溃。
受影响版本
-
= 3.0.0, < 3.0.2
-
= 3.1.0, < 3.1.2
-
= 3.2.0-beta.1, < 3.2.0-beta.3
技术细节
漏洞位置
漏洞核心位于oidcc_provider_configuration_worker:get_ets_table_name/1函数中:
|
|
攻击原理
攻击者可以通过重复调用以下函数来利用此漏洞:
oidcc_provider_configuration_worker:get_provider_configuration/1oidcc_provider_configuration_worker:get_jwks/1
当每次调用时传入不同的原子名称作为参数,会持续创建新的atom,最终导致atom表耗尽,系统崩溃。
实际影响示例
|
|
修复方案
已修复版本
- 3.0.2
- 3.1.2
- 3.2.0-beta.3
临时解决方案
确保仅向相关函数传递有效的提供者配置工作器名称,避免动态生成atom。
安全评分
CVSS v3.1评分:5.3(中等)
基础指标:
- 攻击向量:本地
- 攻击复杂度:高
- 所需权限:高
- 用户交互:无
- 范围:改变
- 机密性影响:无
- 完整性影响:无
- 可用性影响:高
相关资源
弱点分类
CWE-400:不受控制的资源消耗
该产品未能正确控制有限资源的分配和维护,使得攻击者能够影响资源消耗量,最终导致可用资源耗尽。