NestJS developers will find the update from @nestjs/common version 4.3.2 to 4.3.3 a subtle yet potentially important change. Both versions share the same core dependencies: cli-color for terminal styling, class-validator to define validation rules using decorators, and class-transformer to enable object transformation. They also rely on reflect-metadata as a peer dependency, fundamental for Nest's dependency injection and metadata reflection capabilities. The MIT license and authorship remain consistent, ensuring continued open-source availability and support from Kamil Mysliwiec.
The primary difference lies in the release timings. Version 4.3.3 was published just minutes after 4.3.2, suggesting that the update likely addresses a minor bug fix, a small performance improvement, or a crucial documentation clarification. While the immediate list of dependencies and peer dependencies remains identical, developers should consider upgrading to version 4.3.3 to benefit from any potential stability enhancements or quick fixes introduced since 4.3.2. For developers seeking the most up-to-date and stable experience with NestJS, checking the official NestJS changelog or release notes for the specific changes between these versions is highly recommended. This will provide granular detail to the reason of the bump from 4.3.2 to 4.3.3 and make a more accurate decision.
All the vulnerabilities related to the version 4.3.3 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.