NestJS developers considering upgrading from version 4.4.0 to 4.4.1 of the @nestjs/common package will find that the core dependencies remain consistent between both releases. Both versions rely upon cli-color (1.1.0), class-validator (0.7.3), and class-transformer (0.1.8), ensuring a stable foundation for building robust applications. The peer dependency on reflect-metadata (0.1.10) also remains unchanged, a critical element for Nest's dependency injection and metadata reflection capabilities.
The key change is the release date. Version 4.4.1 was published on November 24, 2017, following the release of version 4.4.0 on November 23, 2017. While the details of the specific fixes or improvements included in this minor version increment are not provided, the quick succession of releases suggests that version 4.4.1 likely addresses a critical bug or includes a small enhancement identified shortly after the release of 4.4.0. Developers would benefit from reviewing the NestJS GitHub repository or changelog documentation for a complete list of changes in 4.4.1. An upgrade to @nestjs/common version 4.4.1 is likely recommended to ensure they are using the most stable and reliable version of the @nestjs/common package within the Nest ecosystem and enjoy the latest enhancements. This ensures compatibility and possibly better performance within their NestJS applications.
All the vulnerabilities related to the version 4.4.1 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.