ESLint version 3.16.0 and 3.15.0 are both AST-based pattern checkers widely used by JavaScript developers to enforce code style and prevent errors. Both releases have identical core dependencies that include tools for parsing, traversing, and manipulating JavaScript code, such as espree, escope, and estraverse. This ensures consistent code analysis capabilities across both versions. The fundamental functionalities like pattern checking using Abstract Syntax Trees and core dependencies related to AST based checking remain the same, assuring users of similar code analysis experience.
However, a subtle but noteworthy difference lies in the devDependencies. Version 3.16.0 sees an upgrade of mock-fs to version ^4.0.0, where version 3.15.0 included version ^3.12.1. This indicates potential improvements or bug fixes in the mocking functionality used during development and testing. Upgrading mock-fs usually contributes to more reliable unit testing and can greatly improve the development workflow. The release date also indicates the newer version 3.16.0 was released on 2017-02-20, almost 3 weeks after 3.15.0, released on 2017-02-03. Developers benefit from the 3.16.0 release because it integrates a newer version of mock-fs library, improving the long term development process due to the improved testing. The core dependencies and fundamental linting capabilities remain consistent, focusing on incremental improvement and greater reliabilty.
All the vulnerabilities related to the version 3.16.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: