CVE-2026-126349 json
Addressable display_uri can show misleading hosts containing bidi and invisible characters
published 16d ago modified yesterday also EUVD-2026-124729 , GHSA-539f-xcgw-2gjg
- cvss
- 3.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 15%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- rubygems addressable 2.9.1
Is CVE-2026-126349 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerExploit prediction
0.25% chance of exploitation in the next 30 days, higher than 15% of all scored CVEs (FIRST EPSS, 2026-11-14).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N |
| GitHub | 3.1 | 3.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | addressable | >=2.0.0, <2.9.1 |
2.9.1 |
Affected products
- sporkmonger addressable
Classification
References
-
github.com
/sporkmonger/addressable/commit/60455d32bb59fda2585a0e1865a9fcb21e8e55b1
web
-
github.com
/sporkmonger/addressable/security/advisories/GHSA-539f-xcgw-2gjg
web, advisory
-
github.com
/sporkmonger/addressable/releases/tag/addressable-2.9.1
web
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/addressable/GHSA-539f-xcgw-2gjg.yml
web
-
github.com
/sporkmonger/addressable
package
Sources
- CVE List CVE-2026-126349
- GitHub Advisory GHSA-539f-xcgw-2gjg
- NVD CVE-2026-126349
- Maintainer advisory GHSA-539f-xcgw-2gjg
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of sporkmonger/addressable published their own advisory on GitHub. Reviewed sources take precedence over it.