CVE-2026-121007
SQL::Abstract versions from 1.90_01 before 2.000001_04 for Perl allow SQL injection via the where values of a nested statement in an identifier position. A nested statement such as { -select => ... } in a position where plain scalars are identifiers treats its own plain scalars as identifiers too. These positions are the select list, ORDER BY, GROUP BY, RETURNING, and with the ExtraClauses plugin FROM (-as) and JOIN (to). The values of the statement's where, having and set clauses, and the rows of a -values, go into the SQL text instead of the bind list, unescaped unless quote_char is set. Subselects in a WHERE condition are not affected. An application that passes untrusted input as a where value of such a nested statement, expecting it to be bound, allows SQL injection.
- Score
- –
- Published
- 2026-11-04
- Links
- NVD · cve.org · Report wrong data
Matched ports (1)
| Port | Package | Version | Status | Maintainer |
|---|---|---|---|---|
| databases/p5-SQL-Abstract | p5-SQL-Abstract | 2.000001 | unaddressed | perl@FreeBSD.org |
Template for a VuXML entry
Check the version numbers before you commit this entry. Some ports share an entry in the CVE database with another port, such as sqlite2 and sqlite3. The version shown here may then be one that never existed for this port.
Ranges per package from the CVE rows that match this port, in pkg notation with the port's epoch and revision, every bound checked with pkg; one range per epoch the port actually had. make newentry in security/vuxml creates the vid.
databases/p5-SQL-Abstract (CPE matched by the package name) has no USES=cpe. The CVE was matched through a CPE from another source, so the package and the version range may belong to a different product. Check the CVE record before using this entry.
<vuln vid="FIXME (make newentry)">
<topic>p5-SQL-Abstract -- FIXME</topic>
<affects>
<package>
<name>p5-SQL-Abstract</name>
<!-- 2.000001.04 is not released yet, newest upstream is 2.000001 -->
<range><ge>1.90.01</ge><lt>2.000001.04</lt></range>
</package>
</affects>
<description>
<body xmlns="http://www.w3.org/1999/xhtml">
<p>CVE-2026-121007: SQL::Abstract versions from 1.90_01 before
2.000001_04 for Perl allow SQL injection via the where values of a
nested statement in an identifier position. A nested statement such
as { -select => ... } in a position where plain scalars are
identifiers treats its own plain scalars as identifiers too. These
positions are the select list, ORDER BY, GROUP BY, RETURNING, and
with the ExtraClauses plugin FROM (-as) and JOIN (to). The values
of the statement's where, having and set clauses, and the rows of a
-values, go into the SQL text instead of the bind list, unescaped
unless quote_char is set. Subselects in a WHERE condition are not
affected. An application that passes untrusted input as a where
value of such a nested statement, expecting it to be bound, allows
SQL injection.</p>
</body>
</description>
<references>
<cvename>CVE-2026-121007</cvename>
<url>https://nvd.nist.gov/vuln/detail/CVE-2026-121007</url>
</references>
<dates>
<discovery>2026-11-04</discovery>
<entry>2026-11-04</entry>
</dates>
</vuln>