如何看待 Apache Log4j 2 远程代码执行漏洞?
Apache Log4j2 是一款優秀的 Java 日志框架,大量的業務框架都使用了該組件。
2021 年 11 月 24 日,阿里云安全團隊向 Apache 官方報告了 Apache Log4j2 遠程代碼執行漏洞,這個漏洞觸發條件低,危害大。
12 月 10 日凌晨,Apache 開源項目 Log4j 的遠程代碼執行漏洞細節被公開,由于 Apache Log4j2 某些功能存在遞歸解析功能,攻擊者可直接構造惡意請求,觸發遠程代碼執行漏洞。
CVE 編號:CVE-2021-44228
受影響版本:log4j2 2.0-beta9~2.14.1
這一則消息一出,讓很多安全工程師難以入眠,立刻起身進入“戰斗防御狀態”。這就讓我想到了最近的浙江疫情,醫護人員連夜緊急到位進入“戰斗狀態”。
(PS:最近疫情高發,小伙伴們一定要勤洗手、帶口罩、勿亂跑哦!)
除了各企業的安全人員,各安全大廠商也是立刻開始進行漏洞真實性的驗證,并緊急通知用戶進行規則升級以抵御最新漏洞,避免漏洞危害嚴重擴散。
到底有多嚴重呢?我隨便說一個,自己感受一下:
企業打補丁可能需要幾小時,甚至要花上好幾天,但黑客攻擊,卻只需要幾分鐘時間!到底是打補丁更快,還是黑客攻擊更快,就不用我多說吧?
Apache Log4j2 并不是一個特定的 Web 服務,而是一個用于處理日志的第三方日志框架(庫),任何 Java Web 都可能使用到該日志框架,使用 Log4j2 的真的超級多,多到數不清。
真要數出個一二,不如數沒有使用 Log4j2 的來得更快一些。可想而知,被攻擊后,波及范圍有多廣了。
那如何復現這個漏洞,并修復呢?
我們可以通過很多基于 Java 開發的 Web 服務來復現這個漏洞,只要該服務使用到 log4j2 庫(漏洞影響范圍內的版本)即可,比如 Apache Solr 。
觸發漏洞的方法非常簡單,只需要向 Solr 管理員接口的 action 參數發送 Payload ,由于該接口會調用 log4j 記錄日志,因此會觸發漏洞執行。該接口如下:
http://127.0.0.1:8983/solr/admin/cores?action=接下來使用 DNSlog 來構造驗證 Payload。
DNS Log 對于大部分滲透測試的同學來說,應該會比較熟悉,經常被用于測試盲打盲注類的漏洞。
如果你不清楚,可以簡單理解為:我們獲取一個臨時的域名,如果遠程服務器嘗試訪問該域名,就會在 DNS 上留下訪問記錄,此時我們可以通過查詢該記錄獲取到一些外帶信息。
當然了, DNS log 只是作為驗證漏洞是否存在的方法之一,并不是唯一解。
藍橋云課小小地蹭了個熱度圖片,推出了《 Apache Log4j 2 遠程代碼執行漏洞詳解》,用動手實驗的方式來幫助大家復現 Apache Log4j2 遠程代碼執行漏洞。
本次課程會詳細介紹該漏洞原理、利用方式、挖掘方式和修復方法,并包含可動手操作的在線實驗環境,幫助你更加深刻的理解該漏洞。
重點來了!即刻起,免費學!
Apache Log4j 2 遠程代碼執行漏洞
現在,我們來說說漏洞的挖掘方法和工具。
漏洞挖掘可以分別從白盒和黑盒兩個角度進行:
- 如果你是審查自己的應用是否受到 log4j2 漏洞影響,白盒測試是你應該首選的方式,能夠幫助你從源碼層面做最全面的檢查。
- 黑盒測試有著很大的不確定性,因為從黑盒角度來說,任何一個參數都可能會觸發 log4j2 漏洞。因此黑盒測試的準確性,很大一部分取決于測試到的參數是否全面。
我推薦兩款工具,供大家參考:
1、白盒測試推薦使用下面這個工具進行源代碼掃描:
CVE-2021-44228-Scanner
可以根據平臺下載對應的版本:
2、黑盒測試推薦使用下面這個工具:
BurpSuite Pro 插件
打開 BurpSuite Pro,切換到 Extender -> BApp Store,在右側的搜索框中搜索 log4,可以看到兩個插件(截止 2021 年 12 月 22 日):
- log4shell Everywhere:被動掃描插件
- log4Shell Scanner:主動掃描插件
分別安裝以上兩個插件,然后在 Active Scan 和 Passive Scan 中便會自動檢查 log4j 漏洞,如果有發現漏洞,結果會在 Dashboard 中展示。
好了,今天的 Apache Log4j 2 遠程代碼執行漏洞就分享到這里了。如果你想要復現此漏洞,并自己實操練習的話,可以戳下方鏈接免費體驗哦~
Apache Log4j 2 遠程代碼執行漏洞
總結
以上是生活随笔為你收集整理的如何看待 Apache Log4j 2 远程代码执行漏洞?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 美赛开赛在即,你准备好了吗?
- 下一篇: 程序员最真实现状