PT-2020-11962 · Doorkeeper · Doorkeeper
Stefansundin
·
Publicado
2020-05-04
·
Atualizado
2021-07-21
·
CVE-2020-10187
CVSS v3.1
7.5
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Nome do software vulnerável e versões afetadas
Versões do Doorkeeper 5.0.0 a 5.0.2
Versões do Doorkeeper 5.1.0 a 5.1.0
Versões do Doorkeeper 5.2.0 a 5.2.4
Versões do Doorkeeper 5.3.0 a 5.3.1
Descrição
A vulnerabilidade permite que um invasor obtenha o segredo do cliente destinado exclusivamente ao proprietário do aplicativo OAuth. Após autorizar o aplicativo e permitir o acesso, o invasor pode solicitar a lista de seus aplicativos autorizados no formato JSON, geralmente por meio do endpoint “GET /oauth/authorized applications.json”. Isso é possível se o controlador de aplicativos autorizados estiver habilitado, permitindo que o invasor visualize todos os valores dos atributos do modelo
Doorkeeper::Application, incluindo segredos.Recomendações
Para as versões 5.0.0 a 5.0.2 do Doorkeeper, atualize para a versão 5.0.3 ou posterior.
Para as versões 5.1.0 a 5.1.0 do Doorkeeper, atualize para a versão 5.1.1 ou posterior.
Para as versões 5.2.0 a 5.2.4 do Doorkeeper, atualize para a versão 5.2.5 ou posterior.
Para as versões 5.3.0 a 5.3.1 do Doorkeeper, atualize para a versão 5.3.2 ou posterior.
Como solução temporária, considere aplicar um patch no método
#as json(options = {}) do modelo Doorkeeper::Application para definir apenas os atributos que você deseja expor.Habilite o hash de segredos de aplicativos, disponível desde o Doorkeeper 5.1, para tornar o segredo exposto inutilizável.
Exploit
Correção
Missing Authorization
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Doorkeeper