CVE-2026-121008: SQL::Abstract::Tree versions before 2.000001_04 for Perl allow cross-site scripting via unescaped SQL text and bind values in the html profile

Published Nov 4, 2026
·
Updated

SQL::Abstract::Tree versions before 2.00000104 for Perl allow cross-site scripting via unescaped SQL text and bind values in the html profile.

The html profile wraps keywords and placeholders in span elements and breaks lines with br elements, so its output is meant to go into a page as is. The format method does not HTML-escape the SQL text or the bind values it fills in around that markup.

An application that renders SQL formatted with the html profile, such as in a debug panel or query log, allows an attacker who controls a bind value or part of the SQL text to embed JavaScript in the page.

Affected Software

4 affected components
debian/libsql-abstract-perl*
debian/libsql-abstract-perl*
debian/libsql-abstract-perl*
debian/libsql-abstract-perl<=2.000001-2

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade SQL::Abstract::Tree to a version that resolves this vulnerability.

    Fixed in 2.000001_04

Event History

Nov 4, 2026
CVE Published
via MITRE·02:36 PM
Data Sourced
via MITRE·02:36 PM
RemedyDescriptionWeakness
Data Sourced
via NVD·03:17 PM
DescriptionWeakness
Data Sourced
via OSV·06:47 PM
DescriptionAffected Software

Frequently Asked Questions

1

Who is exposed to this issue?

Applications using SQL::Abstract::Tree before 2.000001_04 are exposed only when they render output from its html profile into a web page, such as a debug panel or query log. Applications that do not place that formatted output in HTML are not described as affected.

2

What must an attacker control to exploit it?

An attacker must be able to control a bind value or some portion of the SQL text that is formatted with the html profile and rendered in a page. Those values are not HTML-escaped, allowing injected page content to include JavaScript.

3

Are default deployments affected?

The issue depends on use of the html profile and rendering its output in a page; the provided information does not indicate that this occurs by default. The html profile is specifically intended for output that is inserted into a page as-is.

4

What can be done before upgrading?

Avoid rendering html-profile output containing untrusted SQL text or bind values in web pages. If such output must be displayed, ensure the SQL text and bind values are HTML-escaped before they reach the page.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203