SQL injection in jackalope/jackalope-doctrine-dbal
High severity
GitHub Reviewed
Published
Dec 13, 2021
in
jackalope/jackalope-doctrine-dbal
•
Updated Feb 1, 2023
Package
Affected versions
< 1.7.4
Patched versions
1.7.4
Description
Published by the National Vulnerability Database
Dec 13, 2021
Reviewed
Dec 14, 2021
Published to the GitHub Advisory Database
Dec 14, 2021
Last updated
Feb 1, 2023
Impact
Users can provoke SQL injections if they can specify a node name or query.
Patches
Upgrade to version 1.7.4
If that is not possible, you can escape all places where
$property
is used to filtersv:name
in the classJackalope\Transport\DoctrineDBAL\Query\QOMWalker
:XPath::escape($property)
.Workarounds
Node names and xpaths can contain
"
or;
according to the JCR specification. The jackalope component that translates the query object model into doctrine dbal queries does not properly escape the names and paths, so that a accordingly crafted node name can lead to an SQL injection.If queries are never done from user input, or if you validate the user input to not contain
;
, you are not affected.References
No further references.
For more information
If you have any questions or comments about this advisory:
References