All the vulnerabilities related to the version 0.0.7 of the package
Command Injection Vulnerability in find-exec
Older versions of the package are vulnerable to Command Injection as an attacker controlled parameter. As a result, attackers may run malicious commands.
For example:
const find = require("find-exec");
find("mplayer; touch hacked")
This creates a file named "hacked" on the filesystem.
You should never allow users to control commands to find, since this package attempts to run every command provided.
Thanks to @miguelafmonteiro for reporting.
Tmp files readable by other users in sync-exec
Affected versions of sync-exec
use files located in /tmp/
to buffer command results before returning values. As /tmp/
is almost always set with world readable permissions, this may allow low privilege users on the system to read the results of commands run via sync-exec
under a higher privilege user.
There is currently no direct patch for sync-exec
, as the child_process.execSync
function provided in Node.js v0.12.0 and later provides the same functionality natively.
The best mitigation currently is to update to Node.js v0.12.0 or later, and migrate all uses of sync-exec
to child_process.execSync()
.