Template::Plugin::HTML versions through 3.102 for Perl allows HTML and JavaScript to be injected.
The html_filter function did not escape single quotes. HTML attributes inside of single quotes could be have code injected. For example, the variable "var" in
<a id='ref' title='[% var | html %]'>
would not be properly escaped. An attacker could insert some limited HTML and JavaScript, for example,
var = " ' onclick='while (true) { alert(1) }'"
Note that arbitrary HTML and JavaScript would be difficult to inject, because angle brackets, ampersands and double-quotes would still be escaped.
The html_filter function did not escape single quotes. HTML attributes inside of single quotes could be have code injected. For example, the variable "var" in
<a id='ref' title='[% var | html %]'>
would not be properly escaped. An attacker could insert some limited HTML and JavaScript, for example,
var = " ' onclick='while (true) { alert(1) }'"
Note that arbitrary HTML and JavaScript would be difficult to inject, because angle brackets, ampersands and double-quotes would still be escaped.
Advisories
No advisories yet.
Fixes
Solution
No solution given by the vendor.
Workaround
Attribute values in templates that contain escaped HTML should use double quotes instead of single quotes.
References
History
Wed, 20 May 2026 11:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Toddr
Toddr template::plugin::html |
|
| Vendors & Products |
Toddr
Toddr template::plugin::html |
Wed, 20 May 2026 00:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Tue, 19 May 2026 22:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Template::Plugin::HTML versions through 3.102 for Perl allows HTML and JavaScript to be injected. The html_filter function did not escape single quotes. HTML attributes inside of single quotes could be have code injected. For example, the variable "var" in <a id='ref' title='[% var | html %]'> would not be properly escaped. An attacker could insert some limited HTML and JavaScript, for example, var = " ' onclick='while (true) { alert(1) }'" Note that arbitrary HTML and JavaScript would be difficult to inject, because angle brackets, ampersands and double-quotes would still be escaped. | |
| Title | Template::Plugin::HTML versions through 3.102 for Perl allows HTML and JavaScript to be injected | |
| Weaknesses | CWE-79 | |
| References |
|
Projects
Sign in to view the affected projects.
Status: PUBLISHED
Assigner: CPANSec
Published:
Updated: 2026-05-19T23:25:21.832Z
Reserved: 2026-03-28T19:35:11.737Z
Link: CVE-2026-5090
No data.
Status : Received
Published: 2026-05-19T22:16:39.003
Modified: 2026-05-20T00:16:44.530
Link: CVE-2026-5090
No data.
OpenCVE Enrichment
Updated: 2026-05-20T10:38:54Z
Weaknesses