CVE-2026-62662
Beschrijving NL
Pocket ID is een OIDC-provider waarmee gebruikers zich kunnen verifiëren met hun sleutels voor services. Van 1.11.0 tot 2.10.0 accepteert createTokenFromClientCredentials in backend/internal/service/oidc_service.go de door de klant gecontroleerde resourceparameter en sluit deze rechtstreeks in de aud-claim van het toegangstoken in zonder te valideren dat het publiek is geregistreerd of dat de verzoekende klant er toegang toe heeft. Elke geverifieerde OIDC-client kan daarom een door Pocket ID ondertekend token verkrijgen dat een andere client of een willekeurig publiek een naam geeft. Het /api/oidc/introspect-eindpunt kan het niet-geautoriseerde token niet onderscheiden omdat het een token als actief behandelt wanneer de identificatie van de introspecterende klant overeenkomt met de door de aanvaller geselecteerde doelgroep. In implementaties waarbij bronservers Pocket ID-toegangstokens vertrouwen voor service-to-service-autorisatie, omzeilt dit op het publiek gebaseerde toegangscontroles en kan ongeautoriseerde gegevenstoegang of -acties worden toegestaan; implementaties die deze tokens niet gebruiken voor bron-serverautorisatie hebben geen onmiddellijke exploiteerbare impact. Dit probleem is opgelost in versie 2.10.0.
Origineel (Engels) tonen
Pocket ID is an OIDC provider that allows users to authenticate with their passkeys to services. From 1.11.0 until 2.10.0, createTokenFromClientCredentials in backend/internal/service/oidc_service.go accepts the client-controlled resource parameter and embeds it directly in the access token aud claim without validating that the audience is registered or that the requesting client may access it. Any authenticated OIDC client can therefore obtain a Pocket ID-signed token naming another client or an arbitrary audience. The /api/oidc/introspect endpoint cannot distinguish the unauthorized token because it treats a token as active when the introspecting client's identifier matches the attacker-selected audience. In deployments where resource servers trust Pocket ID access tokens for service-to-service authorization, this bypasses audience-based access controls and can permit unauthorized data access or actions; deployments that do not use these tokens for resource-server authorization have no immediate exploitable impact. This issue is fixed in version 2.10.0.