研究人员详述 CVE-2024-38812 (CVSS 9.8):VMware vCenter 中的严重 RCE 漏洞

阅读量32760

发布时间 : 2024-10-29 14:16:14

x
译文声明

本文是翻译文章,文章原作者 do son,文章来源:securityonline

原文地址:https://securityonline.info/researcher-details-cve-2024-38812-cvss-9-8-critical-rce-flaw-in-vmware-vcenter/

译文仅供参考,具体内容表达以及含义原文为准。

SonicWall Capture Labs 威胁研究团队发布了对 CVE-2024-38812 的深入分析,CVE-2024-38812 是在 VMware vCenter Server 中发现的一个严重堆溢出漏洞。该漏洞影响 VMware vCenter Server 版本 8.0 U3a,并已在版本 8.0 U3d 中修补,解决了 DCERPC 协议中可能允许远程代码执行 (RCE) 的问题。

CVE-2024-38812 被归类为 CWE-122(基于堆的缓冲区溢出),攻击者可利用 vCenter Server 的 DCERPC 协议实现中的不当内存处理。通过发送特制的网络数据包,攻击者可以覆盖堆中的内存,从而可能导致任意代码执行,甚至完全控制整个系统。该漏洞的 CVSS 得分为 9.8 分,对于使用未打补丁的 VMware vCenter 版本的企业来说,这无疑是一个高风险漏洞。


rpc_ss_ndr_contiguous_elt() | 图片: SonicWall

CVE-2024-38812 的根本原因在于 rpc_ss_ndr_contiguous_elt() 函数处理 range_list->lower 值的方式,这是一个由用户输入控制的参数。攻击者可通过发送特制的网络数据包来操纵内存偏移量,从而利用该漏洞。当 range_list 值被不恰当地用于修改内存基地址时,就会出现该漏洞。这可能导致任意内存访问,使攻击者有可能覆盖关键系统内存,从而导致远程代码执行。


用户控制,range_product 和 range_list->lower | | 图像: SonicWall

在 SonicWall Capture Labs 威胁研究团队的详细分析中,他们解释说:“一旦攻击者控制了 range_list->lower 值,他们就有效地控制了 p_array_addr 指向的内存地址。”这就使攻击者对内存分配过程有了很大的控制权,增加了利用漏洞的可能性。

要触发这个堆溢出漏洞,攻击者必须精心设计输入参数,如参数计数和类型索引,它们控制着 RPC 过程中的内存分配方式。通过操纵这些值,攻击者可以使内存分配超出正常范围。分析强调说:“如果偏移量足够大,就可以将数组地址推入攻击者可以控制的内存区域。”

这个漏洞特别危险,因为攻击者可以控制目标内存地址和被复制的数据量。例如,在rpc_ss_ndr_unmar_by_copying()函数中,要复制的数据长度是由攻击者控制的,这就使得恶意行为者有可能使用伪造的输入覆盖关键内存区域。

VMware 发布的 vCenter Server 8.0 U3d 版本解决了这一问题,该版本引入了更严格的检查以防止无界指针运算。根据 SonicWall 的分析,”该补丁……引入了一个重要的修复,重点是如何处理涉及范围列表的计算,特别是在 range_list->lower 的验证中。” 这些更改通过确保内存指针保持在安全范围内,有效防止了攻击者利用这一漏洞。

强烈建议使用 vCenter Server 8.0U3a 或更早版本的企业升级到 8.0 U3d 版本,以降低被利用的风险。

本文翻译自securityonline 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

内容需知
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全客 All Rights Reserved 京ICP备08010314号-66