漏洞描述
该漏洞发生在nacos在进行认证授权操作时,会判断请求的user-agent是否为”Nacos-Server”,如果是的话则不进行任何认证。开发者原意是用来处理一些服务端对服务端的请求。但是由于配置的过于简单,并且将协商好的user-agent设置为Nacos-Server,直接硬编码在了代码里,导致了漏洞的出现。利用这个未授权漏洞,攻击者可以获取到用户名密码等敏感信息,还可以进行任意操作,包括创建新用户并进行登录后操作。
影响范围
<= Nacos 2.0.0-ALPHA.1
< Nacos 1.4.1
解决方法
1.升级Nacos为最新版本
(1)查看当前Nacos的版本
命令:curl -X GET 'http://localhost:8848/nacos/v1/console/server/state'
(2)升级Nacos
参考官方:Nacos 2.0 升级文档
2.开启Nacos鉴权
(1)测试不开启Nacos鉴权
修改Nacos的配置文件application.properties,默认Nacos的鉴权配置是false。如下所示:
<