• Nacos身份绕过漏洞复现(QVD-2023-6271)


    一、背景

    nacos安全预警,对问题复现后进行修复。

    漏洞原理为开源服务管理平台 Nacos在默认配置下未对 token.secret.key 进行修改,导致远程攻击者可以绕过密钥认证进入后台造成系统受控等后果。

    漏洞信息

    漏洞类型:身份认证绕过

    漏洞等级:高危

    漏洞编号:NVDB-CNVDB-2023674205

    漏洞影响范围:

    0.1.0 <= Nacos <= 2.2.0基本上都受到了影响,最新的版本已修复漏洞。

    漏洞的本质是因为使用了默认的key

    JWT(JSON Web Token)是一种用于在网络应用之间安全传递信息的开放标准。在使用JWT时,通常需要使用密钥对token进行签名,以确保token在传输过程中不被篡改。如果在代码中将密钥硬编码到应用程序中,将会存在JWT硬编码漏洞。

    JWT硬编码漏洞是指将密钥硬编码到应用程序代码中,而不是存储在安全的密钥存储库中,攻击者可以轻松地获取该密钥并使用其签署和验证JWT。这使攻击者可以创建或修改JWT,或者验证伪造的JWT,从而导致安全漏洞。例如,应用程序使用硬编码密钥对JWT进行签名,攻击者可以轻松获取该密钥并创建有效的JWT,该JWT会被误认为是经过身份验证的用户,从而获得未经授权的访问权限。因此,为了避免JWT硬编码漏洞,应该将密钥存储在安全的密钥存储库中,并且只有授权的应用程序可以访问它。

    二、复现步骤

    (一)安装nacos服务

    略过

    (二)JWT构造

    1、nacos默认key

    nacos默认key(token.secret.key值的位置在conf下的application.properties)

    SecretKey012345678901234567890123456789012345678901234567890123456789

    2、unix时间戳

    需要大于当前系统时间

    3、JWT认证构造

    https://jwt.io

    (三)浏览器fetch重发确认

    1、报文复制

    2、添加认证信息

    3、报文重发

    确认可以登录成功

    (四)burp拦截模拟

    关闭代理,成功绕过

  • 相关阅读:
    Spring-aop +redssion 实现接口限流注解
    2023 柏鹭杯 --- Crypto fractrsa wp
    如何根据不同需求给Word文档设置保护?
    npm切换淘宝镜像后报错的解决办法
    定时调用-->笔记
    php使用正则表达式和翻译字典json文件做翻译
    linux 设置登录失败次数限制
    【Unity开发小技巧】Unity打包IOS端APP
    【linux实用命令】
    基于改进樽海鞘群算法求解单目标优化问题
  • 原文地址:https://blog.csdn.net/xinpz/article/details/133020453