chore(deps): update dependency typeorm to v0.3.26 [security]#322
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
chore(deps): update dependency typeorm to v0.3.26 [security]#322renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
dc896ce to
3c8936c
Compare
3c8936c to
3a095a7
Compare
3a095a7 to
fc0b706
Compare
fc0b706 to
f973255
Compare
f973255 to
0ced259
Compare
0ced259 to
b7e2420
Compare
b7e2420 to
0c099fa
Compare
0c099fa to
76a47cc
Compare
76a47cc to
03ebe5e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.3.20→0.3.26TypeORM vulnerable to SQL injection via crafted request to repository.save or repository.update
CVE-2025-60542 / GHSA-q2pj-6v73-8rgj
More information
Details
Summary
SQL Injection vulnerability in TypeORM before 0.3.26 via crafted request to repository.save or repository.update due to the sqlstring call using stringifyObjects default to false.
Details
Vulnerable Code:
Intended Payload (non-malicious):
username=myusername&city=Riga&name=JavadOR
{username:\"myusername\",phone:12345,name:\"Javad\"}SQL query produced:
Malicious Payload:
username=myusername&city[name]=Riga&city[role]=adminOR
{username:\"myusername\",city:{name:\"Javad\",role:\"admin\"}}SQL query produced with Injected Column:
Above query is valid as
city=name=Javadis a boolean expression resulting incity= 1 (false). “role” column is injected and updated.Underlying issue was due to TypeORM using mysql2 without specifying a value for the stringifyObjects option. In both mysql and mysql2 this option defaults to false. This option is then passed into SQLString library as false. This results in sqlstring parsing objects in a strange way using objectToValues.
Severity
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:L/SI:H/SA:L/E:PReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
typeorm/typeorm (typeorm)
v0.3.26Compare Source
Notes:
stringifyObjects: true, in order to avoid a potential security vulnerabilityin the mysql/mysql2 client libraries. You can revert to the old behavior by setting
connectionOptions.extra.stringifyObjects = false.@sap/hana-clientlibrary. The deprecatedhdb-poolis no longer necessary and can be removed. See https://typeorm.io/docs/drivers/sap/#data-source-options for the new pool options.
Bug Fixes
stringifyObjectsimplicitly (#11574) (d57fe3b)useIndexwhen cloning a QueryExpressionMap (or a QueryBuilder) (#10679) (66ee307), closes #10678 #10678Features
Performance Improvements
v0.3.25Compare Source
Bug Fixes
Features
v0.3.24Compare Source
Bug Fixes
Features
Performance Improvements
v0.3.23Compare Source
This release includes a technically breaking change (from this PR) in the behaviour of the
deleteandupdatemethods of the EntityManager and Repository APIs, when an empty object is supplied as the criteria:Empty criteria(s) are not allowed for the delete/update method.Why?
This behaviour was not documented and is considered dangerous as it can allow a badly-formed object (e.g. with an undefined id) to inadvertently delete or update the whole table.
When the intention actually was to delete or update all rows, such queries can be rewritten using the QueryBuilder API:
An alternative method for deleting all rows is to use:
Bug Fixes
aggregatemethod's generic type to its returned cursor (#10754) (56f1898)Features
Performance Improvements
v0.3.22Compare Source
Bug Fixes
Features
Reverts
v0.3.21Compare Source
Bug Fixes
reflect-metadatatopeerDependenciesand set version to"^0.1.14 || ^0.2.0"(#10779) (e7649d2)Performance Improvements
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.