PT-2026-24137 · Pocket Id · Pocket-Id

·

CVE-2026-28513

·

Publicado

2026-03-09

·

Atualizado

2026-07-30

CVSS v3.1

8.5

Alta

VetorAV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N
Nome do Software Vulnerável e Versões Afetadas Versões do Pocket ID anteriores à 2.4.0
Descrição O Pocket ID é um provedor OIDC suscetível à troca de código entre clientes e à reutilização de código expirado. O endpoint de token OIDC valida incorretamente os códigos de autorização, rejeitando-os apenas quando tanto o ID do cliente está incorreto quanto o código está expirado. Essa falha permite que um atacante troque códigos de autorização emitidos para um cliente pelas credenciais de outro cliente, potencialmente obtendo tokens para usuários que não autorizaram o cliente malicioso. Códigos de autorização expirados também podem ser reutilizados até que um processo de limpeza seja executado. O problema reside no arquivo backend/internal/service/oidc service.go, especificamente na linha 407, onde um E lógico (&&) deveria ser um OU lógico (||) na lógica de validação do código de autorização. O código vulnerável é: if authorizationCodeMetaData.ClientID != input.ClientID && authorizationCodeMetaData.ExpiresAt.ToTime().Before(time.Now()). Um atacante pode explorar isso usando um código de autorização válido destinado a um cliente com o ID do cliente de outro cliente para obter tokens de acesso. O endpoint da API envolvido é /api/oidc/token, utilizando o parâmetro grant type definido como authorization code, o parâmetro code contendo o código de autorização e os parâmetros client id e client secret para autenticação do cliente.
Recomendações Versões anteriores à 2.4.0 devem ser atualizadas para a versão 2.4.0 ou posterior.

Exploit

Correção

Incorrect Authorization

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-28513
GHSA-QH6Q-598W-W6M2
GO-2026-4656
OPENSUSE-SU-2026:21483-1
SUSE-SU-2026:1042-1

Produtos afetados

Pocket-Id