Nacos认证绕过漏洞修复

Nacos认证绕过漏洞修复

  • 1 漏洞描述及复现
    • 1.1 漏洞描述
    • 1.2 漏洞复现
  • 2 漏洞修复
  • 3 修复后验证

1 漏洞描述及复现

1.1 漏洞描述

Nacos 官方在 github 发布的 issue 中披露 Alibaba Nacos 存在一个由于不当处理 User-Agent 导致的认证绕过漏洞。通过该漏洞,攻击者可以进行任意操作,包括创建新用户并进行登录后操作。

1.2 漏洞复现

请求头设置User-Agent,值为Nacos-Server,那么不需要认证,就可以随意创建用户,比如,访问http://ip:port/nacos/v1/auth/users?username=xxx&password=xxx,如下图,用户创建成功:
Nacos认证绕过漏洞修复_第1张图片
或者访问http://ip:port/nacos/v1/auth/users?pageNo=1&pageSize=10,也可以查询到已创建的用户信息。
Nacos认证绕过漏洞修复_第2张图片

2 漏洞修复

编辑nacos的配置文件( //conf/application.properties ),修改以下配置信息并保存:

nacos.core.auth.enabled=true  
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security

保存后,重启nacos。

如果项目中没有配置nacos的用户名密码信息,会影响服务,配置过的可忽略。如springboot的配置文件中,需要配置nacos的用户名及密码信息:

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
        username: nacos
        password: nacos

3 修复后验证

修复之后,再次访问,如下,显示403,则漏洞修复成功。
Nacos认证绕过漏洞修复_第3张图片

你可能感兴趣的:(java)