nacos未授权访问漏洞,导致被网警找
背景
只做简短汇总,记录一下
公司收购了另一家公司,所以相应的后端服务和服务器都交给我管理,但是没有任何的交接文档,大概看了一下代码,依赖的东西就去忙别的了。
直到今天网警突然打电话给我说系统有漏洞(CVE-2021-29441),并且给出了访问地址
好家伙,直接能看到用户名和密码,岂不是暴力破解就出来了,而且还都是默认密码,再利用这个身份搞东西
解决方式
经过了解主要涉及两个版本
- Nacos < 1.4.0,该版本请求头设置 User-Agent: Nacos-Server,可用过接口获取用户信息
- Nacos <= 2.2.0,和上面的相似,只是从代码写死变成了可自定义,但是有初始值,在后续版本中初始值被移除
按照官网的方式解决就好了:
https://nacos.io/blog/faq/nacos-user-question-history14945/
复现方式,参考
https://cloud.tencent.com/developer/article/1784279
低于1.4.0必须升级
其他版本的修改默认配置即可,然后重启,项目依赖需要加上 nacos 用户名密码
或者只在内网暴露
参考:
- https://nacos.io/blog/faq/nacos-user-question-history14945/
- https://nacos.io/docs/latest/guide/user/auth/
- https://cloud.tencent.com/developer/article/1784279
- https://www.cnblogs.com/spmonkey/p/17504263.html
- https://www.cnblogs.com/spmonkey/p/17505431.html
- https://www.cnblogs.com/thespace/p/16777691.html
- https://blog.csdn.net/m0_52985087/article/details/136879673
- https://blog.csdn.net/Innocence_0/article/details/139087969
这是一段防爬代码块,我不介意文章被爬取,但请注明出处
console.log("作者主页:https://www.cnblogs.com/Go-Solo");
console.log("原文地址:https://www.cnblogs.com/Go-Solo/p/18408669");