漏洞說明
Apache Log4j重大風險漏洞Log4Shell,影響包括微軟Minecraft、蘋果iCloud及Steam等大型網站,被資安專家稱為近10年來最嚴重漏洞。
Log4Shell為一個注入漏洞,因Log4j除為Java提供紀錄檔功能外,亦提供查詢(lookup)功能,攻擊者可發送惡意HTTP請求至受駭伺服器,觸發查詢功能並誘導至駭客架設之LDAP伺服器下載惡意Java類別,進而利用漏洞達成遠端執行程式碼。
CVE編號
可能風險
攻擊者可藉由發送惡意訊息,觸發查詢功能,利用漏洞進而遠端執行任意程式碼。
使用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。