CVE-2026-73490
Loofah: SVG `href` attribute bypasses local-reference restriction
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
4.7
Loofah: SVG `href` attribute bypasses local-reference restriction
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
CVE-2026-73490- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
EUVDEUVD-2026-57626
4.7
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
EUVD-2026-57626- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-9wjq-cp2p-hrgf
4.7
Loofah: SVG `href` attribute bypasses local-reference restriction
Summary
Loofah's HTML5 sanitizer restricted only the xlink:href attribute on certain SVG elements to local, same-document references. Browsers also accept a plain href attribute as an alternative to the deprecated xlink:href per the SVG 2 spec, but Loofah did not apply the same restriction to it, allowing those elements to reference arbitrary external documents.
Impact
SVG <use> can load and render external SVG content by reference. If the referenced external SVG is same-origin and contains scripts or other dangerous content, it could execute in the context of the sanitized document. <feImage> can load external images, which can be used for tracking. Modern browsers restrict cross-origin <use> fetches, which limits but does not eliminate the risk.
Applications that sanitize user-supplied SVG (directly, or as part of HTML) with Loofah's default allowlist are affected.
Mitigation
Upgrade to Loofah >= 2.25.2.
Credit
Found by the maintainer, Mike Dalessio, during a security audit.
- Record
GHSA-9wjq-cp2p-hrgf- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
NVD
4.7
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
CVE-2026-73490- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSV
4.7
Loofah: SVG `href` attribute bypasses local-reference restriction
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
CVE-2026-73490- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-73490
4.7
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
DEBIAN-CVE-2026-73490- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
Show 6 moreShow less
OSVGHSA-9wjq-cp2p-hrgf
4.7
Loofah: SVG `href` attribute bypasses local-reference restriction
Summary
Loofah's HTML5 sanitizer restricted only the xlink:href attribute on certain SVG elements to local, same-document references. Browsers also accept a plain href attribute as an alternative to the deprecated xlink:href per the SVG 2 spec, but Loofah did not apply the same restriction to it, allowing those elements to reference arbitrary external documents.
Impact
SVG <use> can load and render external SVG content by reference. If the referenced external SVG is same-origin and contains scripts or other dangerous content, it could execute in the context of the sanitized document. <feImage> can load external images, which can be used for tracking. Modern browsers restrict cross-origin <use> fetches, which limits but does not eliminate the risk.
Applications that sanitize user-supplied SVG (directly, or as part of HTML) with Loofah's default allowlist are affected.
Mitigation
Upgrade to Loofah >= 2.25.2.
Credit
Found by the maintainer, Mike Dalessio, during a security audit.
- Record
GHSA-9wjq-cp2p-hrgf- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-73490
4.7
Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. Prior to 2.25.2, Loofah's HTML5 sanitizer applies its local-reference restriction only to the xlink:href attribute on SVG use and feImage elements, while browsers also accept the plain href attribute. A crafted sanitized SVG can therefore reference an arbitrary same-origin external document; use may render external SVG content containing scripts or other dangerous content, and feImage may load external images for tracking. Applications that sanitize user-supplied SVG with Loofah's default allowlist are affected. This issue is fixed in version 2.25.2.
- Record
UBUNTU-CVE-2026-73490- CVSS 3.1
- 4.7 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:12153-1 No score
hawk2-2.7.2+git.1792148770.648dcddb-1.1 on GA media
These are all security issues fixed in the hawk2-2.7.2+git.1792148770.648dcddb-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12153-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:22068-1 No score
Security update for hawk2
This update for hawk2 fixes the following issues:
- CVE-2026-42246: net-imap: MITM attacker can cause Net::IMAP#starttls to return successfully, without starting TLS (bsc#1268996).
- CVE-2026-66066: unsafe image processing operations on untrusted uploads can allow arbitrary file reading and remote code execution (bsc#1273348).
- CVE-2026-71847: json: heap use-after free in JSON::ResumableParser partial_value can lead to crash on truncated duplicate-key streams (bsc#1275213).
- CVE-2026-73490: loofah: improper handling of SVG attributes in the HTML5 sanitizer allows bypass of local-reference restrictions (bsc#1275179).
- CVE-2026-73491: loofah: improper handling of javascript: URIs can lead to XSS (bsc#1275183).
- CVE-2026-73492: loofah: improper handling of javascript: and vbscript: URIs can lead to XSS (bsc#1275188).
- CVE-2026-73648: rails-html-sanitizer: cross-site scripting is possible when the sanitizer is configured to allow certain SVG reference elements (bsc#1275200).
Changes for hawk2:
- Update to version 2.7.2+git.1788518533.7d4dadd6 (bsc#1275019):
- Test: give sle15 more time when choosing between sle15 and sle16
- Dev: bump jQuery version to 4.0.0
- Dev: bump jQuery version to 3.5.0
- Dev: bump jQuery version to 2.2.4
- Test: update the e2e test for the change allowing custom parameters
- Dev: enable custom Parameters and Meta Attributes (bsc#1274860)
- CI/CD: update hawk examiner entry point
- Test: enable test_add_clone against hawk-apiserver verion 0.2.1
- Test: fix SyntaxWarning: invalid escape sequence '|'
- Test: make the tests compatible against hawk-apiserver ver0.2.0
- Record
openSUSE-SU-2026:22068-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:24195-1 No score
Security update for hawk2
This update for hawk2 fixes the following issues:
- CVE-2026-42246: net-imap: MITM attacker can cause Net::IMAP#starttls to return successfully, without starting TLS (bsc#1268996).
- CVE-2026-66066: unsafe image processing operations on untrusted uploads can allow arbitrary file reading and remote code execution (bsc#1273348).
- CVE-2026-71847: json: heap use-after free in JSON::ResumableParser partial_value can lead to crash on truncated duplicate-key streams (bsc#1275213).
- CVE-2026-73490: loofah: improper handling of SVG attributes in the HTML5 sanitizer allows bypass of local-reference restrictions (bsc#1275179).
- CVE-2026-73491: loofah: improper handling of javascript: URIs can lead to XSS (bsc#1275183).
- CVE-2026-73492: loofah: improper handling of javascript: and vbscript: URIs can lead to XSS (bsc#1275188).
- CVE-2026-73648: rails-html-sanitizer: cross-site scripting is possible when the sanitizer is configured to allow certain SVG reference elements (bsc#1275200).
Changes for hawk2:
- Update to version 2.7.2+git.1788518533.7d4dadd6 (bsc#1275019):
- Test: give sle15 more time when choosing between sle15 and sle16
- Dev: bump jQuery version to 4.0.0
- Dev: bump jQuery version to 3.5.0
- Dev: bump jQuery version to 2.2.4
- Test: update the e2e test for the change allowing custom parameters
- Dev: enable custom Parameters and Meta Attributes (bsc#1274860)
- CI/CD: update hawk examiner entry point
- Test: enable test_add_clone against hawk-apiserver verion 0.2.1
- Test: fix SyntaxWarning: invalid escape sequence '|'
- Test: make the tests compatible against hawk-apiserver ver0.2.0
- Record
SUSE-SU-2026:24195-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:24250-1 No score
Security update for hawk2
This update for hawk2 fixes the following issues:
- CVE-2026-42246: net-imap: MITM attacker can cause Net::IMAP#starttls to return successfully, without starting TLS (bsc#1268996).
- CVE-2026-66066: unsafe image processing operations on untrusted uploads can allow arbitrary file reading and remote code execution (bsc#1273348).
- CVE-2026-71847: json: heap use-after free in JSON::ResumableParser partial_value can lead to crash on truncated duplicate-key streams (bsc#1275213).
- CVE-2026-73490: loofah: improper handling of SVG attributes in the HTML5 sanitizer allows bypass of local-reference restrictions (bsc#1275179).
- CVE-2026-73491: loofah: improper handling of javascript: URIs can lead to XSS (bsc#1275183).
- CVE-2026-73492: loofah: improper handling of javascript: and vbscript: URIs can lead to XSS (bsc#1275188).
- CVE-2026-73648: rails-html-sanitizer: cross-site scripting is possible when the sanitizer is configured to allow certain SVG reference elements (bsc#1275200).
Changes for hawk2:
- Update to version 2.7.2+git.1788518533.7d4dadd6 (bsc#1275019):
- Test: give sle15 more time when choosing between sle15 and sle16
- Dev: bump jQuery version to 4.0.0
- Dev: bump jQuery version to 3.5.0
- Dev: bump jQuery version to 2.2.4
- Test: update the e2e test for the change allowing custom parameters
- Dev: enable custom Parameters and Meta Attributes (bsc#1274860)
- CI/CD: update hawk examiner entry point
- Test: enable test_add_clone against hawk-apiserver verion 0.2.1
- Test: fix SyntaxWarning: invalid escape sequence '|'
- Test: make the tests compatible against hawk-apiserver ver0.2.0
- Record
SUSE-SU-2026:24250-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
loofahRubyGems |
before 2.25.2 | 2.25.2 |
ruby-loofahDebian:12 |
All versions, plus listed versions 2.19.1-12.20.0-12.21.3-12.21.4-12.22.0-1 Show 6 moreShow less2.24.0-12.24.1-12.25.0-12.25.1-12.25.1-22.25.2-1 |
None known |
ruby-loofahDebian:13 |
All versions, plus listed versions 2.24.0-12.24.1-12.25.0-12.25.1-12.25.1-22.25.2-1 |
None known |
ruby-loofahDebian:14 |
before 2.25.2-1, plus listed versions 2.24.0-12.24.1-12.25.0-12.25.1-12.25.1-2 |
2.25.2-1 |
loofahRubyGems |
before 2.25.2, plus listed versions 0.2.00.2.10.2.20.3.00.3.1 Show 45 moreShow less0.4.00.4.10.4.20.4.30.4.40.4.50.4.60.4.71.0.01.0.0.beta.11.1.01.2.01.2.12.0.02.0.12.0.22.0.32.1.02.1.0.rc12.1.0.rc22.1.12.10.02.11.02.12.02.13.02.14.02.15.02.16.02.17.02.18.02.19.02.19.12.2.02.2.12.2.22.2.32.20.02.21.02.21.0.rc12.21.12.21.22.21.32.21.42.22.02.23.0 |
2.25.2 |
hawk2SUSE:Linux Enterprise High Availability Extension 16.0 From an advisory covering 7 CVEs |
before 2.7.2+git.1788518533.7d4dadd6-160000.1.1 | 2.7.2+git.1788518533.7d4dadd6-160000.1.1 |
hawk2SUSE:Linux Enterprise Server for SAP applications 16.0 From an advisory covering 7 CVEs |
before 2.7.2+git.1788518533.7d4dadd6-160000.1.1 | 2.7.2+git.1788518533.7d4dadd6-160000.1.1 |
ruby-loofahUbuntu:16.04:LTS |
All versions, plus listed versions 2.0.2-12.0.3-12.0.3-22.0.3-2+deb9u1build0.16.04.12.0.3-2+deb9u2build0.16.04.12.0.3-2+deb9u3build0.16.04.1 |
None known |
ruby-loofahUbuntu:18.04:LTS |
All versions, plus listed versions 2.0.3-22.2.2-1 |
None known |
ruby-loofahUbuntu:20.04:LTS |
All versions, plus listed versions 2.2.3-12.3.1+dfsg-12.4.0+dfsg-1 |
None known |
Show 6 moreShow less
| Package | Affected | Fixed |
|---|---|---|
ruby-loofahUbuntu:22.04:LTS |
All versions, plus listed versions 2.12.0-12.13.0-12.13.0-2 |
None known |
ruby-loofahUbuntu:24.04:LTS |
All versions, plus listed versions 2.21.3-12.21.4-12.22.0-1 |
None known |
ruby-loofahUbuntu:26.10 |
All versions, plus listed versions 2.25.0-12.25.1-22.25.2-1 |
None known |
ruby-loofahUbuntu:26.04:LTS |
All versions, plus listed versions 2.24.1-12.25.0-1 |
None known |
hawk2openSUSE:Tumbleweed From an advisory covering 7 CVEs |
before 2.7.2+git.1792148770.648dcddb-1.1 | 2.7.2+git.1792148770.648dcddb-1.1 |
hawk2openSUSE:Leap 16.0 From an advisory covering 7 CVEs |
before 2.7.2+git.1788518533.7d4dadd6-160000.1.1 | 2.7.2+git.1788518533.7d4dadd6-160000.1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-73490 is a medium vulnerability (CVSS 4.7) in Flavorjones Loofah, published July 21, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.30%, the 22nd percentile. Fixed in loofah 2.25.2.
References
github.com/flavorjones/loofah/security/advisories/GHSA-9wjq-cp2p-hrgf
github.com/flavorjones/loofah/pull/308
github.com/flavorjones/loofah/commit/20867b9be689521887364b74822c41ef830523c9
github.com/flavorjones/loofah/releases/tag/v2.25.2
github.com/advisories/GHSA-9wjq-cp2p-hrgf
github.com/CVEProject/cvelistV5/tree/main/cves/2026/73xxx/CVE-2026-73490.json
Show 23 moreShow less
nvd.nist.gov/vuln/detail/CVE-2026-73490
security-tracker.debian.org/tracker/CVE-2026-73490
github.com/flavorjones/loofah
suse.com/support/update/announcement/2026/suse-su-202624195-1
bugzilla.suse.com/1268996
bugzilla.suse.com/1273348
bugzilla.suse.com/1274860
bugzilla.suse.com/1275019
bugzilla.suse.com/1275179
bugzilla.suse.com/1275183
bugzilla.suse.com/1275188
bugzilla.suse.com/1275200
bugzilla.suse.com/1275213
suse.com/security/cve/CVE-2026-42246
suse.com/security/cve/CVE-2026-66066
suse.com/security/cve/CVE-2026-71847
suse.com/security/cve/CVE-2026-73490
suse.com/security/cve/CVE-2026-73491
suse.com/security/cve/CVE-2026-73492
suse.com/security/cve/CVE-2026-73648
suse.com/support/update/announcement/2026/suse-su-202624250-1
ubuntu.com/security/CVE-2026-73490
cve.org/CVERecord?id=CVE-2026-73490
Left out here: 14 versions. The JSON record has them.