甚麼是 Apache Log4J(Log4Shell)漏洞?

Tball

Log4Shell (CVE-2021-44228CVE-2021-45046CVE-2021-45105)是一個遠端程式碼執行(RCE)漏洞,可讓黑客任意執行 Java 程式碼來掌控目標伺服器。

Log4Shell 漏洞總覽

零時差漏洞在 2021 年內極頻繁地出現,到年終更出現了 Log4Shell 這個在廣泛使用的 Java 目錄資料庫 Apache Log4j 內發現的重大缺陷。這個被正式確認為 CVE-2021-44228 的漏洞,在通用漏洞評分系統(CVSS)的 10 級嚴重性分級系統 CVSS v3.1 中名列第 10 級。

這漏洞在 2021 年 11 月 24 日首次被私下報告至 Apache。2021 年 12 月 9 日,Log4Shell 被公開披露並同時發佈 Apache Log4j 2.15.0 修補程式。

隨後,一些國家網絡資訊保安機構也開始發出警告,包括美國網絡資訊保安與基礎架構防護局(CISA)、英國國家防護中心(NCSC)及加拿大防護中心。由於 Apache Log4j 的普及性,全球有數以億計的裝置都會受影響。

Log4Shell 如何運作

Log4Shell 是一個 Java Naming and Directory Interface™(JNDI)的注入漏洞,可容許遙距執行代碼(RCE)。歹徒可以將未獲信任的數據(例如惡意軟件孢子)包括在受影響 Apache Log4j 版本的目錄訊息內,透過搜尋 JNDI 來建立與惡意伺服器的連繫,結果是他們可以在全球任何地方全面登入您的系統。

由於 JNDI 搜尋可支援不同種類的目錄,如網域名稱系統(DNS)、為機構網絡裝置提供寶貴資料的輕型目錄存取協定(LDAP)、遠程方法調用(RMI)及物件請求代理間通信協定(IIOP),Log4Shell 亦會導致其他威脅,如:

  • 挖礦:歹徒會利用您的系統資源來挖掘加密貨幣,而這亦是一個代價高昂的威脅,因為大量用於運作雲端服務及應用程式的電腦效能都會被盜用。
  • 網絡阻斷服務攻擊(DoS):這威脅讓歹徒關閉及/或停用一個網絡、網站或服務,令被針對機構不能登入或進行存取。
  • 勒索程式:在進行遙距執行代碼後,歹徒可以搜集及加密數據作勒索用途。

以下為可能的感染途徑:

可能的感染過程示意圖。

帶漏洞的產品、應用程式及附加元件

基本上包括所有運行 2.0 至 2.14.1 版本 Apache Log4j 且連接互聯網的裝置。受影響版本包含在 Apache Struts、Apache Solr、Apache Druid、Elasticsearch、Apache Dubbo 及 VMware vCenter 之內。

補丁及緩解方法

Apache 已即時發佈 Apache Log4j 版本 2.15.0 來修補此漏洞,不過此版本只適用於 Java 8 之上。早期版本的用戶需要套用及重新套用暫時性防範措施。在本文發佈一刻,Apache 已發佈 2.16.0 版本,並建議用戶盡快更新可能被影響的資料庫。

其他獲強力推薦的緩解策略包括虛擬補丁及採用入侵偵測/防禦系統(IDS/IPS)。虛擬補丁可防止漏洞被進一步濫用,而 IDS/IPS 則可檢查入口和出口流量以找出可疑行為。

fernando

產品管理副總裁

筆

Fernando Cardoso 是趨勢科技產品管理副總裁,專長於不斷演進的人工智能與雲端世界。他的職業生涯由擔任網路與銷售工程師開始,並在數據中心、雲端、DevOps 及網絡資訊保安領域都具備優異技能,而他對這些領域依然煥發了無比熱情。

Fernando 在網絡資訊保安產業擁有超過 13 年經驗,曾帶領過多項雲端防護、DevSecOps 及人工智能防護計劃,並與全球客戶及策略合作夥伴密切合作,如 AWS、NVIDIA 和 Microsoft。此外,他還是全球知名意見領袖,經常擔任演講嘉賓,包括 AWS re:Invent 到 NVIDIA GTC 以及 Black Hat 的人工智能高峰會。

Fernando 帶領全球產品經理團隊,推動上市策略、進行市場研究,並提供創新技術來持續塑造安全、智慧雲端環境的未來。