PT-2026-110581 · Ericsson+1 · Erlang/Otp+1
CVSS v4.0
5.9
Média
| Vetor | AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
hex core versões 0.1.0 até 0.19.9
Descrição
A validação inadequada de certificados no hex core permite que um invasor capaz de interceptar conexões HTTPS se passe pelo hex.pm, repo.hex.pm ou outros servidores de repositório e API. Isso ocorre quando programas utilizam o adaptador HTTP padrão no Erlang/OTP 24, ou no OTP 25 quando os certificados CA do sistema operacional não podem ser carregados.
O problema deriva da função
hex core:default config/0 que seleciona o adaptador hex http httpc. Quando hex http httpc:http options/2 tenta verificar o certificado do servidor usando public key:cacerts get/0, uma falha nessa chamada (que ocorre por padrão no OTP 24 ou quando nenhum armazenamento de CA é encontrado no OTP 25) faz com que o adaptador envie a requisição sem opções de ssl. Consequentemente, a aplicação ssl utiliza padrões que não verificam o certificado do servidor em versões anteriores ao OTP 26. Versões do hex core anteriores a 0.11.0 são afetadas em todas as versões do OTP anteriores a 26, independentemente da disponibilidade do armazenamento de CA, pois nunca definem opções de ssl.Um invasor no caminho da rede pode completar o handshake TLS com qualquer certificado, permitindo a interceptação de chaves de API, tokens OAuth e chaves de repositório, além de alterar requisições e respostas de API.
Recomendações
Atualize o hex core para a versão 0.20.0 ou posterior.
Como solução temporária, passe opções de
ssl que verifiquem o certificado do servidor na configuração do adaptador, como {hex http httpc, #{http options => [{ssl, SslOpts}]}}.
Como solução temporária, utilize um adaptador HTTP alternativo em vez do adaptador padrão hex http httpc.
Como solução temporária, execute a aplicação no OTP 26 ou posterior.Correção
Improper Certificate Validation
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Erlang/Otp
Hex Core