NestJS developers will find the jump from version 4.4.1 to 4.4.2 of the @nestjs/common package a subtle but potentially important update. Both versions share identical dependencies on cli-color, class-validator, and class-transformer, ensuring existing code utilizing these libraries within NestJS continues to function seamlessly. Likewise, the peer dependency on reflect-metadata remains consistent, a crucial aspect for NestJS's dependency injection mechanism.
The licensing, author, and overall description of the package remain unchanged, indicating no fundamental shifts in the project's direction or ownership. The key difference lies in the releaseDate. Version 4.4.2 was published on November 25, 2017, roughly a day after version 4.4.1, suggesting a quick follow-up. This rapid release cycle typically signifies a bug fix or a minor enhancement deemed important enough to warrant immediate attention. While specific details of the changes would necessitate examining the commit logs or release notes (not provided in the data), developers upgrading should be aware that the update likely addresses an immediate issue identified in the prior version. Therefore, upgrading to 4.4.2 is recommended to ensure stability and benefit from any quick fixes implemented. Always consult official NestJS channels for comprehensive release notes.
All the vulnerabilities related to the version 4.4.2 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.