{"id":"CVE-2026-73491","aliases":["GHSA-8whx-365g-h9vv"],"url":"https://o3.security/vulnerability/CVE-2026-73491","summary":"Loofah `allowed_uri?` does not detect `javascript:` URIs split by named whitespace character references","details":"Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. From 2.25.0 until 2.25.2, Loofah::HTML5::Scrub.allowed_uri? does not reject javascript: URIs whose scheme is split or prefixed with the HTML5 named whitespace character references &Tab; or &NewLine;. CGI.unescapeHTML leaves those references intact, so allowed_uri? reports the URL safe even though a browser decodes and strips the tab or line feed and executes the resulting javascript: URL. This issue affects only callers that pass HTML-encoded strings directly to allowed_uri?; Loofah's default sanitize() path is not affected. This issue is fixed in version 2.25.2.","published":"2026-08-12T20:59:18.589Z","modified":"2026-08-15T11:31:16.372183407Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":null,"affectedPackages":[{"ecosystem":"RubyGems","name":"loofah","fixedVersion":"2.25.2"}],"fix":{"url":"https://github.com/flavorjones/loofah/commit/5e91af861e3cdab47b91dd0b81f3afdfd13a5e19","label":"flavorjones/loofah@5e91af8"},"references":[{"type":"WEB","url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.2"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/73xxx/CVE-2026-73491.json"},{"type":"ADVISORY","url":"https://github.com/flavorjones/loofah/security/advisories/GHSA-8whx-365g-h9vv"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73491"},{"type":"FIX","url":"https://github.com/flavorjones/loofah/commit/5e91af861e3cdab47b91dd0b81f3afdfd13a5e19"},{"type":"FIX","url":"https://github.com/flavorjones/loofah/pull/308"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-15T11:31:16.372183407Z"}}