Untriaged
Permalink
CVE-2026-55834
4.3 MEDIUM
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): None (N)
- User Interaction (UI): Required (R)
- Scope (S): Unchanged (U)
- Confidentiality (C): None (N)
- Integrity (I): Low (L)
- Availability (A): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Required (R)
- Modified Confidentiality (MC): None (N)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): Low (L)
- Modified Availability (MA): None (N)
Activity log
- Created suggestion
Pocket ID: Open Redirect on the OIDC /authorize page via unvalidated redirect_uri with prompt=none
Pocket ID is an OIDC provider that allows users to authenticate with their passkeys to services. From 2.6.0 until 2.9.0, frontend/src/routes/authorize/+page.ts reads the redirect_uri query parameter and frontend/src/routes/authorize/+page.svelte uses the raw callbackURL in redirectWithError when prompt=none cannot complete silent authorization. The client-side path only blocks javascript and data schemes and does not invoke the backend callback allow-list validation, so an unauthenticated attacker who knows a valid client_id can redirect a victim browser to an arbitrary HTTP or HTTPS origin for phishing or OIDC error and state smuggling. This issue is fixed in version 2.9.0.
References
-
https://github.com/pocket-id/pocket-id/security/advisories/GHSA-2wvm-8mvp-22qv x_refsource_CONFIRMexploit
-
https://github.com/pocket-id/pocket-id/releases/tag/v2.9.0 x_refsource_MISC
Affected products
pocket-id
- ==>= 2.6.0, < 2.9.0
Package maintainers
-
@marcusramberg Marcus Ramberg <marcus@means.no>
-
@hesiod Tobias Markus <tobias@markus-regensburg.de>
-
@Eschguy Austin Eschweiler <austin.eschweiler@gmail.com>
-
@ymstnt ymstnt
-
@gepbird Gutyina Gergő <gutyina.gergo.2@gmail.com>