{"id":"CVE-2026-5090","state":"PUBLISHED","title":"Template::Plugin::HTML versions before 3.103 for Perl allows HTML and JavaScript to be injected","description":"Template::Plugin::HTML versions before 3.103 for Perl allows HTML and JavaScript to be injected.\n\nThe 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\n\n    <a id='ref' title='[% var | html %]'>\n\nwould not be properly escaped. An attacker could insert some limited HTML and JavaScript, for example,\n\n    var = \" ' onclick='while (true) { alert(1) }'\"\n\nNote that arbitrary HTML and JavaScript would be difficult to inject, because angle brackets, ampersands and double-quotes would still be escaped.","publishedAt":"2026-05-19T21:30:03.552Z","updatedAt":"2026-09-19T11:46:35.655Z","severity":{"score":6.1,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","source":"CISA-ADP"},"assigner":"CPANSec","products":["Template-Toolkit"],"affected":[{"packageName":"Template-Toolkit","packageURL":"pkg:cpan/Template-Toolkit","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"3.103","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["Template::Plugin::HTML"],"programFiles":["lib/Template/Plugin/HTML.pm"],"programRoutines":[{"name":"Template::Plugin::HTML::html_filter"}],"repo":"https://github.com/abw/Template2"}],"references":["https://github.com/abw/Template2/issues/327","https://github.com/cpan-authors/Template2/commit/ca539f49f6ffd1c2b7d9ef4f48f6b88292418734.patch","https://metacpan.org/release/TODDR/Template-Toolkit-3.103/changes","http://www.openwall.com/lists/oss-security/2026/05/19/40"],"weaknesses":["CWE-79"],"ingestedAt":"2026-10-29T20:12:32.778Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/5xxx/CVE-2026-5090.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-5090","state":"PUBLISHED","datePublished":"2026-05-19T21:30:03.552Z","dateUpdated":"2026-09-19T11:46:35.655Z","assignerShortName":"CPANSec","assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateReserved":"2026-03-28T19:35:11.737Z"},"containers":{"cna":{"title":"Template::Plugin::HTML versions before 3.103 for Perl allows HTML and JavaScript to be injected","descriptions":[{"lang":"en","value":"Template::Plugin::HTML versions before 3.103 for Perl allows HTML and JavaScript to be injected.\n\nThe 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\n\n    <a id='ref' title='[% var | html %]'>\n\nwould not be properly escaped. An attacker could insert some limited HTML and JavaScript, for example,\n\n    var = \" ' onclick='while (true) { alert(1) }'\"\n\nNote that arbitrary HTML and JavaScript would be difficult to inject, because angle brackets, ampersands and double-quotes would still be escaped."}],"affected":[{"packageName":"Template-Toolkit","packageURL":"pkg:cpan/Template-Toolkit","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"3.103","versionType":"custom"}],"collectionURL":"https://cpan.org/modules","modules":["Template::Plugin::HTML"],"programFiles":["lib/Template/Plugin/HTML.pm"],"programRoutines":[{"name":"Template::Plugin::HTML::html_filter"}],"repo":"https://github.com/abw/Template2"}],"references":[{"url":"https://github.com/abw/Template2/issues/327","tags":["issue-tracking"]},{"url":"https://github.com/cpan-authors/Template2/commit/ca539f49f6ffd1c2b7d9ef4f48f6b88292418734.patch","tags":["patch"]},{"url":"https://metacpan.org/release/TODDR/Template-Toolkit-3.103/changes","tags":["release-notes"]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-79","description":"CWE-79 Improper Neutralization of Input During Web Page Generation","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"CPANSec","orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","dateUpdated":"2026-09-19T11:46:35.655Z"},"solutions":[{"lang":"en","value":"Upgrade to version 3.103."}],"source":{"discovery":"UNKNOWN"},"timeline":[{"lang":"en","time":"2024-12-01T00:00:00.000Z","value":"Issue reported in GitHub."},{"lang":"en","time":"2026-02-21T00:00:00.000Z","value":"Pull request submitted."},{"lang":"en","time":"2026-03-22T00:00:00.000Z","value":"Pull request merged."},{"lang":"en","time":"2026-03-22T00:00:00.000Z","value":"Issue reported to CPANSec."},{"lang":"en","time":"2026-03-28T00:00:00.000Z","value":"CVE assigned."},{"lang":"en","time":"2026-05-19T00:00:00.000Z","value":"CVE published."},{"lang":"en","time":"2026-05-21T00:00:00.000Z","value":"Template-Toolkit version 3.103 released."}],"workarounds":[{"lang":"en","value":"Attribute values in templates that contain escaped HTML should use double quotes instead of single quotes."}],"x_generator":{"engine":"cpansec-cna-tool 0.1"}},"adp":[{"title":"CVE Program Container","references":[{"url":"http://www.openwall.com/lists/oss-security/2026/05/19/40"}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2026-05-19T23:25:21.832Z"}},{"title":"CISA ADP Vulnrichment","metrics":[{"cvssV3_1":{"scope":"CHANGED","version":"3.1","baseScore":6.1,"attackVector":"NETWORK","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","integrityImpact":"LOW","userInteraction":"REQUIRED","attackComplexity":"LOW","availabilityImpact":"NONE","privilegesRequired":"NONE","confidentialityImpact":"LOW"}},{"other":{"type":"ssvc","content":{"timestamp":"2026-05-20T13:45:07.748170Z","id":"CVE-2026-5090","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-05-20T13:45:31.562Z"}}]}}}