ZeroHour

CVE-2026-85485

niche

Cross-site scripting via unescaped error messages in HTML::FormHandler (Perl)

CVSS 3.1
6.1 medium
EPSS
<1%p8
Published
()
Modified
AI analysis

HTML::FormHandler versions before 0.410002 for Perl insert validation error messages into rendered pages without HTML-escaping, a cross-site scripting flaw (CWE-79). The defect sits in the Table form layout and the Bootstrap 2 and Bootstrap 3 wrappers, which splice each error string directly into the surrounding markup; the 0.410000 release escaped the equivalent values in other layouts and wrappers as the fix for CVE-2026-19872, and 0.410002 extends that escaping to these three remaining paths. An attacker triggers the flaw by submitting a field value that fails validation and carries HTML or JavaScript, so the resulting error message echoes the payload unescaped into the page and it executes in the browser of anyone viewing that rendered form, potentially allowing session theft or actions in the user's context. Affected users are operators of web applications built with HTML::FormHandler whose forms use the Table layout or the Bootstrap 2/3 wrappers and whose error messages can include attacker-influenced content such as rejected field values. No public proof-of-concept is known, the issue is not in CISA KEV, CVSS has not yet been scored, and EPSS estimates only a 0.2% probability of exploitation within 30 days.

What to do: Upgrade HTML::FormHandler to 0.410002 or later, which escapes error messages in the Table layout and the Bootstrap 2 and 3 wrappers. Audit deployed applications for forms that use these three layouts/wrappers and check whether validation error messages can include attacker-supplied field values; until upgrading, prevent such values from reaching error output or escape them at the application layer.

Affected
HTML::FormHandler project (Perl CPAN module) HTML::FormHandlerall versions before 0.410002 (fixed in 0.410002); affected render paths: Table form layout, Bootstrap 2 wrapper, Bootstrap 3 wrapper
Estimated exposure
nichelikely low thousands of deployed web applications at most (niche Perl CPAN library; only deployments using the Table or Bootstrap 2/3 layouts are affected) — Estimated from the small current market share of Perl-based web applications and the fact that only three specific form layouts/wrappers are affected; no public install-count data was provided.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

HTML::FormHandler versions before 0.410002 for Perl render some error messages into HTML without escaping. The Table form layout and the Bootstrap 2 and 3 wrappers splice each error string straight into the surrounding markup. Version 0.410000, the fix for CVE-2026-19872, escaped the equivalent values in the other layouts and wrappers, and 0.410002 extended that to these three. Error messages that contain attacker-influenced content such as rejected field values could embed JavaScript in rendered pages.

Weakness
CWE-79
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

In the news

CVE-2026-85485: HTML::FormHandler versions before 0.410002 for Perl render some error messages into HTML without escaping

HTML::FormHandler before 0.410002 for Perl renders error messages into HTML unescaped, enabling cross-site scripting (CVE-2026-85485); fixed in 0.410002.

Robert Rothenberg disclosed CVE-2026-85485 on the oss-security mailing list, affecting HTML::FormHandler versions before 0.410002 for Perl. The module renders some error messages into HTML without escaping, which can enable cross-site scripting in applications using its rendered output. The issue is fixed in version 0.410002.

oss-security · 7d agoVulnerabilityCVE-2026-854851