Addressable is an alternative implementation to the URI implementation that is part of Ruby's standard library. From 2.0.0 until 2.9.1, Addressable::IDNA.to_unicode can decode Punycode labels that contain bidirectional controls, zero-width characters, control characters, or other default-ignorable format characters. Addressable::URI#display_uri can consequently show a reordered or visually indistinguishable hostname even though host, normalized_host, and network connections use the original encoded hostname. The pure-Ruby backend accepts the full prohibited set, while the native libidn backend is affected from 2.5.2 for characters added after Unicode 3.2. This issue is fixed in version 2.9.1.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-1007",
"CWE-176",
"CWE-451"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/126xxx/CVE-2026-126349.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "2.0.0"
},
{
"fixed": "2.9.1"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "60455d32bb59fda2585a0e1865a9fcb21e8e55b1"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "addressable-2.9.1",
"range": [
{
"fixed": "afa66636d9fdcca11e03c85cf166651e0efa68ef"
}
],
"source": "REFERENCES_TAG"
}
]
}