ESLint version 3.9.1 is a patch release following closely after version 3.9.0, both being AST-based pattern checkers for JavaScript. The core functionality remains the same, focusing on analyzing code for stylistic and potential errors, promoting code consistency and quality. Examining the metadata, the primary difference lies in the releaseDate. Version 3.9.1 was released on October 31, 2016, just a few days after 3.9.0, which was released on October 28, 2016. Developers should note this rapid succession of releases typically indicates a quick fix for a bug or issue discovered in the preceding version.
While the dependency lists appear identical at first glance, developers should always investigate patch releases like 3.9.1 as they often include crucial stability or security fixes. These fixes might address edge cases or vulnerabilities not apparent in the earlier version. Although the core dependencies like glob, lodash, escope, and espree remain the same, subtle updates within those dependency versions could be the reason for the new release. For developers, upgrading to 3.9.1 from 3.9.0 is highly recommended, as it likely resolves a problem and provides a more stable and secure linting experience. Consulting the ESLint blog or release notes for the specific changelog between these two versions will reveal the nature of the fix. It ensures you are using the most reliable release available.
All the vulnerabilities related to the version 3.9.1 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: