nacos权限绕过漏洞

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第25天,点击查看活动详情


1.写在前面

目前nacos越来越广泛,大多数的企业在使用微服务架构的时候,基本上都会选择nacos作为注册中心和配置中心。

那nacos其实也是阿里开源的一个项目,存在漏洞,至少难免的。

那我们今天就来分享一下nacos存在的漏洞问题,主要是一些安全漏洞的问题。

毕竟现在很多政务的项目,都会做等保测试这块。等保做得多了,漏洞也就多了。

这不,今天就又有一个漏洞了。那就开始修复喽!!!

image.png

后端服务

1.nacos权限绕过漏洞

详情可查看nacos官网:链接

image.png

这个漏洞是在nacos已经开启账号密码访问的时候,当header添加了user-agent:Nacos-Server时,就会绕过权限访问,直接获取到nacos配置等信息。

nacos版本:1.4.2

详情如下:

  • 不加账号密码访问(403)

image.png

  • 添加账号密码访问(正常)

image.png

  • 不加账号密码访问,但添加header(正常)

image.png

image.png

由此可见,header加上user-agent:Nacos-Server,确实能绕过nacos认证。

2.漏洞修复

升级到nacos目前最新版:2.1.1(目前时间:2022-08-19)

下载地址:nacos官网

image.png

image.png

下载地址:官方地址

1.4.2升级到2.1.1,nacos官网有详细的文档说明:详情

对于我们现在的环境升级,这里记录下注意的事项:

2.1 nacos配置文件的修改

vi nacos/conf/application.properties

#122行
server.tomcat.basedir=file:.

#148行
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
复制代码

这里要修改成这个,否则启动报错。

2.2 nacos数据库修改
/*config_info表增加字段*/
ALTER TABLE jxbp_nacos.config_info ADD COLUMN encrypted_data_key text NULL COMMENT '秘钥';

/*his_config_info表增加字段*/
ALTER TABLE jxbp_nacos.his_config_info ADD COLUMN encrypted_data_key text NULL COMMENT '秘钥';

复制代码
2.3 nacos启动后测试
  • 不加账号密码访问,但添加header(403)

image.png

image.png

由此可见,该漏洞已被修复

  • 加账号密码访问,不添加header(正常)

image.png

经测试,正常了。

注意:

当然不想升级的话,也是可以的,直接在1.4.2的基础上对配置文件进行修改:

vi nacos/conf/application.properties

#148行
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
复制代码

看到这里,是不是觉得自己折腾了大半天,最终解决的方式,还有更简单的方法。

哈哈,真的是醉了!!!

看到这,希望大家轻点喷,毕竟没有第一时间把最简便的方式放出来。

image.png


好了,以上就是nacos权限绕过漏洞的分享了。

可能内容有点短,但都是干货喔!!!

个人理解,可能也不够全面,班门弄斧了。

如果觉得有收获的,帮忙点赞、评论、收藏一下呗!!!

image.png

猜你喜欢

转载自juejin.im/post/7133573986633383950