CVE-2026-35042fast-jwt是一个快速的JWT实现库。在6.1.0及更早版本中,该库未能正确验证RFC 7515定义的'crit'(关键)头部参数。当JWS令牌包含一个列出未知扩展的crit数组时,fast-jwt错误地接受了该令牌,而非按RFC要求拒绝。这违反了安全规范,可能导致攻击者利用未验证的头部参数绕过安全检查,破坏令牌完整性。
该漏洞源于fast-jwt在处理JWS(JSON Web Signature)令牌时,未能正确执行RFC 7515 §4.1.11节关于'crit'(Critical)头部参数的强制性验证逻辑。根据规范,'crit'头部参数用于指示令牌中包含的关键扩展,接收方必须能够识别并处理这些扩展,否则必须拒绝该令牌。在受影响版本中,fast-jwt在解析包含'crit'数组的JWS令牌时,仅验证了签名本身的正确性,却忽略了检查'crit'数组中列出的参数是否被库支持。攻击者可利用此缺陷,在JWT头部注入恶意的扩展参数(例如绕过算法混淆检查或修改密钥ID),由于库未按规范拒绝处理,攻击者可能诱导应用程序接受包含无效或恶意声明的令牌,从而破坏系统的完整性并绕过身份验证机制。