Ory Hydra has a SQL injection via forged pagination tokens
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Impact type
- SQL injection
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-89.
Summary
Ory Hydra is an OAuth 2.0 Server and OpenID Connect Provider. Prior to version 26.2.0, the listOAuth2Clients, listOAuth2ConsentSessions, and listTrustedOAuth2JwtGrantIssuers Admin APIs in Ory Hydra are vulnerable to SQL injection due to flaws in its pagination implementation. Pagination tokens are encrypted using the secret configured in `secrets.pagination`. If this value is not set, Hydra falls back to using `secrets.system`. An attacker who knows this secret can craft their own tokens, including malicious tokens that lead to SQL injection. This issue can be exploited when one or more admin APIs listed above are 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 set and known to the attacker, or `secrets.pagination` is not set and `secrets.system` is 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 Hydra to the fixed version, 26.2.0 as soon as possible.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| ory | hydra | before 26.2.0 | 26.2.0 | Patch available | CNA |
| — | github.com/ory/hydra (Go) | up to 1.11.10 | — | No fix listed | GHSA-r9w3-57w2-gch2 |
| — | github.com/ory/hydra/v2 (Go) | before 2.3.1-0.20260320110106-0b84568fffcc | 2.3.1-0.20260320110106-0b84568fffcc | Patch available | GHSA-r9w3-57w2-gch2 |
- hydra Vendorory Affected before 26.2.0 Fixed in 26.2.0 Patch available CNA
- github.com/ory/hydra (Go) Vendor— Affected up to 1.11.10 Fixed in — No fix listed GHSA-r9w3-57w2-gch2
- github.com/ory/hydra/v2 (Go) Vendor— Affected before 2.3.1-0.20260320110106-0b84568fffcc Fixed in 2.3.1-0.20260320110106-0b84568fffcc Patch available GHSA-r9w3-57w2-gch2
Remediation
- Fix · CNA hydra (ory) Fixed in 26.2.0
- Fix · GHSA-r9w3-57w2-gch2 github.com/ory/hydra/v2 (Go) Fixed in 2.3.1-0.20260320110106-0b84568fffcc Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-33504
- 2026-10-03 Alias added: GHSA-r9w3-57w2-gch2
References
More ory Hydra vulnerabilities
- TI-2019-06030 ORY Hydra before v1.0.0-rc.3+oryOS.9 has Reflected XSS via the oauth2/fallbacks/error error_hint parameter. CVSS 3.0MEDIUM 6.1
- TI-2020-04356 Disallow replay of `private_key_jwt` by blacklisting JTIs in Hydra CVSS 3.1MEDIUM 5.8
Sources
- CVE-2026-33504 · CVE Program
- CVE-2026-33504 · NVD
- FIRST EPSS
- GHSA-r9w3-57w2-gch2 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences