CVE-2026-54659

MEDIUM

Pagy I18n locale option is not validated before being used in a file path

Title source: cna
STIX 2.1

Description

Pagy is agnostic pagination in plain Ruby. From 43.0.0 until 43.5.6, Pagy::I18n.locale= in gem/lib/pagy/modules/i18n/i18n.rb stored locale values verbatim and later used them as <locale>.yml path components, allowing untrusted params[:locale] values with absolute paths or ../ sequences to create a file existence and readability oracle for YAML files. This issue is fixed in version 43.5.6.

References (4)

Core 4

Scores

CVSS v4 6.9
EPSS 0.0037
EPSS Percentile 29.5%
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/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

CISA SSVC

Vulnrichment
Exploitation none
Automatable yes
Technical Impact partial

Details

CWE
CWE-200 CWE-22
Status published
Products (2)
ddnexus/pagy >= 43.0.0, < 43.5.6
rubygems/pagy 43.0.0 - 43.5.6RubyGems
Published Jul 28, 2026
Tracked Since Jul 29, 2026