Zoom 漏洞,黑客與開發者之間的戰爭

2020 年 3 月,當全世界剛剛開始適應遠程工作時,Zoom(世界上主要的遠程通信工具之一)的安裝程式中發現了一個漏洞,該漏洞允許在 Apple 計算機上執行任意代碼。Zoom 修復了漏洞……幾乎。快進到 2022 年 8 月,發現了一個類似的漏洞(就位置和利用後果而言)。這篇文章研究了這個最新的安全問題,並試圖解釋為什麼軟體中的漏洞有時會在同一個地方反復出現。它以關於如何處理它的建議結束。

 

這個最新的漏洞是什麼?

今年 8 月初,著名研究員 Patrick Wardle 在 DEF CON 30 上強調了 Zoom 視頻會議客戶端的新問題。長話短說,在 am Apple Zoom 客戶端的自動更新系統中發現了一些錯誤。理論上,這些漏洞使得獲得所謂的超級用戶權限成為可能,這使得潛在的攻擊者可以在主機上為所欲為。然而,要利用該漏洞,攻擊者需要已經對計算機進行物理訪問,儘管沒有特殊權限。但這並不是一個完全不現實的場景:例如,用戶可能去吃午飯並忘記鎖定他們的計算機。理論上,該漏洞也可能被惡意軟體利用,否則不會對用戶造成嚴重損害。

請提供更多詳細信息

及時交付和輕鬆安裝更新是任何現代軟體的重要要求。理想情況下,應該在用戶沒有註意到的情況下安裝錯誤修復,但這並不總是可行的。要完成更新,您通常必須重新啟動程式、重新登錄,甚至重新啟動。我們都對提醒我們更新程式、操作系統、智能手機或平板電腦固件的彈出消息感到惱火。但這樣做很重要:更新會關閉可能對您不利的安全漏洞。在一些特別嚴重的情況下,您需要立即保護易受攻擊的軟體免受主動網路攻擊:一天的延遲可能會使您損失數據。

更新 macOS 應用程式的標準方法與首次安裝沒有什麼不同:下載新版本,運行文件,然後輸入用戶密碼。Zoom 試圖簡化這個過程:客戶端訪問服務器,下載新版本,並自行安裝,無需用戶輸入密碼。不幸的是,與服務器通信,然後下載和安裝更新的過程並不總是正確實施。十年前,在沒有數據加密的情況下訪問服務器是一種常見做法,允許潛在的攻擊者簡單地用惡意軟體替換更新文件。實施了加密,使這變得更加複雜,但是當文件已經保存在磁碟上但尚未安裝時,仍然可以在下載後替換文件。

在最新的(截至去年年底,帕特里克開始研究時)版本的 Zoom 中,一切似乎都很好。客戶端通過安全通道訪問特殊更新服務器,下載文件,驗證其真實性(檢查它是否由供應商的證書籤名),然後安裝它。安裝時,軟體向系統請求臨時超級用戶權限,但用戶無需輸入密碼。

引用 Patrick Wardle 的演示文稿,展示了簽署更新的好處。

引用 Patrick Wardle 的演示文稿,展示了簽署更新的好處。來源

 

數位簽名很重要。畢竟,程式是從互聯網的某個角落下載到用戶的計算機上並以最高權限運行的。所以你需要確保它是正確的程式。對下載文件的簡單欺騙是行不通的:如上面帕特里克演示文稿中的幻燈片所示,替換文件會導致錯誤消息——虛假更新沒有數字簽名,而且很難欺騙。

唉,數字簽名驗證過程本身就有缺陷。它通過運行系統實用程式來工作。這顯示了下載更新的數字簽名參數,包括指示哪個公司收到證書的行:

Zoom Video Communications, Inc. 開發者 ID 認證機構 Apple Root CA

該實用程式的輸出已處理,如果存在此行,則安裝開始。問題是文件名也出現在輸出中。因此,理論上,攻擊者可以巧妙地創建一個名為“ Zoom Video Communications, Inc. Developer ID Certification Authority Apple Root CA.pkg”的惡意更新,而不是標準的“ ZoomUpdate.pkg”。這足以欺騙驗證過程:所需的行在那裡,所以文件必須是合法的——即使它是錯誤的文件並且魔法詞在錯誤的位置!

也就是說,攻擊可能如下所示:啟動更新驗證過程(不難做到),然後下載合法更新,用惡意軟體替換,並重命名以欺騙損壞的證書驗證過程。惡意文件以系統權限運行,計算機被黑!

但在 2021 年 12 月 20 日,Zoom 更新發布,結束了這種攻擊媒介。更改很簡單:下載後強制重命名文件。但 Patrick Wardle 能夠修改攻擊:如果 Zoom 自 5.9.0 以來一直是安全的,如果我們將客戶端“升級”到舊版本會怎樣?它奏效了:舊更新具有合法的數字證書,並且在安裝過程中未檢查版本。

有什麼大不了的?

Patrick Wardle 的研究表明,確保更新的交付和安裝安全是多麼重要。更重要的是,這個 bug 的故事清楚地展示了軟體開發人員如何經常試圖通過一些簡單的更改來解決問題,而不需要詳細了解它。起初(甚至在 Wardle 向 Zoom 報告問題之前),在 2021 年 12 月,他們通過簡單的文件替換和繞過證書驗證擊敗了最簡單的攻擊版本。在漏洞被報告後,2022 年 4 月,他們關閉了“降級”選項——通過標準更新交付機制安裝更舊、更易受攻擊的 Zoom 版本。但直到 2022 年 7 月,也就是 Wardle 報告六個月後,數字證書驗證機制才得到修復。

然而,這並沒有完全解決問題。當然,這兩種最簡單的攻擊方法已從潛在黑客的武器庫中刪除:用惡意軟體替換更新文件並降級到易受攻擊的版本。但是還有另一個問題:任何有權訪問計算機的人都可以修改以超級用戶權限運行的更新文件!攻擊者只需要在適當的時候找到一種方法將惡意文件放入 Zoom 安裝程式:在驗證數字簽名之後,但在安裝開始之前。它確實奏效了。因此,當 Patrick Wardle 在 2022 年 8 月的 DEF CON 30 上發表他的發現時——在向 Zoom 報告問題八個月後——漏洞仍未完全修復!僅在帕特里克報告五天后的 8 月 17 日,開發人員終於修復了該問題。

關於黑客和開發者

閱讀 Patrick Wardle 的報告,人們不禁想知道為什麼它必須是這樣的。這種幼稚的漏洞是如何在軟體的關鍵部分出現的,為什麼即使在報告了問題之後,它們也僅在八個月後和第三次嘗試時關閉?我們不希望不公平地指責開發人員無能。在所有程式中,錯誤和錯誤都會不時出現。如果所有的工程師都犯了錯誤,詛咒他們並不能解決問題:他們是世界上唯一的開發者。

原因可能是白帽黑客(向供應商報告他們的發現)和網路犯罪分子(利用漏洞攻擊用戶並獲利)與軟體開發人員相比具有不同的優先級。當你開發一個程式時,它正確地執行數百個不同的任務是至關重要的。您的首要任務是將用戶置於他們的舒適區,這對於 Zoom 而言意味著良好的通信質量以及與不同操作系統和數千種新舊設備的兼容性。雖然黑客所需要的只是找到一個可用於骯髒伎倆的錯誤。現在想像一下有人告訴你一個漏洞。是的,您需要修補它,但不要破壞客戶端-服務器軟體的微妙系統。您必須在數百種不同的配置中對其進行測試。自然,開發人員希望通過最少的修改來解決問題。而這些往往是不夠的。

每個小更新都會使程式變得越來越安全。你不可能完全解決所有問題並像那樣創建一個理想的應用程式。或者,更確切地說,您可以,但只能從頭開始。但是一些關鍵元素應該以最好的方式維護,更新交付系統絕對是其中之一。作為用戶,我們需要能夠信任我們安裝在計算機上的程式。從這個意義上說,Zoom 漏洞的故事是獨立研究人員和開發人員共同努力解決問題的一個積極例子。它清楚地表明了開發人員的負責態度。

我們以一個重要的提醒結束這個故事:惡意軟體通常會在首次安裝軟體時進入計算機。因此,重要的是檢查實用程式是否從官方來源下載,盡可能使用應用商店,並且在任何情況下都不要從可疑網站下載程式。否則,您的數據有可能會通過非常簡單的黑客方法被盜 – 而無需利用官方軟體中的複雜漏洞。

Comments are closed.

Up ↑

探索更多來自 卡巴斯基部落格 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading