PT-2026-23497 · Hexpm · Hexpm
CVSS v4.0
7.0
Alta
| Vetor | AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Nome do Software Vulnerável e Versões Afetadas
Versões do hexpm anteriores a 71c127afebb7ed7cc637eb231b98feb802d62999
Descrição
Existe uma falha no processo de autorização dentro do módulo 'Elixir.HexpmWeb.API.OAuthController' do hexpm, potencialmente levando ao escalonamento de privilégios. Especificamente, ao trocar uma chave de API somente leitura usando a concessão client credentials do OAuth, o qualificador de recurso pretendido é ignorado. Isso resulta na emissão de um JWT com escopo amplo "api" em vez do escopo esperado "api:read". Consequentemente, o token é tratado como tendo acesso total à API. Um atacante que obtém a chave de API somente leitura de uma vítima e um código TOTP válido pode explorar isso para gerar uma nova chave de API de acesso total sem restrições que não expira por padrão, permitindo operações de escrita como publicar, descontinuar ou modificar pacotes. O problema está associado aos arquivos do programa lib/hexpm web/controllers/api/oauth controller.ex e à rotina
Elixir.HexpmWeb.API.OAuthController:validate scopes against key/2.Recomendações
Atualize para a versão 71c127afebb7ed7cc637eb231b98feb802d62999 ou posterior para corrigir a atribuição incorreta de escopo durante a troca de token OAuth.
Exploit
Correção
LPE
Incorrect Authorization
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Hexpm