<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>

          如何防范SpringBoot 相關(guān)漏洞?

          共 10768字,需瀏覽 22分鐘

           ·

          2021-09-02 18:54

          Spring Boot可能是習(xí)慣于用Java的小伙伴們用的最多的一種應(yīng)用框架,但是各位程序猿小伙伴知不知道Spring Boot有哪些平時不容易注意到的漏洞需要避免呢?

          小編今天就給大家介紹一個GitHub上關(guān)于Spring Boot漏洞大集合的項目,不過要注意的是,這個項目的初衷可是讓大家研究和測試這些漏洞,以防自己的程序留下不安全的后門,可不要故意使用這些漏洞造成他人的損害喲~

          小編先帶大家看下整個項目的目錄:

          - Spring Boot Vulnerability Exploit Check List
            - 零:路由和版本
              - 0x01:路由知識
              - 0x02:版本知識
                - 組件版本的相互依賴關(guān)系:
                - Spring Cloud 與 Spring Boot 版本之間的依賴關(guān)系:
                - Spring Cloud 小版本號的后綴及含義:
            - 一:信息泄露
              - 0x01:路由地址及接口調(diào)用詳情泄漏
              - 0x02:配置不當而暴露的路由
              - 0x03:獲取被星號脫敏的密碼的明文 (方法一)
                - 利用條件:
                - 利用方法:
                  - 步驟一: 找到想要獲取的屬性名
                  - 步驟二:jolokia 調(diào)用相關(guān) Mbean 獲取明文
              - 0x04:獲取被星號脫敏的密碼的明文 (方法二)
                - 利用條件:
                - 利用方法:
                  - 步驟一: 找到想要獲取的屬性名
                  - 步驟二: 使用 nc 監(jiān)聽 HTTP 請求
                  - 步驟三: 設(shè)置 eureka.client.serviceUrl.defaultZone 屬性
                  - 步驟四: 刷新配置
                  - 步驟五: 解碼屬性值
              - 0x05:獲取被星號脫敏的密碼的明文 (方法三)
                - 利用條件:
                - 利用方法:
                  - 步驟一: 找到想要獲取的屬性名
                  - 步驟二: 使用 nc 監(jiān)聽 HTTP 請求
                  - 步驟三: 觸發(fā)對外 http 請求
                  - 步驟四: 刷新配置
              - 0x06:獲取被星號脫敏的密碼的明文 (方法四)
                - 利用條件:
                - 利用方法:
                  - 步驟一: 找到想要獲取的屬性名
                  - 步驟二: 下載 jvm heap 信息
                  - 步驟三: 使用 MAT 獲得 jvm heap 中的密碼明文
            - 二:遠程代碼執(zhí)行
              - 0x01:whitelabel error page SpEL RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:找到一個正常傳參處
                  - 步驟二:執(zhí)行 SpEL 表達式
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x02:spring cloud SnakeYAML RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一: 托管 yml 和 jar 文件
                  - 步驟二: 設(shè)置 spring.cloud.bootstrap.location 屬性
                  - 步驟三: 刷新配置
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x03:eureka xstream deserialization RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:架設(shè)響應(yīng)惡意 XStream payload 的網(wǎng)站
                  - 步驟二:監(jiān)聽反彈 shell 的端口
                  - 步驟三:設(shè)置 eureka.client.serviceUrl.defaultZone 屬性
                  - 步驟四:刷新配置
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x04:jolokia logback JNDI RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:查看已存在的 MBeans
                  - 步驟二:托管 xml 文件
                  - 步驟三:準備要執(zhí)行的 Java 代碼
                  - 步驟四:架設(shè)惡意 ldap 服務(wù)
                  - 步驟五:監(jiān)聽反彈 shell 的端口
                  - 步驟六:從外部 URL 地址加載日志配置文件
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x05:jolokia Realm JNDI RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:查看已存在的 MBeans
                  - 步驟二:準備要執(zhí)行的 Java 代碼
                  - 步驟三:托管 class 文件
                  - 步驟四:架設(shè)惡意 rmi 服務(wù)
                  - 步驟五:監(jiān)聽反彈 shell 的端口
                  - 步驟六:發(fā)送惡意 payload
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x06:restart h2 database query RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:設(shè)置 spring.datasource.hikari.connection-test-query 屬性
                  - 步驟二:重啟應(yīng)用
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x07:h2 database console JNDI RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:訪問路由獲得 jsessionid
                  - 步驟二:準備要執(zhí)行的 Java 代碼
                  - 步驟三:托管 class 文件
                  - 步驟四:架設(shè)惡意 ldap 服務(wù)
                  - 步驟五:監(jiān)聽反彈 shell 的端口
                  - 步驟六:發(fā)包觸發(fā) JNDI 注入
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x08:mysql jdbc deserialization RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:查看環(huán)境依賴
                  - 步驟二:架設(shè)惡意 rogue mysql server
                  - 步驟三:設(shè)置 spring.datasource.url 屬性
                  - 步驟四:刷新配置
                  - 步驟五:觸發(fā)數(shù)據(jù)庫查詢
                  - 步驟六:恢復(fù)正常 jdbc url
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x09:restart logging.config logback JNDI RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:托管 xml 文件
                  - 步驟二:托管惡意 ldap 服務(wù)及代碼
                  - 步驟三:設(shè)置 logging.config 屬性
                  - 步驟四:重啟應(yīng)用
                - 漏洞原理:
                - 漏洞分析:
                - 漏洞環(huán)境:
              - 0x0A:restart logging.config groovy RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:托管 groovy 文件
                  - 步驟二:設(shè)置 logging.config 屬性
                  - 步驟三:重啟應(yīng)用
                - 漏洞原理:
                - 漏洞環(huán)境:
              - 0x0B:restart spring.main.sources groovy RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:托管 groovy 文件
                  - 步驟二:設(shè)置 spring.main.sources 屬性
                  - 步驟三:重啟應(yīng)用
                - 漏洞原理:
                - 漏洞環(huán)境:
              - 0x0C:restart spring.datasource.data h2 database RCE
                - 利用條件:
                - 利用方法:
                  - 步驟一:托管 sql 文件
                  - 步驟二:設(shè)置 spring.datasource.data 屬性
                  - 步驟三:重啟應(yīng)用
                - 漏洞原理:
                - 漏洞環(huán)境:
                

          以信息泄露為例,對于0x01:路由地址及接口調(diào)用詳情泄漏,項目描述到:

          開發(fā)人員沒有意識到地址泄漏會導(dǎo)致安全隱患或者開發(fā)環(huán)境切換為線上生產(chǎn)環(huán)境時,相關(guān)人員沒有更改配置文件,忘記切換環(huán)境配置等

          可以直接訪問以下兩個 swagger 相關(guān)路由,驗證漏洞是否存在:

          /v2/api-docs
          /swagger-ui.html

          其他一些可能會遇到的 swagger、swagger codegen、swagger-dubbo 等相關(guān)接口路由:

          /swagger
          /api-docs
          /api.html
          /swagger-ui
          /swagger/codes
          /api/index.html
          /api/v2/api-docs
          /v2/swagger.json
          /swagger-ui/html
          /distv2/index.html
          /swagger/index.html
          /sw/swagger-ui.html
          /api/swagger-ui.html
          /static/swagger.json
          /user/swagger-ui.html
          /swagger-ui/index.html
          /swagger-dubbo/api-docs
          /template/swagger-ui.html
          /swagger/static/index.html
          /dubbo-provider/distv2/index.html
          /spring-security-rest/api/swagger-ui.html
          /spring-security-oauth-resource/swagger-ui.html

          除此之外,下面的 spring boot actuator 相關(guān)路由有時也會包含(或推測出)一些接口地址信息,但是無法獲得參數(shù)相關(guān)信息:

          /mappings
          /metrics
          /beans
          /configprops
          /actuator/metrics
          /actuator/mappings
          /actuator/beans
          /actuator/configprops

          一般來講,暴露出 spring boot 應(yīng)用的相關(guān)接口和傳參信息并不能算是漏洞,但是以 "默認安全" 來講,不暴露出這些信息更加安全。

          對于攻擊者來講,一般會仔細審計暴露出的接口以增加對業(yè)務(wù)系統(tǒng)的了解,并會同時檢查應(yīng)用系統(tǒng)是否存在未授權(quán)訪問、越權(quán)等其他業(yè)務(wù)類型漏洞。

          是不是淺顯易懂,一下子就講明白了整個漏洞的原理及校驗方式?看完整個項目,一定能讓大家學(xué)會如何利用方法和技巧,做到黑盒安全評估!想學(xué)習(xí)的小伙伴,趕緊跟著小編一起上車!

          點擊下方卡片,關(guān)注公眾號“TJ君

          回復(fù)“漏洞”,獲取項目地址

          瀏覽 71
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

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

          手機掃一掃分享

          分享
          舉報
          <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>
                  亚洲国产精品成人无码区 | 爱草逼爱草逼爱草逼爱草逼爱草逼爱草逼爱草逼 | 内射视频首页 | 青草午夜视频 | 黄片免费观看永久 |