NestJS developers will find the upgrade from @nestjs/common version 4.5.2 to 4.5.3 a minor but potentially impactful update. Both versions share the same core dependencies including "cli-color" (1.1.0), "class-validator" (0.7.3), and "class-transformer" (0.1.8), suggesting the changes aren't focused on major feature additions or overhauls of existing validation or transformation mechanisms. The peer dependency on "reflect-metadata" (0.1.10) also remains consistent, meaning no adjustments are needed regarding metadata reflection capabilities. The key difference lies within the updated release date. Version 4.5.3 was released on December 30, 2017, succeeding version 4.5.2, which was released on December 22, 2017. While the specific changes aren't explicitly detailed in the provided data, the 8-day gap often signifies bug fixes, performance improvements or minor adjustments addressing specific edge cases discovered in the earlier version. While upgrading isn't strictly mandatory, NestJS developers should consider that newer point releases often contain important stability and refinement benefits that while they don’t drastically alter functionality, improve the overall developer experience and application resilience. Developers should check the official changelog for a detailed breakdown of the changes included in version 4.5.3.
All the vulnerabilities related to the version 4.5.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.