CVE-2026-13051: Form::Processor::Field::HtmlArea versions from 0.06 through 1.162360 for Perl allow attacker selected method dispatch and resource exhaustion via an HTML::Tidy diagnostic that validate passes to add_error as a Locale::Maketext template
Form::Processor::Field::HtmlArea versions from 0.06 through 1.162360 for Perl allow attacker selected method dispatch and resource exhaustion via an HTML::Tidy diagnostic that validate passes to adderror as a Locale::Maketext template.
validate runs HTML::Tidy over the submitted markup and passes each resulting message to adderror as its first argument, which adderror hands to the language handle as the Locale::Maketext message key. The default handle's lexicon sets AUTO, so a message that is not a lexicon entry is compiled as a bracket notation template instead of being looked up. Tidy diagnostics quote the offending attribute name or value, so a bracket group in the submitted markup reaches the template position, where the first token of the group names a method called on the language handle and the remaining tokens are its arguments. A group such as [0] makes the compile croak, and neither the field nor the handle catches it, so the exception leaves validate. [sprintf,%2000000000d,7] reaches CORE::sprintf with an attacker chosen field width.
One submission of crafted markup to an HtmlArea field throws an unhandled exception out of form validation or allocates an arbitrary amount of memory, and an application whose language handle subclass defines side effecting public methods makes those callable with attacker chosen arguments. The other field types pass fixed templates with the submitted value in an argument slot, where it stays inert, and are unaffected.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Form::Processor::Field::HtmlAreato a version that resolves this vulnerability.Fixed in 1.162360 - Configuration
Disable HTML::Tidy diagnostics so validate does not pass Tidy-generated messages into add_error (which then routes through the Locale::Maketext message-key mechanism on the language handle).
HTML::Tidy disable diagnostics/message forwarding to validate/add_error = disabled - Compensating control
Harden the language handle class: ensure the language handle used by add_error/Locale::Maketext does not expose side-effecting public methods that could be reached via attacker-controlled message keys or AUTO/bracket-template dispatch.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-13051?
CVE-2026-13051 has a risk score of 65, indicating a medium severity vulnerability.
How do I fix CVE-2026-13051?
To fix CVE-2026-13051, update Form::Processor::Field::HtmlArea to version 1.162361 or later.
What software is affected by CVE-2026-13051?
CVE-2026-13051 affects Form::Processor::Field::HtmlArea versions from 0.06 through 1.162360 for Perl.
What type of vulnerability is CVE-2026-13051?
CVE-2026-13051 is a vulnerability that allows attacker selected method dispatch and causes resource exhaustion.
When was CVE-2026-13051 published?
CVE-2026-13051 was published on August 13, 2026.