Nacos漏洞合集

1.Nacos简介

Nacos 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 致力于帮助用户发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,能够快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 可以更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

2.Nacos漏洞利用场景

内网横向

3.Nacos下载安装

3.1.下载

Nacos所有版本下载地址:https://nacos.io/download/release-history/?spm=5238cd80.2ef5001f.0.0.3f613b7cAC8d23

3.2.解压

nacos部署需要java环境,
在这里插入图片描述

3.3.部署方式

在nacos所在目录打开cmd命令框。执行命令
startup.cmd -m standalone (单集权模式)
在这里插入图片描述

3.4.访问地址

http://127.0.0.1:8848/nacos/
在这里插入图片描述

4.Naocs利用思路

4.1.默认口令

通常nacos的默认端口是8848,在内网横向的时候,通常使用工具批量扫描8848端口,以达到规避的效果。默认密码是nacos/nacos,运气比较好的话,会存在默认口令和未授权。

查看版本tips:http://127.0.0.1:8848/nacos/v1/console/server/state

4.2.Nacos未授权访问CVE-2021-29441

4.2.1.漏洞简介

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

4.2.2.漏洞影响版本

Nacos <= 2.0.0-ALPHA.1

4.2.3.漏洞复现

4.2.3.1.抓包

拼接路径http://127.0.0.1:8848/nacos/v1/auth/users?pageNo=1&pageSize=9在浏览器中访问可以看见用户名密码。可判断存在CVE-2021-29441。如下是使用yakit抓的包:
在这里插入图片描述

4.2.3.1.改包

把上面的数据包中的GET改为POST,User-Agent的内容换成Nacos-Server,pageNo=1&pageSize=9换成需要添加的用户名和密码:hluas/hluas
在这里插入图片描述

4.2.4.漏洞修复

4.2.4.1.第一步

升级到最新版本,下载地址:https://github.com/alibaba/nacos/releases

4.2.4.2.第二步

改nacos的配置文件,在nacos解压包文件中把application.properties文件里面的配置项nacos.core.auth.enabled改为true

在这里插入图片描述

4.3.Derby未授权访问(CVE-2021-29442)

4.3.1.漏洞简介

CVE-2021-29442是Nacos(阿里巴巴开源的服务发现与配置管理平台)中的一个未授权访问漏洞,源于其嵌入式Derby数据库未正确限制访问权限。攻击者可利用该漏洞绕过身份验证,直接通过特定接口执行任意SQL查询,导致敏感信息泄露(如用户凭证、配置数据等)

4.3.2.漏洞影响版本

受影响版本:
Nacos = 1.4.0(无论是否开启鉴权功能)
Nacos = 1.3.x及更早版本(部分场景可能受影响)

4.3.3.漏洞复现

未开启鉴权时:
直接访问以下接口执行SQL查询:

4.3.4.漏洞修复

4.4.nacos身份认证绕过默认jwt(QVD-2023-6271)

4.3.1.漏洞简介

该漏洞是由于Nacos在默认配置下未修改默认密钥(SecretKey012345678901234567890123456789012345678901234567890123456789),导致攻击者可利用硬编码的JWT(JSON Web Token)密钥伪造合法令牌,绕过身份认证直接访问后台系统。

4.3.2.漏洞影响版本

影响版本:0.1.0 <= Nacos <= 2.2.0

4.3.3.漏洞复现

4.3.3.1.环境部署

4.3.4.漏洞修复

4.5.Nacos集群Raft反序列化漏洞(QVD-2023-13065)

4.3.1.漏洞简介

该漏洞存在于 Nacos 集群的 Raft 通信协议中,由于对部分 Jraft 请求的反序列化处理不当,攻击者可通过构造恶意 Hessian 序列化数据,在目标服务器上实现任意代码执行。

核心问题:默认配置下,Nacos 集群间通信端口(7848)未对反序列化数据进行严格校验,导致恶意攻击者可通过此端口发送精心构造的序列化数据,触发远程代码执行(RCE)

4.3.2.漏洞影响版本

Nacos 1.4.0 ≤ 版本 ≤ 1.4.6
Nacos 2.0.0 ≤ 版本 ≤ 2.2.3

4.3.3.漏洞复现

4.3.4.漏洞修复

4.6.Nacos Derby未授权RCE漏洞(QVD-2024-26473)

4.3.1.漏洞简介

QVD-2024-26473是Nacos中Derby数据库接口的未授权远程命令执行漏洞。攻击者可通过未授权访问Derby数据库接口,执行恶意SQL语句,最终实现任意代码执行。该漏洞利用了Derby默认配置的未授权访问漏洞(CVE-2021-29442)和Nacos接口的条件竞争问题,导致攻击者可加载恶意JAR文件并注册函数。

4.3.2.漏洞影响版本

4.3.3.漏洞复现

4.3.4.漏洞修复

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值