VMware VeloCloud 漏洞分析:未授权远程代码执行全链条攻破

SD-PWN 第4部分 — VMware VeloCloud — 终极接管

这是SD-PWN系列的最后一部分,我们在此披露四家主流SD-WAN供应商的严重漏洞。本次重点分析VMware的SD-WAN平台。

如果您尚未阅读前文,强烈建议先阅读:

  • 第1部分 — Silver Peak Unity Orchestrator
  • 第2部分 — Citrix SD-WAN Center
  • 第3部分 — Cisco Viptela vManage

如果您使用VMware VeloCloud Orchestrator,请立即更新系统。正如我们将要演示的,以下漏洞会导致未授权远程代码执行。与本系列涉及的其他产品一样,这些漏洞可能被用来破坏公司的整个国际网络。

VMware VeloCloud Orchestrator

VMware VeloCloud Orchestrator连接边缘路由器并集中控制网络拓扑。因此从安全角度看,它是关键的单点故障。

VeloCloud基础设施主要使用nginx作为node.js服务器的反向代理。

安全评估第一步:映射未授权接口

产品安全调查的首要步骤之一是映射其暴露的未授权接口。最明显的是登录和密码重置功能。

通用密码重置流程通常包含:

  1. 生成随机唯一密钥或签名令牌
  2. 通过预设侧信道发送(电子邮件或短信)
  3. 提示用户输入随机密钥

VeloCloud在第一步犯了两个严重错误:

  • 不使用随机字节作为重置密钥,而是直接使用用户的密码哈希值
  • 虽然实现了加密签名令牌,但支持使用{CLEAR}前缀的未签名明文令牌

这两个问题构成了"传递哈希攻击"(Pass The Hash Attack)的基础。

默认后门用户

VeloCloud采用了近年来较少见的做法:预设后门用户。虽然这些用户默认被禁用,且只有VeloCloud知道其密码(仅存哈希值),但PTH攻击允许我们在密码重置过程中直接使用哈希密码,同时重新激活用户。

这三个问题共同构成了第一个CVE。

认证绕过(PTH + 默认账户)— CVE-2020-4001

通过上述流程,我们成功重置了具有系统最高管理员权限的super@velocloud.net账户。攻击者需要预先知道:

  • super@velocloud.net的密码哈希值
  • 名为logicalId的参数

这两个值都是预设的,可以从安装文件中获取,且在系统不同实例间保持不变。

模数参数SQL注入 — CVE-2020-3984

这是标准的SQL注入漏洞,用户控制的数据在未转义的情况下直接拼接至SQL查询。其中一个存在漏洞的位置是softwareUpdate/getSoftwareUpdates方法的modulus参数。该注入漏洞允许从数据库提取任意数据(非盲注)。

Rest Meta目录遍历 + 未授权文件包含 — CVE-2020-4000

portal/rest/meta处理器使用req.originalUrl获取请求方法,该URL随后被用于require文件。虽然路径中的..会被Web服务器解析并忽略,但originalUrl包含完整的GET查询字符串。在问号后使用包含..的URL可实现目录遍历:

/portal/rest/meta/none?test/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/somefile.js

此原语允许我们执行本地磁盘上的几乎所有JavaScript文件。

RCE攻击链

我们未发现直接的命令注入漏洞,主要思路是利用文件包含漏洞上传可控内容的JavaScript文件。虽然所有文件上传点都有内容限制,但我们发现未通过内容验证的上传文件不会被删除。

文件名随机生成且不返回给用户,唯一知晓文件名的部分是日志模块。通过设置设备的syslog服务器,我们构建了完整的RCE链:

  1. 重置super@velocloud.net密码(同时激活账户)
  2. 使用新启用账户登录
  3. 将自有服务器设置为系统syslog服务器
  4. 上传JavaScript文件
  5. 通过传入的syslog消息接收随机文件名
  6. 使用Rest Meta文件包含执行JavaScript文件

最终实现node.js环境中的代码执行。

总结思考

观察市场上的SD-WAN产品,我们发现一个值得注意的共同点:许多产品最初由初创公司开发,后期被大公司收购。初创公司通常较少关注产品安全,他们需要从零构建系统,开发周期紧张,代码审查不足,有时会走捷径。

事实上,部分漏洞很简单,部分较复杂,但都是标准安全审计能够发现和修复的问题。这说明需要安全专家检查代码的关键部分,避免在产品被实际利用后才发现漏洞。

这不是告别。我们的下一篇文章将聚焦于日常使用的某个设备(欢迎猜测),以及我们发现的有趣但令人不安的安全问题。敬请期待。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码

posted @ 2025-09-24 08:01  qife  阅读(6)  评论(0)    收藏  举报