CVE-2026-66370 PUBLISHED

html_sanitize_ex HTML5 scrubber keeps attacker-supplied form-association attributes, allowing form hijacking

Assigner: EEF
Reserved: 06.08.2026 Published: 06.08.2026 Updated: 06.08.2026

URL Redirection to Untrusted Site ('Open Redirect') vulnerability in the HTML5 scrubber in rrrene html_sanitize_ex allows an unauthenticated remote attacker to retarget a form already on the rendering page and receive whatever the victim submits, including credentials, via the form and formaction attributes on an <input> element in sanitized HTML. HTML's form attribute associates an input with any form on the page by its id even when the input sits outside that form, and formaction on a submit control overrides the owning form's action. Neither attribute receives a scheme check, so an absolute cross-origin URL survives sanitizing.

No script executes. The scrubber allows neither form nor button, so the attacker cannot introduce a form of their own and the rendering page must already contain a form carrying an id.

This issue affects html_sanitize_ex: from 0.3.1 before 1.5.3.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:H/SI:L/SA:N
CVSS Score: 4.8

Product Status

Vendor rrrene
Product html_sanitize_ex
Versions Default: unaffected
  • affected from 0.3.1 to 1.5.3 (excl.)
Vendor rrrene
Product html_sanitize_ex
Versions Default: unaffected
  • affected from 8976d64ea0b77d26093a94a43ec48a3978e8d028 to a1e804ed997e780ea71d14393cf2f701330553a6 (excl.)

Affected Configurations

Only HtmlSanitizeEx.html5/1, and custom scrubbers declared with use HtmlSanitizeEx, extend: :html5, allow the input element, and the sanitized output must be rendered to other users.

The rendering page must also contain a form with an id, since that id is what the injected form attribute binds to.

Workarounds

Sanitize with basic_html/1, markdown_html/1 or strip_tags/1, none of which allow input, or define a custom scrubber that omits it.

Omitting the id attribute from the page's own forms, or giving them values an attacker cannot predict, removes the anchor the injected form attribute needs.

Credits

  • Peter Ullrich finder
  • Jonatan Männchen / EEF analyst
  • René Föhring remediation developer

References

Problem Types

  • CWE-601 URL Redirection to Untrusted Site ('Open Redirect') CWE

Impacts

  • CAPEC-154 Resource Location Spoofing