Description
Data::MuForm versions through 0.05 for Perl render attribute values and option labels into HTML without escaping.

process_attrs writes each attribute value into the markup as is. The select, radio group and checkbox group renderers pass each option to it, so an option's value becomes an unescaped attribute. Option and option group labels are also unescaped, the group label inside a label attribute and the others in element content.

Any application whose option list is built from data rather than literals, using an options_<field_name> method, a build_options method or a DBIC model, allows attacker-influenced text in an option value or label that can embed JavaScript in rendered pages. Attribute values built from data, such as through element_attr, are affected the same way.
Published: 2026-11-04
Score: n/a
EPSS: n/a
KEV: No
Impact: Cross‑Site Scripting (client‑side)
Action: Apply patch
AI Analysis

Impact

Data::MuForm versions through 0.05 render option values and labels, as well as attribute values, directly into HTML without escaping. This flaw enables an attacker to inject malicious JavaScript via option values or labels that are sourced from external data such as options_<field_name> methods, build_options, or DBIC models. When a user views a page containing the vulnerable form, the injected script runs in the user’s browser context, potentially compromising session integrity, defacing content, and exfiltrating sensitive information. The weakness corresponds to CWE‑79, classifying it as a cross‑site scripting vulnerability.

Affected Systems

Perl applications that employ the Data::MuForm module, specifically versions up to and including 0.05. Any system that builds form option lists from dynamic data sources or passes arbitrary attribute values through element_attr functions is susceptible.

Risk and Exploitability

An attacker can exploit the flaw by providing crafted data to an option list or attribute value via any interface that populates the Data::MuForm renderer—such as database queries, user input, or service endpoints. Since the vulnerable code does not perform HTML escaping, the malicious payload is reflected verbatim into the page. The exploit requires that the rendered form be accessed by a user with a browser that interprets the injected script. No authentication is needed, so the risk is high for any client who can view the vulnerable page. No EPSS score is available and the vulnerability is not yet listed in the KEV catalog, but the lack of a metric does not diminish the urgency of patching or mitigating the issue.

Generated by OpenCVE AI on November 4, 2026 at 15:35 UTC.

Remediation

Vendor Solution

No fixed CPAN release is currently available. Apply the patch.


OpenCVE Recommended Actions

  • Apply the vendor patch referenced in the pull request or subsequent CPAN release
  • If the patch is unavailable, modify the application to escape all attribute values and option labels before rendering
  • Review and sanitize any data sources that supply option values or labels to enforce a whitelist of safe input

Generated by OpenCVE AI on November 4, 2026 at 15:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 04 Nov 2026 14:30:00 +0000

Type Values Removed Values Added
Description Data::MuForm versions through 0.05 for Perl render attribute values and option labels into HTML without escaping. process_attrs writes each attribute value into the markup as is. The select, radio group and checkbox group renderers pass each option to it, so an option's value becomes an unescaped attribute. Option and option group labels are also unescaped, the group label inside a label attribute and the others in element content. Any application whose option list is built from data rather than literals, using an options_<field_name> method, a build_options method or a DBIC model, allows attacker-influenced text in an option value or label that can embed JavaScript in rendered pages. Attribute values built from data, such as through element_attr, are affected the same way.
Title Data::MuForm versions through 0.05 for Perl render attribute values and option labels into HTML without escaping
Weaknesses CWE-79
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-11-04T14:23:14.516Z

Reserved: 2026-11-03T17:04:45.320Z

Link: CVE-2026-121632

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-04T15:17:42.130

Modified: 2026-11-04T15:17:42.130

Link: CVE-2026-121632

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-04T15:45:15Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')