亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

發布時間:2022-01-18 16:24:46 來源:億速云 閱讀:372 作者:柒染 欄目:安全技術

這篇文章的內容主要圍繞如何進行XXL-JOB API接口未授權訪問RCE漏洞復現進行講述,文章內容清晰易懂,條理清晰,非常適合新手學習,值得大家去閱讀。感興趣的朋友可以跟隨小編一起閱讀吧。希望大家通過這篇文章有所收獲!

XXL-JOB描述

XXL-JOB是一個輕量級分布式任務調度平臺,其核心設計目標是開發迅速、學習簡單、輕量級、易擴展。現已開放源代碼并接入多家公司線上產品線,開箱即用。

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

一、 漏洞詳情

此次漏洞核心問題是 GLUE 模式。XXL-JOB 通過“GLUE模式”支持多語言以及腳本任務,該模式任務特點如下:

● 多語言支持:支持 Java、Shell、Python、NodeJS、PHP、PowerShell……等類型。

● Web IDE:任務以源碼方式維護在調度中心,支持通過 Web IDE 在線開發、維護。

● 動態生效:用戶在線通過 Web IDE 開發的任務代碼,遠程推送至執行器,實時加載執行。

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

如上圖所示,如果在 GLUE 模式任務代碼中寫入攻擊代碼,推送到執行器執行即可造成遠程攻擊。

【漏洞描述】

XXL-JOB的Restful API接口或RPC接口沒有配置認證措施,未授權的攻擊者可構造惡意請求,造成遠程執行命令

【漏洞評級】

高危

【受影響版本】

XXL-JOB <= 2.2.0

二、 環境搭建

整體思路:源代碼下載->Maven安裝依賴->配置部署“調度中心”->配置部署“執行器項目”->完成部署

本地開發環境:Java8+Maven3.6

1. Github下載源代碼

地址:https://github.com/xuxueli/xxl-job/releases/tag/v2.2.0

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

2. Maven下載所需要的依賴

Idea打開解壓后的源代碼,自動會進行pom中的相關依賴安裝,也可以在終端使用maven命令下載所需要的依賴

3. 數據庫配置

調度數據庫初始化SQL腳本位置為:

/xxl-job/doc/db/tables_xxl_job.sql

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

因為本地未安裝mysql,故使用docker安裝。

a) docker pull mysql:5.7

b) sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

這樣我們就啟動了mysql容器,賬號為root,密碼為123456

使用navicat接連數據庫

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現可以點擊左下角,完成測試連接。在導入的數據庫右鍵,選擇運行SQL文件,點擊開始即可完成數據庫的導入。

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

4. 配置部署“調度中心”

調度中心項目:xxl-job-admin

作用:統一管理任務調度平臺上調度任務,負責觸發調度執行,并且提供任務管理平臺。可根據實際情況自行修改application.properties中的數據庫配置

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

執行XxlJobAdminApplication啟動調度中心

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現我們使用推薦的Springboot來管理執行器

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現查看配置文件,發現xxl.job.executor.logpath參數,我們可以新建或修改該路徑,以防止程序執行出現問題。Mac新系統不存在data路徑,發現使用mkdir創建路徑發現失敗,這是因為mac系統中關閉了Sip,使用sudo mount -uw /來解除Sip的限制。運行XxlJobExecutorApplication來啟動執行器。瀏覽器打開//localhost:8080/,看到登入界面,確保啟動成功,默認登錄賬號“admin/123456”

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

注意點:

建議先創建/data/applogs/xxl-job,程序中多處配置文件使用該路徑

修改調度中心數據庫配置

Linux/Unix可使用lsof來查看端口占用情況,防止啟動失敗

調度中心和執行器可以根據實際情況分開部署

三、漏洞復現

查看官方文檔可以看到執行器RESTful API中觸發任務接口說明

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現其中的任務運行模式有以下幾種

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現查看GulueTypeEnum源代碼

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現所以我們利用Burpsuite構造我們的POC

如何進行XXL-JOB API接口未授權訪問RCE漏洞復現

Tips:

修改glueSource時,如果執行未生效,請修改jobId

當重啟項目時,發現端口啟動異常,請關閉BurpSuite

由于 XXL-JOB 官方版本原生自帶鑒權組件,開啟后可保障系統底層通訊安全。XXL-JOB 作者表示正常情況下調度中心與執行器底層通訊是安全的,不存在遠程命令漏洞。但如果執行器未開啟訪問令牌,會導致無法識別并攔截非法的調度請求。惡意請求方可以借助 GLUE 模式,推送惡意攻擊代碼實現遠程攻擊。因此,XXL-JOB 作者認為該問題本質上不屬于 “漏洞”,官網版本提供了鑒權組件,開啟即可進行防護。

四、修復建議

1. 開啟 XXL-JOB 自帶的鑒權組件:官方文檔中搜索 “xxl.job.accessToken”,按照文檔說明啟用即可。

2. 端口訪問限制:通過配置安全組限制只允許指定IP才能訪問端口

感謝你的閱讀,相信你對“如何進行XXL-JOB API接口未授權訪問RCE漏洞復現”這一問題有一定的了解,快去動手實踐吧,如果想了解更多相關知識點,可以關注億速云網站!小編會繼續為大家帶來更好的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

招远市| 涡阳县| 封丘县| 杂多县| 昌都县| 长岭县| 连城县| 伽师县| 崇阳县| 西乡县| 苏州市| 昌宁县| 察哈| 抚顺县| 高尔夫| 射阳县| 吉首市| 乐至县| 会东县| 普格县| 花垣县| 马龙县| 贞丰县| 老河口市| 泰安市| 汤阴县| 翁牛特旗| 阿鲁科尔沁旗| 蒙城县| 凤翔县| 商丘市| 临城县| 瑞丽市| 东乡县| 漾濞| 灵宝市| 恭城| 繁昌县| 墨玉县| 黄冈市| 博罗县|