• Welcome to the world's largest Chinese hacker forum

    Welcome to the world's largest Chinese hacker forum, our forum registration is open! You can now register for technical communication with us, this is a free and open to the world of the BBS, we founded the purpose for the study of network security, please don't release business of black/grey, or on the BBS posts, to seek help hacker if violations, we will permanently frozen your IP and account, thank you for your cooperation. Hacker attack and defense cracking or network Security

    business please click here: Creation Security  From CNHACKTEAM

VMware vCenter中敏感信息泄露的分析


Recommended Posts

Sensitive-Information-Disclosure-1-1.png

Pentera实验室的高级安全研究员尤瓦尔耶戈(Yu val Kumar)发现了一个信息泄露漏洞,该漏洞影响了50多万台运行默认vCenter Server部署的设备。

考虑到其潜在的全球影响,这一发现至关重要。根据VMware数据,超过80%的虚拟工作负载运行在VMware技术上,包括财富500强和财富100强公司。vCenter为管理企业环境中的虚拟化主机提供了便利,这为网络犯罪分子提供了集中的访问权限,并可能对组织造成大规模攻击。

在完整的攻击过程中,攻击者可以完全接管混合基础架构中某个组织部署的ESXi和虚拟机管理程序管理和管理的虚拟机,并从端点访问vCenter client的主机。

目前,VMware已经发布了补丁。

背景

VMware vCenter Server安装在全球成千上万的组织中,用于管理一些最重要的资产和核心系统。这是网络罪犯的首要目标。一旦受到攻击,vCenter为管理企业环境中的虚拟主机提供的便利将被攻击者利用,提供集中访问和大规模攻击。

结合最近针对ESXi的Python勒索软件报告,Pentera实验室发现了一个新的信息泄露漏洞。目前,该漏洞已被命名为CVE-2022-22948,调查结果也已上报VMware。

完整的攻击向量

本文中描述的漏洞是导致ESXi被接管的关键攻击链的一部分。在完整的攻击向量中,研究人员可以看到,通过vCenter client对主机的初始端点访问有助于完全接管组织的ESXi。

攻击技术详解

从最初访问到完全接管服务器:

Pentera Labs认为,安全的程度不是由单个漏洞或安全团队发现或修补漏洞的能力来衡量的。更具体地说,组织的安全状况取决于该漏洞在整个攻击操作中是否能被直接利用或与之前的漏洞相联系。

就VMware vCenter漏洞而言,攻击者可以接管运行vCenter应用程序的主机,以及混合基础架构中部署的所有ESXi服务器和由虚拟机管理程序托管和管理的虚拟机。

最近关于勒索软件团伙加密大量虚拟机的报道证明了将这种载体添加到他们的TTP库中的重要性。

漏洞检测

Pentera实验室的研究人员进一步增强了他们现有的攻击框架,用于识别、促进、利用和推进攻击操作。与往常一样,Pentera的方法是假设攻击者的观点,并确定攻击者可以利用关键漏洞的方式。

研究人员使用名为“VP shere-ui”(cis组的成员)的低权限用户来获得对VMware vCenter新实例的shell访问权限。到目前为止,一切都很顺利。

在对vCenter client的研究中,研究人员发现了一个包含客户端postgresDB明文登录凭据的文件:“/etc/VMware-vpx/vcdb . properties”,属于“cis”组的任何用户都可以访问该文件。

换句话说,任何属于“cis”组的用户都可以连接到vCenter的Postgres数据库。

有了PostgresDB凭证,就可以开始检查PostgresDB了。您可以使用以下命令连接到数据库,并充分利用vcdb.properties中的凭据:

/opt/VMware/vPostgres/current/bin/psql-dvcdb-uvc-w通过这种方式,研究人员发现它包含了大量关于ESXi和vCenter的信息,包括关于数据中心和存储在其上的虚拟机的信息。例如:

/opt/VMware/vpostgres/current/bin/psql-dvcd b-Uvc-w-c ' select user _ name,passwordFROMvc.vpx _ host通过VCDB查询ESXi上的虚拟机信息

另一张桌子是

vpx_host ',包含名为' vpxuser '的用户及其密码短语的详细信息。vpx_host表为每个被管理的ESXi保存一条记录,每个记录包含一个名为 “vpxuser” 的用户和一个惟一的密码短语。

因此,研究人员使用以下命令来检索密码短语:

接下来,将要探索“vpxuser” 。

原来“vpxuser”是在ESXi和vCenter之间第一次连接时自动创建的高级特权用户。

“vpxuser”用户是在ESXi上默认创建的,按照最小权限原则设计,无需使用root用户即可由vCenter管理。用户是通过一个名为“vpxd”的进程创建的,该进程负责ESXi和vCenter之间的通信。

没有很多关于这个用户的信息,但是研究人员在ESXi上的“passwd”文件上发现了一条关于它的注释。“passwd”文件通常用于跟踪有权访问系统的用户,它包含有关用户帐户的信息。研究人员能够从文件中收集关于用户“vpxuser”的大量信息。最终,正是这个描述引导研究人员找到了下一个发现——“VMware VirtualCenter管理帐户”

这样,研究人员就可以开始使用 IDA 调查“vpxd”进程,以便更好地理解“vpxuser”及其密码是如何在PostgresDB中创建和记录的。

研究人员的第一步是使用 IDA 的“字符串”选项卡搜索字符串“VMware VirtualCenter 管理帐户”,以查看该字符串在何处被引用。此搜索导致了与在 ESXi 上创建用户相关的功能。这样,研究人员可以识别创建密码的函数,如下图所示。

深入“create_random_password”函数,研究人员发现了 Random_Crypto (open-vm-tools) 的使用,这表明该用户的密码是随机创建的。

研究人员知道密码必须保存到 vCenter 的 PostgresDB 中,因为它是在第一次连接时随机生成的,并且是下一步通信所必需的。然而,正如研究人员之前在数据库中看到的,密码不是以明文形式保存的。而是用 base64 编码的,但编码的短语是不可读的,所以研究人员假设它也是加密的。

解密 vpxuser 密码

因此研究密码的创建、加密、编码以及最终保存在数据库中的过程就十分有必要。

最终,研究人员找到了加密功能,只发现它使用了OpenSSL对称EVP通用加密方法。

OpenSSL 对称加密 EVP

对称加密使用相同的密钥对信息进行加密和解密。通过使用对称加密算法,数据被转换为任何不拥有密钥的人都无法理解的形式。

EVP 函数为 OpenSSL 加密函数提供高级接口。为了使用 EVP 执行对称加密或解密,你需要知道:

算法——可以使用几种类型的加密算法,例如块算法或流算法。正如后来发现的,AES_256_CBC是这里使用的算法。

密钥——你需要拥有密钥来解密消息。

初始化向量(IV)——初始化向量是与密钥结合使用的随机数,作为加密数据的方式。这个数字有时被称为随机数。 IV用于避免数据加密过程中的重复,使得使用字典攻击的黑客不可能通过发现模式来解密交换的加密消息。

所以现在研究人员知道了对称加密是什么样的,让我们回过头来确定密码创建方法。由于 IV 是随机的,研究人员推断它可能也保存到了数据库中。而且它是!一旦我们找到了IV创建的函数,这就把我们引向了解密函数!

在找到解密对称加密所需的所有3个先决条件后,就可以继续进行了:

算法——研究人员只知道算法是 AES_256_CBC。

IV——研究人员发现密码短语的前 16 个字节是 IV。

密钥——研究人员发现加密密钥是提前创建的,并保存到文件“/etc/vmware-vpx/ssl/symkey.dat”中。

如上所述, “/etc/vmware-vpx/ssl/symkey.dat”文件只有高权限用户才能访问,所以研究人员还需要一种方法,以便可以获得 root 权限来读取它。幸运的是,由于研究人员之前已经发现了 CVE-2021-22015(文件上传漏洞)。

一旦研究人员提取了密钥,研究人员就拥有了解密密码所需的所有要素。研究人员编写了一个 python 脚本来提取明文密码,并获得了 ESXi 的高权限凭据!

总结

1.登录到 vCenter 的 PostgresDB。

2.找到 vpxuser 的编码和加密密码,这是一个在 ESXi 与 vCenter 之间的第一次连接时自动创建的高权限用户。

3.对 vpxuser 的创建进行逆向工程,以设计一种用于解密 vpxuser 密码的方法。

4.利用 vScalation (CVE-2021-22015),Pentera Labs 还发现了一种特权升级方法,用于获取解密 vpxuser 密码所需的 root 特权。

5.解密后,受感染的 root 帐户 vpxuser 确认完全接管 ESXi 服务器。

Link to comment
Share on other sites