backbone.marionette@2.4.7

Vulnerabilities

1 via 3 paths

Dependencies

5

Source

npm

Find, fix and prevent vulnerabilities in your code.

Severity
  • 1
Status
  • 1
  • 0
  • 0

low severity

Arbitrary Code Injection

  • Vulnerable module: underscore
  • Introduced through: underscore@1.8.3, backbone.babysitter@0.1.12 and others

Detailed paths

  • Introduced through: backbone.marionette@2.4.7 underscore@1.8.3
    Remediation: Upgrade to backbone.marionette@3.0.0.
  • Introduced through: backbone.marionette@2.4.7 backbone.babysitter@0.1.12 underscore@1.8.3
  • Introduced through: backbone.marionette@2.4.7 backbone.wreqr@1.4.0 underscore@1.8.3

Overview

underscore is a JavaScript's functional programming helper library.

Affected versions of this package are vulnerable to Arbitrary Code Injection via the template function, particularly when the variable option is taken from _.templateSettings as it is not sanitized.

PoC

const _ = require('underscore');
_.templateSettings.variable = "a = this.process.mainModule.require('child_process').execSync('touch HELLO')";
const t = _.template("")();

Remediation

Upgrade underscore to version 1.13.0-2, 1.12.1 or higher.

References