PT-2026-65621 · Rubygems · Pagy

CVE-2026-54659

·

Publicado

2026-07-28

·

Atualizado

2026-07-28

CVSS v4.0

6.9

Média

VetorAV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Nome do Software Vulnerável e Versões Afetadas Pagy versões 43.0.0 até 43.5.5
Descrição No definidor Pagy::I18n.locale= em gem/lib/pagy/modules/i18n/i18n.rb, os valores de localidade são armazenados literalmente e posteriormente utilizados como componentes de caminho para carregar arquivos de dicionário YAML. Quando uma aplicação atribui entradas de usuário não sanitizadas à localidade, como através da variável params[:locale], um invasor pode usar caminhos absolutos ou sequências de travessia de diretório (ex: ../) para redirecionar a busca de arquivos para fora do diretório de localidades pretendido. Embora as verificações estruturais do software impeçam que o conteúdo do arquivo seja retornado na resposta, esse comportamento cria um oráculo de existência e legibilidade de arquivos para arquivos .yml no host, pois a resposta do sistema difere dependendo se o arquivo alvo existe e é legível.
Recomendações Atualize o Pagy para a versão 43.5.6. Como solução temporária, valide a localidade antes da atribuição aplicando uma restrição de formato BCP 47 à variável params[:locale] ou restringindo-a a um conjunto conhecido de localidades confiáveis.

Correção

Path traversal

Information Disclosure

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-54659
GHSA-2XMW-F8J8-WFXC

Produtos afetados

Pagy