Java 日志庫Log4j2注入漏洞復現,看看它危害有多大(附代碼)
上周Java日志庫Log4j2的注入漏洞CVE-2021-44228,被定義為極高危漏洞,國外評分為10(滿分為10)。讓各廠的工程師忙的不可開交,加急通宵處理這個漏洞。為什么大家都這么重視這個漏洞,今天就對這個漏洞進行復現,來認識一下它的危害性。本DEMO目的是認識該漏洞的危害性并根據您系統(tǒng)的情況做出針對性的防御。
警告
- 本DEMO只是針對技術層面的研究,不涉及惡意遠程計算機侵入方面的相關腳本,而且僅能在本機執(zhí)行。
請勿利用漏洞非法侵入他人計算機。否則您將可能承擔以下侵權責任:
根據《中華人民共和國治安管理處罰法》第二十九條 對違反國家規(guī)定,侵入計算機信息系統(tǒng),造成危害的,處五日以下拘留;情節(jié)較重的,處五日以上十日以下拘留。
根據《中華人民共和國刑法》第二百八十五條第一款的規(guī)定,犯本罪的,處三年以下有期徒刑或者拘役。單位犯本罪的,對單位判處罰金,并對其直接負責的主管人員和其他直接責任人員,依照上述規(guī)定處罰。
- 請勿利用漏洞進行非法活動,否則將承擔相應的法律責任。
漏洞復現
由于本漏洞可執(zhí)行高權限操作,危害性極大,因此不對細節(jié)進行詳細展開。僅僅用來演示,你可以針對自己的系統(tǒng)副本進行對應的測試以進行漏洞復現。
復現預期
src包下的Log4j2中的日志打印存在CVE-2021-4428漏洞,直接在Log4j2執(zhí)行JNDI注入,可以直接拉起Windows的計算器應用。效果圖如下:
環(huán)境
本復現DEMO需要以下環(huán)境:
Windows操作系統(tǒng)。
nodejs環(huán)境,無明確版本要求。
java環(huán)境,無明確版本要求,本DEMO是在Java 8的環(huán)境下編寫的。
log4j日志庫,版本需在漏洞版本范圍,本DEMO使用2.13.3版本。
步驟
克隆本項目后,進入項目根目錄執(zhí)行:
- cd http-server
- # 安裝
- npm i
- # 啟動服務
- node index
然后執(zhí)行src包下的main方法即可進行復現操作。
本文轉載自微信公眾號「碼農小胖哥」,可以通過以下二維碼關注。轉載本文請聯系碼農小胖哥公眾號。