ESLint version 2.9.0 represents a minor update over its predecessor, version 2.8.0, focusing on incremental improvements and bug fixes to enhance the developer experience. Primarily, the core change lies within the espree dependency, which has been updated from version 3.1.3 to 3.1.4. This adjustment likely addresses parser-level enhancements or bug resolutions in how ESLint interprets JavaScript code, possibly leading to more accurate linting results, especially for newer JavaScript syntax.
Another notable difference is the update of the ignore dependency, progressing from version 3.0.10 to 3.1.2. This likely introduces improvements to the way ESLint handles .eslintignore files, potentially offering more flexible or accurate exclusion patterns, which is essential for managing large projects with varied linting needs. Also npm-license version has changed from 0.3.1 to 0.3.2.
While other dependencies remain consistent between the two versions, these specific updates indicate an emphasis on refining ESLint's parsing capabilities and its ability to correctly exclude files from the linting process. For developers, these updates signal enhanced reliability and precision in ESLint's static analysis, leading to better code quality and fewer false positives. Considering the minor version bump, the upgrade from 2.8.0 to 2.9.0 is recommended for all users to benefit from the latest fixes and improvements within the core linting engine.
All the vulnerabilities related to the version 2.9.0 of the package
Prototype Pollution in Ajv
An issue was discovered in ajv.validate() in Ajv (aka Another JSON Schema Validator) 6.12.2. A carefully crafted JSON schema could be provided that allows execution of other code by prototype pollution. (While untrusted schemas are recommended against, the worst case of an untrusted schema should be a denial of service, not execution of code.)
Improper Privilege Management in shelljs
shelljs is vulnerable to Improper Privilege Management
Improper Privilege Management in shelljs
Output from the synchronous version of shell.exec()
may be visible to other users on the same system. You may be affected if you execute shell.exec()
in multi-user Mac, Linux, or WSL environments, or if you execute shell.exec()
as the root user.
Other shelljs functions (including the asynchronous version of shell.exec()
) are not impacted.
Patched in shelljs 0.8.5
Recommended action is to upgrade to 0.8.5.
https://huntr.dev/bounties/50996581-c08e-4eed-a90e-c0bac082679c/
If you have any questions or comments about this advisory: