NestJS developers considering an upgrade from version 4.5.14 to 4.5.15 of the @nestjs/common package will find a relatively incremental update, though one that brings some potentially useful refinements. Examining the metadata, the core dependencies - cli-color, class-validator, and class-transformer - remain at the same versions, suggesting no breaking changes introduced by dependency updates. Critically, the peer dependency on reflect-metadata also persists at version 0.1.10, ensuring compatibility for existing projects relying on this crucial reflection library.
The notable differences lie in the package distribution details. Version 4.5.15 includes 271 files, compared to 261 in 4.5.14, pointing to the addition of 10 files. Furthermore, the unpacked size has increased from 133881 bytes to 142801 bytes. This increase in file count and size indicates that the new version brings code enhancements, potentially including bug fixes, new features, improved documentation, or refined internal structures. While the absence of detailed change logs makes pinpointing the exact nature of these additions difficult, developers can anticipate potentially greater stability and performance which is always a good sign for a core package like @nestjs/common.
All the vulnerabilities related to the version 4.5.15 of the package
nest allows a remote attacker to execute arbitrary code via the Content-Type header
File Upload vulnerability in nestjs nest prior to v.11.0.16 allows a remote attacker to execute arbitrary code via the Content-Type header.
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.
Inefficient Regular Expression Complexity in validator.js
validator.js prior to 13.7.0 is vulnerable to Inefficient Regular Expression Complexity
Prototype pollution in class-transformer
class-transformer through 0.2.3 is vulnerable to Prototype Pollution. The 'classToPlainFromExist' function could be tricked into adding or modifying properties of 'Object.prototype' using a 'proto' payload.