Skip to content
OpenAdvisories

Description

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, the pure-Ruby Addressable::IDNA.to_unicode implementation decodes invalid Punycode A-labels instead of returning them unchanged. Labels that decode to ASCII text or fail to convert back to the same A-label can therefore make Addressable::URI#display_uri show a trusted-looking host while host, normalized_host, and the connection target retain the attacker-controlled encoded host. A trusted-name comparison using Addressable::IDNA.to_unicode output can also treat two different hosts as the same without displaying the URI. The native libidn implementation, to_ascii, and normalized_host are unaffected. This issue is fixed in version 2.9.1.

Affected products

VendorProductAffectedFixed
sporkmonger addressable >= 2.0.0, < 2.9.1 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling logstash-9.3 +1 9.3.8-r4 —
Wolfi rolling logstash-9.4 +4 No fix yet —
Wolfi rolling logstash-9.4-iamguarded-compat 9.4.9-r3 —

Affected packages

EcosystemPackageAffectedFixedRecord
RubyGems addressable >= 2.0.0, < 2.9.1 2.9.1 GHSA-9crm-g4mf-wc5j

References