记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

CVE-2021-45232 APISIX Dashboard 越权漏洞

2022-03-23 10:32

 

漏洞描述

在2.10.1之前的Apache APISIX Dashboard中,Manager API使用了两个框架,并在框架‘gin’的基础上引入了框架‘droplet’,所有的API和认证中间件都是基于框架‘droplet’开发的,但有些API直接使用框架‘gin’的接口,从而绕过了认证。

 

利用条件

Apache APISIX Dashboard < 2.10.1版本

 

漏洞原理

漏洞分析

对一个漏洞的分析、先提出几个问题:
1.是什么漏洞
CVE官方给出的描述是 api 未授权漏洞

2.什么原因导致出现了这种漏洞
分析思路(在gtihub上对提交的源码做分析、涉及到认证相关的代码)
在commits中找到提交的修复记录、发现中间件鉴权相关

点进去看修改的代码
移除了 filter包、中间件鉴权方式

修改了authentication文件,对login、version及未经认证的接口处理做了修改。

修改了authentication_test.go 做了修改,对各种状态的请求做了修改

关键修复migrate_test.go中、添加了两个接口的描述、增加了api token验证。

在带有漏洞的版本中、结合migrate_test.go中的修复、判断应该是这两个api存在未授权漏洞。
/apisix/admin/migrate/import
/apisix/admin/migrate/export

漏洞验证

通过访问 http://127.0.0.1:9000/apisix/admin/migrate/export
下载到配置文件 apisix-config.bak

漏洞利用

手动测试:
主要利用过程就是在接口路由中执行一个扩展脚本 , 通过执行系统命令。
通过在路由列表、查看数据时、添加script字段、后跟系统命令。

最终脚本执行是在管理apache/apisix 的 9080端口的容器里

访问创建的路由 http://11.22.33.101:9080/dream 执行扩展脚本
运行docker命令
docker exec -it 0f643a6a69b8 /bin/sh
cd /tmp
ls

 

修复建议

升级到最新版本(https://github.com/apache/apisix-dashboard);
接口添加token验证;
建立白名单、做ip验证。


知识来源: https://www.anquanke.com/post/id/270518

阅读:522229 | 评论:0 | 标签:漏洞 CVE API

想收藏或者和大家分享这篇好文章→复制链接地址

“CVE-2021-45232 APISIX Dashboard 越权漏洞”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

黑帝公告 📢

十年经营持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

客黑业创的万千入年个一

❤用费0款退球星,年1期效有员会

🧠富财控掌,知认升提,长成起一💡

标签云 ☁