CVE-2021-45232 Apache APISIX Dashboard 认证绕过漏洞分析

VSole2021-12-28 22:13:38

漏洞信息

Apache APISIX 是一个动态、实时、高性能的 API 网关,Apache APISIX Dashboard 使用户可通过前端界面操作 Apache APISIX。

近日网上爆出在 Apache APISIX Dashboard v2.7-2.10版本中存在未授权访问漏洞,攻击者无需登录就可以访问某些接口,深入分析发现还可以RCE。

漏洞分析

可以直接采用docker进行安装。Apache APISIX采用`droplet`进行鉴权处理,认证过程如下(`authentication.go`):

从上面定义来看,以`/apisix`开头的URL,除了`/apisix/admin/tool/version`和`/apisix/admin/user/login`以外均需要认证,通过判断HTTP Header中的`Authorization`来完成鉴权处理。

接下来分析一下路由信息:

注册的`handler`包括:

route.NewHandler,ssl.NewHandler,consumer.NewHandler,upstream.NewHandler,service.NewHandler,schema.NewHandler,schema.NewSchemaHandler,healthz.NewHandler,authentication.NewHandler,global_rule.NewHandler,server_info.NewHandler,label.NewHandler,data_loader.NewHandler,data_loader.NewImportHandler,tool.NewHandler,plugin_config.NewHandler,migrate.NewHandler,proto.NewHandler,stream_route.NewHandler,

正常情况下利用`droplet`来对URL进行鉴权处理,与`authentication.go`中的`Handle`对应,比如`consumer`:

我们发现在某个`handler`中定义的路由没有经过`droplet`处理:

存在认证绕过漏洞,无需登录可直接访问API接口。深入分析发现还可以RCE,这里就不放出来了。


修复方案

新版本将框架换成了`gin-gonic`,所有路由都要走`Authentication`进行处理。

apachedashboard
本作品采用《CC 协议》,转载必须注明作者和本文链接
使用docker搭建环境 https://github.com/apache/apisix-docker 修改docker-compose.yml为2.7即可
CVE-2021-45232 Apache APISIX Dashboard 认证绕过漏洞分析。
Apache APISIX 是一个动态、实时、高性能的 API 网关, 提供负载均衡、动态上游、灰度发布、服务熔断、身份认证、可观测性等丰富的流量管理功能。Apache APISIX Dashboard 使用户可通过前端界面操作 Apache APISIX。
2021年11月28日,360漏洞云团队在互联网上监测到一则关于Apache APISIX Dashboard中存在身份验证绕过漏洞的信息。漏洞编号:CVE-2021-45232,漏洞威胁等级:高危。
腾讯云安全运营中心监测到, Apache APISIX官方发布安全通告,披露了Apache APISIX Dashboard存在未授权漏洞,漏洞编号CVE-2021-45232。可导致未授权访问等危害。 为避免您的业务受影响,腾讯云安全建议您及时开展安全自查,如在受影响范围,请您及时进行更新修复,避免被外部攻击者入侵。
近日,国家信息安全漏洞库(CNNVD)收到关于Apache Apisix 授权问题漏洞(CNNVD-202112-2629、CVE-2021-45232)情况的报送。成功利用漏洞的攻击者,可以在未经授权的情况下获取或更改设备的配置信息,进而构造恶意数据对目标设备进行攻击。Apache APISIX Dashboard 2.10及其之前版本均受此漏洞影响。目前,Apache官方已经发布了版本更新修复
建议用户尽快采取修补措施。
一个dashboard api未授权访问漏洞~
VSole
网络安全专家