MessagePack 允许不受信任的数据因哈希冲突和堆栈溢出而导致 DoS 攻击(CVE-2024-48924)

admin 2024-10-18 21:57:55 Ali_nvd 来源:ZONE.CI 全球网 0 阅读模式
MessagePack 允许不受信任的数据因哈希冲突和堆栈溢出而导致 DoS 攻击(CVE-2024-48924)

CVE编号

CVE-2024-48924

利用情况

暂无

补丁情况

N/A

披露时间

2024-10-18
漏洞描述
### 影响当此库用于从不受信任的源反序列化MessagePack数据时,攻击者可能会通过发送精心制作的数据来制造哈希碰撞,从而导致CPU消耗与反序列化数据的大小不成比例,存在拒绝服务攻击的风险。这与先前的公告相似,该公告针对哈希碰撞部分的漏洞提供了不充分的修复方案。### 修复方案要减轻此风险,需要采取以下步骤:1. 升级到存在修复方案的库版本。2. 查看此先前公告中的步骤,以确保您的应用程序已针对不受信任的数据进行配置。### 替代方案如果您无法升级MessagePack到修复版本,可以采用以下手动替代方案:1. 声明一个继承自MessagePackSecurity的类。2. 重写GetHashCollisionResistantEqualityComparer<T>方法来提供自己的防碰撞哈希函数,避免调用base.GetHashCollisionResistantEqualityComparer<T>()。3. 通过在现有选项对象上调用WithSecurity来配置一个MessagePackSerializerOptions的实例,并使用您的派生类型的一个实例。4. 在所有反序列化操作中使用您的自定义选项对象。这可能通过设置MessagePackSerializer的DefaultOptions静态属性(如果您调用的方法依赖于此默认属性),或者显式将选项对象传递给任何Deserialize方法来实现。### 参考信息* 了解在使用MessagePack 1.x或MessagePack 2.x时读取不受信任数据的最佳安全实践。* .NET团队关于其HashCode结构的哈希碰撞漏洞的讨论。### 获取更多信息如果您对此公告有任何疑问或评论:* 开始公开讨论* 通过电子邮件私下联系我们([你的电子邮件地址])
解决建议
"将组件 messagepack 升级至 3.0.214-rc.1 及以上版本""将组件 messagepack 升级至 2.5.187 及以上版本"
参考链接
https://github.com/MessagePack-CSharp/MessagePack-CSharp/commit/8e599af0798b4...
https://github.com/MessagePack-CSharp/MessagePack-CSharp/commit/f8d40b3ad0be0...
https://github.com/MessagePack-CSharp/MessagePack-CSharp/security/advisories/...
CVSS3评分 8.7
  • 攻击路径 N/A
  • 攻击复杂度 N/A
  • 权限要求 N/A
  • 影响范围 N/A
  • 用户交互 N/A
  • 可用性 N/A
  • 保密性 N/A
  • 完整性 N/A
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CWE-ID 漏洞类型
CWE-328 可逆的单向哈希
- avd.aliyun.com
weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0