01背景介紹
Apache Log4j2是一個基于Java的日志記錄工具。該工具重寫了Log4j框架,并且引入了大量豐富的特性。該日志框架被大量用于業務系統開發,用來記錄日志信息。大多數情況下,開發者可能會將用戶輸入導致的錯誤信息寫入日志中。
近日,網絡上出現 Apache Log4j2 遠程代碼執行漏洞,攻擊者可利用該漏洞構造特殊的數據請求包,最終觸發遠程代碼執行。
02漏洞描述
攻擊者可以通過發送精心構造的數據請求到使用Apache Log4j 作為日志組的應用系統來利用此漏洞,對攻擊者的惡意輸入進行打印的情況下,將觸發遠程代碼執行漏洞。
經驗證,Apache Struts2、Apache Solr、Apache Druid、Apache Flink等均受影響,漏洞利用無需特殊配置。
受影響版本:
Apache Log4j 2.x < 2.15.0-rc2
03修復建議
1、建議受影響用戶盡快升級到安全版本應盡快升級Apache Log4j-2 至2.15.0-rc2版。
官方安全版本下載可以參考以下鏈接:
https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2
2、建議對 Apache Struts2/Apache Solr/Apache Flink/Apache Druid 等已知受影響的應用及組件進行升級。
3、臨時性緩解措施(任選一種)
在jvm參數中添加 -Dlog4j2.formatMsgNoLookups=true;
系統環境變量中將FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS設置為true;
創建“log4j2.component.properties”文件,文件中增加配置“log4j2.formatMsgNoLookups=true”。