你的Nacos还在裸奔吗?Nacos权限绕过漏洞
目前nacos越来越广泛,大多数的企业在使用微服务架构的时候,基本上都会选择nacos作为注册中心和配置中心。
那nacos其实也是阿里开源的一个项目,存在漏洞,至少难免的。
那我们今天就来分享一下nacos存在的漏洞问题,主要是一些安全漏洞的问题。
毕竟现在很多政务的项目,都会做等保测试这块。等保做得多了,漏洞也就多了。
这不,今天就又有一个漏洞了。那就开始修复喽!!!
1.nacos权限绕过漏洞
详情可查看nacos官网:https%3A%2F%2Fnacos.io%2Fzh-cn%2Fdocs%2Fauth.html
这个漏洞是在nacos已经开启账号密码访问的时候,当header添加了user-agent:Nacos-Server时,就会绕过权限访问,直接获取到nacos配置等信息。关注公众号:码猿技术专栏,回复关键:1111 获取阿里内部Java调优手册
nacos版本:1.4.2
详情如下:
不加账号密码访问(403)
添加账号密码访问(正常)
不加账号密码访问,但添加header(正常)
由此可见,header加上
user-agent:Nacos-Server
,确实能绕过nacos认证。
2.漏洞修复
升级到nacos目前最新版:2.1.1
下载地址:https%3A%2F%2Fnacos.io%2Fzh-cn%2Fdocs%2Fquick-start.html
下载地址:https%3A%2F%2Fgithub.com%2Falibaba%2Fnacos%2Freleases%2Fdownload%2F2.1.1%2Fnacos-server-2.1.1.zip
从1.4.2
升级到2.1.1
,nacos官网有详细的文档说明:https%3A%2F%2Fnacos.io%2Fzh-cn%2Fdocs%2F2.0.0-upgrading.html
对于我们现在的环境升级,这里记录下注意的事项:
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)
由此可见,该漏洞已被修复
加账号密码访问,不添加header(正常)
经测试,正常了。
注意:
当然不想升级的话,也是可以的,直接在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
看到这里,是不是觉得自己折腾了大半天,最终解决的方式,还有更简单的方法。
本文转载自公众号:码猿技术专栏