-重大漏洞資訊Log4shell

漏洞說明

Apache Log4j重大風險漏洞Log4Shell,影響包括微軟Minecraft、蘋果iCloud及Steam等大型網站,被資安專家稱為近10年來最嚴重漏洞。

Log4Shell為一個注入漏洞,因Log4j除為Java提供紀錄檔功能外,亦提供查詢(lookup)功能,攻擊者可發送惡意HTTP請求至受駭伺服器,觸發查詢功能並誘導至駭客架設之LDAP伺服器下載惡意Java類別,進而利用漏洞達成遠端執行程式碼。


 

CVE編號

CVE-2021-44228

CVE-2021-45046


 

可能風險

攻擊者可藉由發送惡意訊息,觸發查詢功能,利用漏洞進而遠端執行任意程式碼。

影響平台

CVE-2021-44228:Apache Log4j 2.0-beta9至2.14.1(含)版本

CVE-2021-45046:Apache Log4j 2.0-beta9至2.15.0(含)版本,但不含2.12.2版本

檢測方式

使用CVE-2021-44228-scanner工具進行檢測

CVE-2021-44228_scanner由美國卡內基美隆大學軟體工程研究所(Software Engineering Institute,SEI)負責維運之CERT/CC提供,包含PowerShell、Python及Bash等3種檢測方式與腳本。

下載網址: https://github.com/CERTCC/CVE-2021-44228_scanner

下載網址: 各腳本檢測方式請參閱附件。

修補方式

Apache Log4j官方網頁已針對此漏洞釋出更新程式,請各機關聯絡設備維護廠商進行版本確認並更新:

https://logging.apache.org/log4j/2.x/security.html

 

適用對象 Java 8 Java 7 Java 6
log4j版本 log4j 2.17.0或之後的版本 log4j 2.12.3或之後的版本 log4j 2.3.1或之後的版本

 

緩解方式

  1. 透過以下步驟停用JNDI Lookup功能,以緩解此漏洞
    1. 針對log4j版本>=2.10的系統
      A.請設定屬性「log4j2.formatMsgNoLookups=true」。
      B.請設定環境變數「LOG4J_FORMAT_MSG_NO_LOOKUPS=true」。
    2. 針對log4j版本為2.0-beta9到2.10.0的系統請自類別路徑(class path)中移除JndiLookup.class。
      「如執行下列指令,以自log4j-core中移除該類別:
      「zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class」。
  2. 透過WAF對相關惡意語法進行過濾與阻擋,使用對外防護設備針對JNDI之相關惡意攻擊行為設定規則進行阻擋,例如:"$(jndi:ldap://"。
  3. 評估於Java伺服器增加以下設定以防止下載與執行可能具風險之惡意Java類別。將com.sun.jndi.ldap.object.trustURLCodebase設定為false,使JNDI無法使用LDAP下載遠端Codebase。

新聞來源:https://www.nics.nat.gov.tw/core_business/information_security_information_sharing/Critical_Vulnerability_Information/Log4shell/
發布日期:12/11/2024