Ecosyste.ms: Advisories
An open API service providing security vulnerability metadata for many open source software ecosystems.
Security Advisories: GSA_kwCzR0hTQS1majU4LWgyZnItM3BwMs0WeA
SQL Injection and Cross-site Scripting in class-validator
In TypeStack class-validator, validate()
input validation can be bypassed because certain internal attributes can be overwritten via a conflicting name. Even though there is an optional forbidUnknownValues
parameter that can be used to reduce the risk of this bypass, this option is not documented and thus most developers configure input validation in the vulnerable default manner. With this vulnerability, attackers can launch SQL Injection or XSS attacks by injecting arbitrary malicious input.
The default settings for forbidUnknownValues
has been changed to true
in 0.14.0.
NOTE: a software maintainer agrees with the "is not documented" finding but suggests that much of the responsibility for the risk lies in a different product.
Permalink: https://github.com/advisories/GHSA-fj58-h2fr-3pp2JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1majU4LWgyZnItM3BwMs0WeA
Source: GitHub Advisory Database
Origin: Unspecified
Severity: Critical
Classification: General
Published: over 2 years ago
Updated: over 1 year ago
CVSS Score: 9.8
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Identifiers: GHSA-fj58-h2fr-3pp2, CVE-2019-18413
References:
- https://nvd.nist.gov/vuln/detail/CVE-2019-18413
- https://github.com/typestack/class-validator/issues/438
- https://github.com/typestack/class-validator#passing-options
- https://github.com/typestack/class-validator/issues/438#issuecomment-964728471
- https://github.com/typestack/class-validator/issues/1422#issuecomment-1344635415
- https://github.com/typestack/class-validator/pull/1798
- https://github.com/advisories/GHSA-fj58-h2fr-3pp2
Blast Radius: 46.6
Affected Packages
npm:class-validator
Dependent packages: 3,854Dependent repositories: 56,346
Downloads: 11,482,313 last month
Affected Version Ranges: < 0.14.0
Fixed in: 0.14.0
All affected versions: 0.3.0, 0.3.1, 0.3.2, 0.4.0, 0.4.1, 0.5.0, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.8, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.9.0, 0.9.1, 0.10.0, 0.10.1, 0.10.2, 0.11.0, 0.11.1, 0.12.0, 0.12.1, 0.12.2, 0.13.0, 0.13.1, 0.13.2
All unaffected versions: 0.14.0, 0.14.1