ShellJS is a popular Node.js library providing portable Unix shell commands designed to streamline cross-platform scripting. Version 0.2.5 builds directly upon version 0.2.4, both offering developers a way to execute common shell commands within their Node.js applications, abstracting away OS-specific differences. Examining the provided data, the core functionality and dependencies remain consistent between the two versions. Both versions offer zero runtime dependencies, simplifying integration into existing projects and minimizing potential conflicts. Key differences are subtle but exist, primarily related to minor changes in release timing. Version 0.2.5 was released on September 11, 2013, at 22:51:00.150Z, while version 0.2.4 was released earlier on the same day at 17:59:16.131Z. JSHint, a code quality tool, is used in both versions during development.
For developers using ShellJS, these versions provide a consistent interface for interacting with the system shell. The lack of dependencies allows for easier integration into projects. The difference in release time suggests bug fixes or minor improvements were addressed in version 0.2.5, making it the preferable choice. ShellJS empowers developers to write cross-platform compatible scripts for automating tasks, managing files, and executing system commands directly from their Node.js code, all while abstracting away OS specific implementation. Because of the release date difference, it's highly recommended to use the latest of the two, so version 0.2.5.
All the vulnerabilities related to the version 0.2.5 of the package
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: