FKIE_CVE-2026-33505
Vulnerability from fkie_nvd - Published: 2026-03-26 19:17 - Updated: 2026-03-30 13:26
Severity ?
Summary
Ory Keto is am open source authorization server for managing permissions at scale. Prior to version 26.2.0, the GetRelationships API in Ory Keto is vulnerable to SQL injection due to flaws in its pagination implementation. Pagination tokens are encrypted using the secret configured in `secrets.pagination`. An attacker who knows this secret can craft their own tokens, including malicious tokens that lead to SQL injection. If this configuration value is not set, Keto falls back to a hard-coded default pagination encryption secret. Because this default value is publicly known, attackers can generate valid and malicious pagination tokens manually for installations where this secret is not set. This issue can be exploited when GetRelationships API is directly or indirectly accessible to the attacker, the attacker can pass a raw pagination token to the affected API, and the configuration value `secrets.pagination` is not set or known to the attacker. An attacker can execute arbitrary SQL queries through forged pagination tokens. As a first line of defense, immediately configure a custom value for `secrets.pagination` by generating a cryptographically secure random secret. Next, upgrade Keto to a fixed version, 26.2.0 or later, as soon as possible.
References
Impacted products
| Vendor | Product | Version |
|---|
{
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Ory Keto is am open source authorization server for managing permissions at scale. Prior to version 26.2.0, the GetRelationships API in Ory Keto is vulnerable to SQL injection due to flaws in its pagination implementation. Pagination tokens are encrypted using the secret configured in `secrets.pagination`. An attacker who knows this secret can craft their own tokens, including malicious tokens that lead to SQL injection. If this configuration value is not set, Keto falls back to a hard-coded default pagination encryption secret. Because this default value is publicly known, attackers can generate valid and malicious pagination tokens manually for installations where this secret is not set. This issue can be exploited when GetRelationships API is directly or indirectly accessible to the attacker, the attacker can pass a raw pagination token to the affected API, and the configuration value `secrets.pagination` is not set or known to the attacker. An attacker can execute arbitrary SQL queries through forged pagination tokens. As a first line of defense, immediately configure a custom value for `secrets.pagination` by generating a cryptographically secure random secret. Next, upgrade Keto to a fixed version, 26.2.0 or later, as soon as possible."
},
{
"lang": "es",
"value": "Ory Keto es un servidor de autorizaci\u00f3n de c\u00f3digo abierto para gestionar permisos a escala. Antes de la versi\u00f3n 26.2.0, la API GetRelationships en Ory Keto es vulnerable a inyecci\u00f3n SQL debido a fallos en su implementaci\u00f3n de paginaci\u00f3n. Los tokens de paginaci\u00f3n est\u00e1n cifrados usando el secreto configurado en \u0027secrets.pagination\u0027. Un atacante que conoce este secreto puede crear sus propios tokens, incluyendo tokens maliciosos que conducen a inyecci\u00f3n SQL. Si este valor de configuraci\u00f3n no est\u00e1 establecido, Keto recurre a un secreto de cifrado de paginaci\u00f3n predeterminado codificado. Dado que este valor predeterminado es de conocimiento p\u00fablico, los atacantes pueden generar tokens de paginaci\u00f3n v\u00e1lidos y maliciosos manualmente para instalaciones donde este secreto no est\u00e1 configurado. Este problema puede ser explotado cuando la API GetRelationships es directa o indirectamente accesible para el atacante, el atacante puede pasar un token de paginaci\u00f3n sin procesar a la API afectada, y el valor de configuraci\u00f3n \u0027secrets.pagination\u0027 no est\u00e1 establecido o es conocido por el atacante. Un atacante puede ejecutar consultas SQL arbitrarias a trav\u00e9s de tokens de paginaci\u00f3n falsificados. Como primera l\u00ednea de defensa, configure inmediatamente un valor personalizado para \u0027secrets.pagination\u0027 generando un secreto aleatorio criptogr\u00e1ficamente seguro. A continuaci\u00f3n, actualice Keto a una versi\u00f3n corregida, 26.2.0 o posterior, tan pronto como sea posible."
}
],
"id": "CVE-2026-33505",
"lastModified": "2026-03-30T13:26:50.827",
"metrics": {
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 7.2,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "HIGH",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.2,
"impactScore": 5.9,
"source": "security-advisories@github.com",
"type": "Secondary"
}
]
},
"published": "2026-03-26T19:17:04.753",
"references": [
{
"source": "security-advisories@github.com",
"url": "https://github.com/ory/keto/security/advisories/GHSA-c38g-mx2c-9wf2"
}
],
"sourceIdentifier": "security-advisories@github.com",
"vulnStatus": "Awaiting Analysis",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-89"
}
],
"source": "security-advisories@github.com",
"type": "Primary"
}
]
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…