CVE-2026-33505Ory Keto是一款开源授权服务器。在26.2.0版本之前,其GetRelationships API存在SQL注入漏洞。该漏洞源于分页令牌的实现缺陷。分页令牌使用`secrets.pagination`配置的密钥加密。若未配置该值,Keto会使用硬编码的默认密钥。由于默认密钥公开,攻击者可生成恶意令牌并注入SQL。攻击者需能访问API并传递原始分页令牌,即可执行任意SQL查询,造成严重影响。
该漏洞位于Ory Keto的`GetRelationships` API中,主要由不安全的分页令牌处理机制引发。系统依赖`secrets.pagination`配置项对分页令牌进行加密。在特定配置下(即未设置自定义密钥),Keto会回退使用一个硬编码的默认加密密钥。由于该默认密钥是公开的,攻击者可以掌握加密算法与密钥。攻击者首先需要具备较高的权限(PR:H)以访问API接口,随后利用已知密钥构造包含恶意SQL语句的分页令牌。当API解析该令牌并将其拼接到后续的数据库查询语句时,触发了SQL注入漏洞。这允许攻击者在数据库上下文中执行任意SQL命令,从而绕过应用程序逻辑,直接读取、修改或删除敏感数据,严重威胁系统的机密性、完整性和可用性。