声明:本文仅供学习参考,其中涉及的一切资源均来源于网络,请勿用于任何非法行为,否则您将自行承担相应后果,本人不承担任何法律及连带责任。加粗样式

漏洞描述

Nacos 是阿里巴巴推出来的一个新开源项目,是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。致力于帮助发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,可以快速实现动态服务发现、服务配置、服务元数据及流量管理。

该漏洞发生在nacos在进行认证授权操作时,会判断请求的user-agent是否为”Nacos-Server”,如果是的话则不进行任何认证。开发者原意是用来处理一些服务端对服务端的请求。但是由于配置的过于简单,并且将协商好的user-agent设置为Nacos-Server,直接硬编码在了代码里,导致了漏洞的出现。并且利用这个未授权漏洞,攻击者可以获取到用户名密码等敏感信息。

影响范围

<= Nacos 2.0.0-ALPHA.1

< Nacos 1.4.1

环境搭建

漏洞环境搭建采用docker搭建,首先编写docker-compose.yml配置文件

version: "3"
services:
  nacos:
    restart: always
    image: nacos/nacos-server:1.4.0
    container_name: nacos
    ports:
      - 8848:8848
    environment:
      MODE: standalone

接着,执行命令docker-compose up -d 拉取镜像,启动容器

容器起来后,浏览器访问一下

在这里插入图片描述

漏洞复现

1、查看用户列表(包含密码)

未登陆情况下浏览器访问如下接口
http://192.168.40.86:8848/nacos/v1/auth/users?pageNo=1&pageSize=1

在这里插入图片描述
2、新增用户

Burp抓包

在这里插入图片描述
然后,将包做如下修改,send后,服务器反馈增加成功

在这里插入图片描述
继续查看用户列表,确认已经成功添加新用户test1

在这里插入图片描述

用test1/test1登陆nacos,登陆成功

在这里插入图片描述

GitHub 加速计划 / na / nacos
29.83 K
12.75 K
下载
Nacos是由阿里巴巴开源的服务治理中间件,集成了动态服务发现、配置管理和服务元数据管理功能,广泛应用于微服务架构中,简化服务治理过程。
最近提交(Master分支:3 个月前 )
4334cd16 * Support custom client configuration timeout.(#12748) * Add UT.(#12748) 12 天前
b04d2266 16 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐