Vulnerability DatabaseGHSA-9crm-g4mf-wc5j

GHSA-9crm-g4mf-wc5j: 
Ruby vulnerability analysis and mitigation

Impact

Addressable::IDNA.to_unicode, in the pure-Ruby IDNA implementation, decodes Punycode labels (labels beginning with xn--) that are not valid A-labels. Those labels are returned in decoded form, when they should be returned unchanged. That includes:

  • labels that decode to only ASCII characters, e.g. xn--google- decodes to google;
  • labels that decode to text that doesn't convert back to the same label (RFC 3490 §4.2), e.g. text that isn't in normalized form.

Addressable::URI#display_uri uses to_unicode, so for https://xn--google-.example.org/ it displays the host google.example.org, while #host, #normalized_host and any connection made from the URI use xn--google-.example.org. An attacker who controls a domain can therefore have a URI displayed as a host they don't control. Applications that compare the result of to_unicode against a list of trusted names can likewise treat two different hosts as the same. The native IDNA implementation, used when libidn and the idn-ruby gem are installed, is not affected. to_ascii and normalized_host are not affected.

Affected Versions

This vulnerability affects Addressable >= 2.0.0, the first version with the pure-Ruby IDNA implementation, when that implementation is in use. It is fixed in 2.9.1, where such labels are returned unchanged, as with libidn.

Workarounds

  • Install libidn and the idn-ruby gem, so that Addressable uses the native IDNA implementation.
  • Don't make security decisions on display_uri or to_unicode output. Compare hosts using normalized_host.

References

Credits

Reported by @tonghuaroot.

For more information

If you have any questions or comments about this advisory:


Source: NVD

Related Ruby vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-73v3-wf97-vpgjHIGH7.5
  • Ruby logoRuby
  • msgpack
NoYesOct 30, 2026
GHSA-j82w-28jv-3pmjMEDIUM5.9
  • Ruby logoRuby
  • addressable
NoYesOct 30, 2026
GHSA-9crm-g4mf-wc5jMEDIUM4.3
  • Ruby logoRuby
  • addressable
NoYesOct 30, 2026
GHSA-539f-xcgw-2gjgLOW3.1
  • Ruby logoRuby
  • addressable
NoYesOct 30, 2026
GHSA-wc23-rr9x-mc68LOWN/A
  • Ruby logoRuby
  • graphql-pro
NoYesOct 30, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management