写点什么

CVE-2021-37580 Apache ShenYu 身份验证绕过漏洞复现

作者:美创科技
  • 2022 年 8 月 05 日
  • 本文字数:717 字

    阅读完需:约 2 分钟

CVE-2021-37580 Apache ShenYu 身份验证绕过漏洞复现

漏洞简介

Apache ShenYu 是一个异步的,高性能的,跨语言的,响应式的 API 网关,Apache ShenYu 功能十分强大且易于扩展,支持各种语言的 http 协议,同时支持 Dubbo、 Spring Cloud、 gRPC、 Motan、 Sofa、 Tars 等协议。2021 年 11 月,Apache ShenYu 被爆出存在身份认证绕过漏洞,攻击者可以通过该漏洞绕过 JWT(JSON Web Token)安全认证机制,直接进入系统后台。

影响版本

该漏洞影响 Apache ShenYu 的以下版本:

  • Apache ShenYu 2.3.0

  • Apache ShenYu 2.4.0

环境搭建

首先使用 docker 搭建存在漏洞的 Apache ShenYu 2.4.0 环境

使用 sudo docker pull apache/shenyu-admin:2.4.0 命令拉取容器



使用命令 sudo docker run --rm -d apache/shenyu-admin:2.4.0 开启 Apache ShenYu 容器



运行 docker ps 命令查看容器是否正常启动



此时容器的映射端口时存在问题的,需要运行下面的命令重新映射端口并重启容器




sudo docker stop 61c1b797c35dsudo docker run --rm -d -p 9095:9095 apache/shenyu-admin:2.4.0sudo docker ps -a
复制代码



浏览器访问 http://ip:9095/出现如下界面则证明 Apache ShenYu 2.4.0 环境搭建成功



漏洞复现

首先使用默认初始账号密码 admin/123456 登录进入后台

System Manager->User 新建一个用户,角色为 default



使用新建的账号进行登录

此时登录界面会提示用户角色为配置权限错误,无法进入后台



抓包发现该账号的登录包已经生成了 jwt token

登录接口为:


http://192.168.210.102:9095/platform/login?userName=test&password=test123
复制代码



接下来用上述不具备任何权限的账号的 jwt token 去访问管理员才能访问的接口


http://192.168.210.102:9095/dashboardUser?currentPage=1&pageSize=12
复制代码

发现访问成功,获取到了所有的账号信息,漏洞复现成功



修复方案

将 Apache ShenYu 升级到最新版本。

用户头像

美创科技

关注

还未添加个人签名 2022.05.18 加入

数据安全领导者和引路人,数字化转型推动者

评论

发布
暂无评论
CVE-2021-37580 Apache ShenYu 身份验证绕过漏洞复现_漏洞_美创科技_InfoQ写作社区