溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的

發(fā)布時(shí)間:2021-12-31 13:42:19 來源:億速云 閱讀:216 作者:柒染 欄目:安全技術(shù)

本篇文章為大家展示了影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

作者發(fā)現(xiàn)了視頻會議軟件ZOOM for Mac客戶端程序的兩個(gè)漏洞和一個(gè)缺陷,安裝有ZOOM客戶端的Mac系統(tǒng)用戶可能會受到RCE攻擊,可被攻擊者遠(yuǎn)程未授權(quán)開啟本機(jī)攝像頭。

Zoom是一款多人云視頻會議軟件,為用戶提供兼?zhèn)涓咔逡曨l會議與移動(dòng)網(wǎng)絡(luò)會議功能的免費(fèi)云視頻通話服務(wù)。用戶可通過手機(jī)、平板電腦、PC與工作伙伴進(jìn)行多人視頻及語音通話、屏幕分享、會議預(yù)約管理等商務(wù)溝通。Zoom支持100人以下的高清視頻通話,是目前領(lǐng)先的移動(dòng)視頻會議工具。Zoom適用于Windows、Mac、Linux、iOS、Android系統(tǒng)。

漏洞原因在于ZOOM for Mac系統(tǒng)的客戶端軟件中存在bug缺陷,攻擊者通過在自己網(wǎng)站中部署利用代碼,當(dāng)安裝有ZOOM for Mac的系統(tǒng)用戶訪問該網(wǎng)站后,就能觸發(fā)漏洞,實(shí)現(xiàn)未授權(quán)的攝像頭開啟。該漏洞可能會對采用Zoom軟件應(yīng)用于日常視頻會議的全球75萬家公司造成影響。

CVE漏洞編號

CVE-2019–13450:開啟受害者系統(tǒng)攝像頭導(dǎo)致的信息泄露漏洞(未修復(fù))

CVE-2019–13449:DoS拒絕服務(wù)攻擊 (在ZOOM 4.4.2客戶端版本中已經(jīng)修復(fù))

漏洞介紹

該漏洞可以通過訪問一個(gè)惡意網(wǎng)站的方式,遠(yuǎn)程未授權(quán)地激活開啟受害者系統(tǒng)中與ZOOM關(guān)聯(lián)的攝像頭,并強(qiáng)制ZOOM客戶端用戶加入某個(gè)ZOOM視頻會議。

這種情況下,可讓受害者反復(fù)不停地加入一個(gè)無效的視頻會議,致使其安裝有ZOOM客戶端形成拒絕服務(wù)攻擊(DoS)。此外,如果用戶在系統(tǒng)中安裝了ZOOM客戶端軟件之后又卸載了它,但是,它仍然在你的系統(tǒng)中殘存有一個(gè)localhost的Web服務(wù),通過該殘存服務(wù),ZOOM可以不用任何用戶交互操作即能實(shí)現(xiàn)完整的程序重裝,目前,這個(gè)所謂的“重裝”功能依然有效。

在Mac系統(tǒng)中,如果你安裝了ZOOM客戶端軟件,它會形成一個(gè)本地localhost:19421的Web服務(wù),你可以在終端中用命令 lsof -i :19421 來查看。

首先,這種安裝了ZOOM客戶端軟件,就開啟一個(gè)無任何文檔說明的API接口的事至少讓我覺得不妥;其次,我訪問的任何網(wǎng)站都可能會與該localhost Web服務(wù)發(fā)生交互,這對搞安全的我來說,簡單就是一個(gè)風(fēng)險(xiǎn)隱患。以下是ZOOM源碼中開啟locaohost服務(wù)的代碼段:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的看到代碼的時(shí)候我就想,是否其參數(shù)處理過程會存在緩沖區(qū)溢出漏洞,這樣就會讓操作系統(tǒng)面臨RCE攻擊。當(dāng)然,此僅當(dāng)猜測,最終也沒發(fā)現(xiàn)這樣的問題。當(dāng)訪問一個(gè)視頻會議加入(Join)鏈接之后,可通過Chrome瀏覽器調(diào)試工具對該locaohost服務(wù)的行為進(jìn)行觀察,如下:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的后來我還發(fā)現(xiàn),該locaohost服務(wù)對應(yīng)的頁面并不執(zhí)行正常的AJAX請求,但它會從本機(jī)運(yùn)行的localhost web服務(wù)中加載一張圖片,這張加載圖片的不同尺寸都對應(yīng)著表示ZOOM服務(wù)的不同狀態(tài)和錯(cuò)誤碼,如下:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的可怕的是,從以上這個(gè)狀態(tài)和錯(cuò)誤碼推斷來看(download、install、upgrade、launch...),這個(gè)本機(jī)的localhost web服務(wù)具備的功能,不僅僅是能啟動(dòng)ZOOM視頻會議,也就是前述提到的,如果用戶卸載了ZOOM,它還能執(zhí)行重裝......,等等。

我的疑問是,為什么這個(gè)localhost web服務(wù)會返回這種以圖片尺寸為狀態(tài)響應(yīng)的編碼數(shù)據(jù)?唯一的理由是,它是為了繞過CORS策略限制。但是,針對本機(jī)localhost的CORS策略,瀏覽器已經(jīng)完全不做限制了啊。比如,Chrome自2010年起,就已經(jīng)不對localhost的CORS請求進(jìn)行限制了。我猜想ZOOM此舉是出于安全考慮,也貌似可能是濫用這種技巧去繞過CORS策略。在此,我對開啟受害者系統(tǒng)攝像頭的CVE-2019–13450、導(dǎo)致DoS拒絕服務(wù)的CVE-2019–13449以及卸載后殘存的重裝bug進(jìn)行一個(gè)簡要分析。

激活受害者系統(tǒng)的攝像頭漏洞

我用不同賬號在本機(jī)創(chuàng)建了一個(gè)ZOOM私人會議,并用Postman對其進(jìn)行請求分析和參數(shù)測試,看看啟動(dòng)一個(gè)會議所需的最小GET請求是些什么。分析中有大量隨機(jī)參數(shù)發(fā)向localhost web服務(wù),其中有兩個(gè)重要參數(shù)如下:

action=join (執(zhí)行操作-加入)

confno=[whatever the conference number is] (會議編號)

操縱這兩個(gè)參數(shù),從Postman中構(gòu)造以下GET請求,我就能讓我的電腦加入其它用戶創(chuàng)建的ZOOM視頻會議了。

之后,我又修改了其它參數(shù)看能否實(shí)現(xiàn)其它行為,但從ZOOM公開的說明文檔和ProtoBuff機(jī)制來看,我找不到任何可利用的隱藏功能,而且,這個(gè)本機(jī)的web服務(wù)沒有任何官方說明,難以理解。以上的GET請求只能作為一個(gè)小小的驗(yàn)證性POC,用它可誘使受害者強(qiáng)制用戶加入會議,新加入會議后, “New Meeting”的默認(rèn)設(shè)置是會讓用戶選擇音頻/視頻加入,我認(rèn)為這本身就是一個(gè)安全漏洞。

之后,我注意到Tenable上報(bào)過ZOOM的一個(gè)RCE漏洞(CVE-2018-15715),它在去年底才被完整修復(fù),但如果CVE-2018-15715和我發(fā)現(xiàn)的這個(gè)漏洞結(jié)合的話,可能會對安裝有ZOOM客戶端的任何Mac系統(tǒng)形成RCE攻擊影響。而就我當(dāng)前的發(fā)現(xiàn)來說,我暫時(shí)還沒真正的exploit利用代碼,如何讓受害者系統(tǒng)的攝像頭激活開啟是一個(gè)難點(diǎn)。但當(dāng)我設(shè)置辦公視頻會議時(shí),看到了ZOOM中的以下這個(gè)界面,也就是說,在設(shè)置會議的時(shí)候,可選擇讓參會者開啟攝像頭加入會議:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的選擇Video項(xiàng)下的 “Participants: On”按鈕,其它參會人員將會自動(dòng)開啟其本機(jī)攝像頭,以視頻形式加入會議。這樣一來,我就可以繼續(xù)再構(gòu)造新的POC了。

POC

由于本機(jī)的localhost web服務(wù)在后臺運(yùn)行,所以實(shí)際來說,要使受害者中招,根本不需要以傳統(tǒng)方式真實(shí)運(yùn)行目標(biāo)應(yīng)用。第一行POC代碼強(qiáng)制受害者加入會議:

<img src="http://localhost:19421/launch?action=join&confno=492468757"/>

如果要使加入會議的受害者自動(dòng)開啟攝像頭,可把以下視頻邀請鏈接嵌入到由攻擊者控制的惡意網(wǎng)站iframe中就行,第二行POC代碼:

<iframe src="https://zoom.us/j/492468757"/>

攻擊者只需把以上兩行POC代碼部署在自己控制的網(wǎng)站中,然后誘使受害者訪問瀏覽,受害者M(jìn)ac系統(tǒng)中的ZOOM客戶端就會開啟攝像頭,加入攻擊者預(yù)先設(shè)置的視頻會議。這種POC代碼嵌入可以通過惡意廣告,或釣魚頁面等方式。目前,該漏洞仍然有效。https://jlleitschuh.org/zoom_vulnerability_poc/這是我構(gòu)造的一個(gè)POC頁面,它實(shí)現(xiàn)強(qiáng)制加入會議:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的https://jlleitschuh.org/zoom_vulnerability_poc/zoompwn_iframe.html,這個(gè)POC頁面實(shí)現(xiàn)開啟你的攝像頭,加入我的視頻會議:    

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的

DOS拒絕服務(wù)攻擊漏洞

以上漏洞同樣可以導(dǎo)致對受害者系統(tǒng)的DOS攻擊,只要發(fā)送一個(gè)重復(fù)無效的GET請求給受害者,受害者系統(tǒng)中的ZOOM客戶端程序就會從當(dāng)前系統(tǒng)中反復(fù)執(zhí)行GET請求,具體POC如下:

<body><script>// It's actually better if this number isn't a valid zoom number.var attackNumber = "694138052"setInterval(function(){  var image = document.createElement("img");  // Use a date to bust the browser's cache  var date = new Date();  image.src = "http://localhost:19421/launch?action=join&confno=" + attackNumber + "&" + date.getTime();  image.onload = function() {    // Be tidy, clean up the DOM afterwards    image.parentNode.removeChild(image);  };  document.body.appendChild(image);}, 1);</script></body>

目前,該DOS漏洞已在ZOOM客戶端4.4.2版本中得到修復(fù)。

卸載后殘存的重裝bug

如果用戶在系統(tǒng)中安裝了ZOOM客戶端程序之后,就會自動(dòng)開啟前述的localhost web服務(wù),即使是卸載了ZOOM程序,這個(gè)localhost web服務(wù)仍然存在,在后續(xù)的會議發(fā)起請求時(shí),它支持ZOOM的重裝和更新。我通過反編譯該localhost web服務(wù)去了解其中的邏輯調(diào)用。在Hopper Disassemble幫助下,我發(fā)現(xiàn)了localhost web服務(wù)中涉及的以下方法函數(shù):

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的這看起來像是,從某個(gè)API接口請求中獲取參數(shù),并用它創(chuàng)建一個(gè)下載網(wǎng)址,用于升級已安裝的ZOOM程序。而這個(gè)方法函數(shù)又由以下方法來控制,它會確保下載URL來自zoom的可信域名:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的在這個(gè)localhost web服務(wù)中,內(nèi)置有一個(gè)用來在Mac系統(tǒng)中更新和重裝當(dāng)前ZOOM程序的API,用戶可以通過以下方式來確認(rèn):

如果你的Mac系統(tǒng)此前從未安裝過ZOOM,則先安裝ZOOM;

然后打開ZOOM客戶端,接著把它關(guān)閉;

把Applications/zoom.us.app文件刪除放到垃圾箱,執(zhí)行對ZOOM程序的卸載;

現(xiàn)在,點(diǎn)擊任何ZOOM會議加入邀請鏈接,這時(shí),你系統(tǒng)中殘存的localhost web服務(wù)會“友善”地執(zhí)行對ZOOM程序的重裝,之后并會啟動(dòng)ZOOM程序。

可以在反編譯后的ZOOM客戶端代碼中看到一些內(nèi)置域名,引用這些域名對應(yīng)的鏈接可以從ZOOM官網(wǎng)實(shí)現(xiàn)遠(yuǎn)程的更新重裝動(dòng)作,比如這個(gè)https://zipow.com/upgrade?os=mac:

影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的對這些內(nèi)置域名whois之后,可以發(fā)現(xiàn)這些域名的存在可被劫持利用風(fēng)險(xiǎn),如zoomgov.com到2019年5月1日就過期了,如果ZOOM廠商未能及時(shí)續(xù)注,那么攻擊者就可能把該域名注為己有,進(jìn)而托管惡意程序,對正常安裝和卸載了ZOOM客戶端的用戶形成感染。當(dāng)然,如果進(jìn)一步利用,這種域名劫持風(fēng)險(xiǎn)結(jié)合上述漏洞,將能在ZOOM客戶端系統(tǒng)中實(shí)現(xiàn)RCE攻擊。還好,在我上報(bào)漏洞之后,ZOOM方面對這個(gè)zoomgov.com及時(shí)續(xù)注到了2024年5月1日。

這是最基本不應(yīng)該發(fā)生的安全漏洞

在我看來,網(wǎng)站和桌面應(yīng)用程序之間不應(yīng)該實(shí)現(xiàn)互動(dòng)調(diào)用,瀏覽器應(yīng)該執(zhí)行一個(gè)最基本的沙箱程序來防止惡意代碼在用戶機(jī)器上執(zhí)行。

因?yàn)閆OOM用戶系統(tǒng)中存在的那個(gè)localhost web服務(wù)可以接收到HTTP和GET請求,所以,這就能繞過瀏覽器原有沙箱防護(hù)機(jī)制實(shí)現(xiàn)代碼執(zhí)行,導(dǎo)致ZOOM用戶處于很大攻擊面之中。

漏洞上報(bào)進(jìn)程

作者于2019年3月8日向ZOOM官方上報(bào)了以上存在的問題,ZOOM方面承諾會在90天內(nèi)修復(fù)漏洞,并會盡快給出“快速修復(fù)”解決方案;期間,歷經(jīng)了10多輪反復(fù)冗長的溝通協(xié)商,2019年6月21日,ZOOM終于告知作者漏洞已經(jīng)修復(fù),但在后期7月7日的復(fù)測過程中,作者又成功復(fù)現(xiàn)了遠(yuǎn)程攝像頭開啟漏洞。非常無奈之下,作者還是選擇了公開披露漏洞。

當(dāng)前,Zoom、Google Meet 和 Skype for Business是主流的視頻會議應(yīng)用,截至2015年,Zoom擁有超過4000萬用戶,鑒于蘋果電腦占個(gè)人電腦市場的10%,自2015年以來,Zoom市場占有率持續(xù)增長,Zoom的用戶中至少有400萬人在使用Mac系統(tǒng)。本質(zhì)來說,以上漏洞都會對Zoom用戶造成嚴(yán)重安全威脅,但遺憾的是,Zoom在90天寬限期內(nèi),仍然未完全修復(fù),現(xiàn)在,將近有400萬Zoom用戶面臨安全風(fēng)險(xiǎn)。

上述內(nèi)容就是影響400多萬Mac系統(tǒng)的Zoom視頻會議軟件漏洞是怎樣的,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI