日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

【web安全】Spring Data Commons 1.13.10 SpEL漏洞分析

發布時間:2025/3/21 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【web安全】Spring Data Commons 1.13.10 SpEL漏洞分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、簡介

Spring Data是一個用于簡化數據庫訪問,并支持云服務的開源框架,Spring Data Commons是Spring Data下所有子項目共享的基礎框架。Spring Data Commons 在2.0.5及以前版本中,存在一處SpEL表達式注入漏洞,攻擊者可注入惡意SpEL表達式以執行任意命令,漏洞編號為CVE-2018-1273。

? 該漏洞發生在屬性自動綁定階段,當用戶在項目中利用了Spring Data的相關Web特性對用戶的輸入參數進行自動匹配的時候,會將用戶提交的Form表單的key值作為SpEL的執行內容,利用該特性,發送Payload將可能導致遠程代碼執行。

二、影響版本

  • Spring Data Commons 1.13 to 1.13.10 (Ingalls SR10)
  • Spring Data REST 2.6 to 2.6.10 (Ingalls SR10)
  • Spring Data Commons 2.0 to 2.0.5 (Kay SR5)
  • Spring Data REST 3.0 to 3.0.5 (Kay SR5)
  • Older unsupported versions are also affected

三、環境搭建

所使用Spring Data Commons 測試版本為1.13.10

搭建效果如下圖:

四、漏洞復現

【→所有資源關注我,私信回復“資料”獲取←】
1、網絡安全學習路線
2、電子書籍(白帽子)
3、安全大廠內部視頻
4、100份src文檔
5、常見安全面試題
6、ctf大賽經典題目解析
7、全套工具包
8、應急響應筆記

  • 以Post 請求發送form表單(含key-value)
  • 在key的名稱中包含Payload
  • 提交的key名字已在Controller中實現有getName()
  • 在key后面補上一段SPEL代碼片段。
  • example:name[T(java.lang.Runtime).getRuntime().exec(“calc”)]

    漏洞復現效果,如下圖所示:

    五、漏洞原理

    ? 尋找漏洞代碼段,定位到spring-data-commons-1.13.10.RELEASE.jar!org.springframework.data.web.ProxyingHandlerMethodArgumentResolver.class#createAttribute(),程序錯誤將用戶輸入傳遞至MapDataBinder.bind方法。

    惡意數據帶入,效果如下圖所示:

    當用戶使用[]嵌套屬性語法,程序將[]中SPEL表達式解析并得到屬性(特性),于是攻擊者可注入惡意SpEL表達式以執行任意命令。

    ? 特性:通過一定的規則對及格進行篩選,構造出另一個集合 語法:“(list|map).? [選擇表達式]” 選擇表達式結果必須是boolean類型,如果true則選擇的元素將添加到新集合中,false將不添加到新集合中。

    解析SPEL表達式,效果如下圖所示:

    六、POC構造

    ? 在實戰中需要Fuzz字段,找尋自動屬性字段。實驗中Controller代碼Account.name 已使用Spring默認構造器屬性String getName()。故選取name為注入參數。

    使用[]嵌套屬性語法,程序將[]中SPEL表達式解析并得到屬性,故POC 嘗試 name[T(java.util.Arrays).toString(T(java.nio.file.Files).list(T(java.nio.file.Paths).get(‘d:\i4Tools7’)).toArray())]

    ? 但Response頁面報錯并無回顯點,故此類文件讀取POC無法驗證漏洞存在,無法驗證代碼執行成功。

    ? 嘗試使用DNSLOG 驗證執行成功,故POC 調整為,如burp圖中所示。

    驗證DNSLOG出網,效果如下圖所示:

    七、修復方法

    ? 將pom.xml中的org.springframework.boot設置為1.13.11版本或更新版本。

    補丁將StandardEvaluationContext替代為SimpleEvaluationContext。

    因SimpleEvaluationContext不包括 Java 類型引用,構造函數和 bean 引用,所以安全性較高。

    補丁修復,效果如下圖所示:

    八、小結

    ? 在審計中,可使用關鍵字加快進展,如org.springframework.expression.spel.standard、 expression.getValue()、expression.setValue() 、StandardEvaluationContext。

    ? SPEL表達式較為靈活,其可以很好地適配業務中“經常變化”的部分,這可以是“業務規則”,也可以是“不同的數據處理邏輯”,SpEL的T{}表達式靈活具備反射的特點,在Spring環境下無需額外導包較為便捷。常見的SPEL實現資源的注入有如:調用各種資源的情況,包含普通文件、網址、配置文件、系統環境變量、使用預先定義模板的方式獲取或者設置某對象中指定屬性名的屬性值。

    ? 在項目中運用Spel技術的開發人員編程水平通常較高,也正是這種巧妙運用,使得漏洞較為隱蔽,較難實現一致性修復,需要安全人員付出足夠耐心去尋找查核修復完成情況。

    總結

    以上是生活随笔為你收集整理的【web安全】Spring Data Commons 1.13.10 SpEL漏洞分析的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 三级三级久久三级久久18 | 午夜精品久久久久久久 | 一区二区三区福利视频 | 狠狠躁日日躁夜夜躁 | 久艹av | 婷婷国产一区二区三区 | 操操操操操操 | 97在线免费视频观看 | 欧美少妇网| 午夜美女视频 | 久久久精品人妻av一区二区三区 | 在线观看免费高清在线观看 | 多男调教一女折磨高潮高h 国内毛片毛片毛片毛片毛片 | 欧美黄色一区 | 欧美一级网站 | 电家庭影院午夜 | 欧美精品人妻一区二区 | 午夜精品一区二区在线观看 | 色吧视频 | 啊v视频在线 | 天天色综合av | 欧美 日韩 国产 成人 | 无码内射中文字幕岛国片 | 娇妻被老王脔到高潮失禁视频 | 国产精品欧美久久久久久 | 爽爽窝窝午夜精品一区二区 | 国产人妻精品午夜福利免费 | 综合成人在线 | 美女日日日 | 五月深爱网 | 欧美色老头| 在线观看av网页 | 91婷婷| 男人天堂久久 | 成人免费黄色大片 | 国产在线97 | 国产一级片中文字幕 | 成人精品亚洲人成在线 | 久久久91精品国产一区二区三区 | 天天操妹子 | 91国内揄拍国内精品对白 | 在线观看日韩一区二区 | 天堂av中文在线观看 | 国产又粗又猛视频 | 色屁屁www影院免费观看入口 | 色91精品久久久久久久久 | 亚洲伦理视频 | 青青草原国产视频 | 亚洲午夜精选 | 黄色中文视频 | 国产一区二区毛片 | 国产精品无码人妻一区二区在线 | 中国黄色三级 | 色999在线观看 | 日本一区二区久久 | 久久99精品久久久 | 欧美日韩在线成人 | 久久99深爱久久99精品 | 亚洲欧美另类在线视频 | 国产高清在线精品 | 午夜av福利 | 北条麻妃青青久久 | www.亚洲激情 | 麻豆精品影院 | 欧美黑人一级爽快片淫片高清 | 超碰666 | 99热在线看 | 免费av网站在线播放 | 国产麻豆精品视频 | 97伦伦午夜电影理伦片 | a级片免费播放 | 国产91精品露脸国语对白 | 久久国产综合 | 性xxxfllreexxx少妇| 97视频在线 | 伊人久久艹 | 爱情岛论坛永久入口 | av拍拍拍 | 午夜激情免费 | 丁香婷婷久久久综合精品国产 | 日本少妇色视频 | 亚洲美女啪啪 | 少妇一夜三次一区二区 | 澳门三级| 一边摸一边做爽的视频17国产 | 少妇一级免费 | 久久riav| 天堂一区 | 黄色综合网 | 天天操天天插天天射 | 黄色小毛片| 影音先锋黄色资源 | 天天色一色| 99香蕉视频 | www.日韩欧美 | 日韩精品三级 | 高清免费毛片 | 美女免费毛片 | 床戏高潮做进去大尺度视频网站 |