Ecosyste.ms: Advisories
An open API service providing security vulnerability metadata for many open source software ecosystems.
Security Advisories: GSA_kwCzR0hTQS1waDk4LXY3OGYtanFybc0bPg
SQL injection in jackalope/jackalope-doctrine-dbal
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 filter sv:name
in the class Jackalope\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:
- Open an issue in jackalope/jackalope-doctrine-dbal repo
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1waDk4LXY3OGYtanFybc0bPg
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: almost 3 years ago
Updated: almost 2 years ago
CVSS Score: 8.6
CVSS vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
Identifiers: GHSA-ph98-v78f-jqrm, CVE-2021-43822
References:
- https://github.com/jackalope/jackalope-doctrine-dbal/security/advisories/GHSA-ph98-v78f-jqrm
- https://nvd.nist.gov/vuln/detail/CVE-2021-43822
- https://github.com/jackalope/jackalope-doctrine-dbal/commit/9d179a36d320330ddb303ea3a7c98d3a33d231db
- https://github.com/advisories/GHSA-ph98-v78f-jqrm
Blast Radius: 23.2
Affected Packages
packagist:jackalope/jackalope-doctrine-dbal
Dependent packages: 183Dependent repositories: 496
Downloads: 2,486,794 total
Affected Version Ranges: < 1.7.4
Fixed in: 1.7.4
All affected versions: 1.0.0, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.2.8, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 1.3.4, 1.3.5, 1.3.6, 1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.7.0, 1.7.1, 1.7.2, 1.7.3
All unaffected versions: 1.7.4, 1.7.5, 1.7.6, 1.8.0, 1.8.1, 1.9.0, 1.10.0, 1.10.1, 1.11.0, 1.11.1, 1.11.2, 1.12.0, 1.13.0, 2.0.0, 2.0.1, 2.0.2