kytos-ng / ui

Kytos Admin UI
MIT License
0 stars 3 forks source link

ui dependencies npm vulnerabilities #56

Open viniarck opened 4 months ago

viniarck commented 4 months ago

The scope is partly related to issue #30, where we were planning to upgrade the rest of ui dependencies, however, let's treat this as a smaller scope to see if potentially we can also mitigate these 49 (28 critical) vulnerabilities. So, the scope of this issue is to assess if some of the dependencies below can get upgraded with upstream fixes, but let's only try to deal with the ones where refactoring is minimal or seamless. The rest we'll address on issue #30

To reproduce:

49 vulnerabilities (7 moderate, 14 high, 28 critical)

❯ npm audit
# npm audit report

@babel/traverse  <7.23.2
Severity: critical
Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code - https://github.com/advisories/GHSA-67hx-6x53-jw92
fix available via `npm audit fix`
node_modules/@babel/traverse

async  2.0.0 - 2.6.3
Severity: high
Prototype Pollution in async - https://github.com/advisories/GHSA-fwr7-v2mv-hh25
fix available via `npm audit fix`
node_modules/async

babel-traverse  *
Severity: critical
Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code - https://github.com/advisories/GHSA-67hx-6x53-jw92
fix available via `npm audit fix --force`
Will install babel-core@4.7.16, which is a breaking change
node_modules/babel-traverse
  babel-core  5.8.20 - 7.0.0-beta.3
  Depends on vulnerable versions of babel-helpers
  Depends on vulnerable versions of babel-register
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  Depends on vulnerable versions of json5
  node_modules/babel-core
    babel-register  *
    Depends on vulnerable versions of babel-core
    node_modules/babel-register
  babel-helper-call-delegate  *
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-helper-call-delegate
  babel-helper-explode-assignable-expression  *
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-helper-explode-assignable-expression
    babel-helper-builder-binary-assignment-operator-visitor  *
    Depends on vulnerable versions of babel-helper-explode-assignable-expression
    node_modules/babel-helper-builder-binary-assignment-operator-visitor
      babel-plugin-transform-exponentiation-operator  *
      Depends on vulnerable versions of babel-helper-builder-binary-assignment-operator-visitor
      node_modules/babel-plugin-transform-exponentiation-operator
  babel-helper-function-name  *
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-helper-function-name
    babel-helper-define-map  *
    Depends on vulnerable versions of babel-helper-function-name
    node_modules/babel-helper-define-map
    babel-helper-remap-async-to-generator  *
    Depends on vulnerable versions of babel-helper-function-name
    Depends on vulnerable versions of babel-template
    Depends on vulnerable versions of babel-traverse
    node_modules/babel-helper-remap-async-to-generator
      babel-plugin-transform-async-to-generator  *
      Depends on vulnerable versions of babel-helper-remap-async-to-generator
      node_modules/babel-plugin-transform-async-to-generator
    babel-plugin-transform-es2015-function-name  *
    Depends on vulnerable versions of babel-helper-function-name
    node_modules/babel-plugin-transform-es2015-function-name
  babel-helper-replace-supers  *
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-helper-replace-supers
    babel-plugin-transform-es2015-object-super  *
    Depends on vulnerable versions of babel-helper-replace-supers
    node_modules/babel-plugin-transform-es2015-object-super
  babel-plugin-transform-es2015-block-scoping  *
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-plugin-transform-es2015-block-scoping
    babel-preset-env  >=0.0.1
    Depends on vulnerable versions of babel-plugin-transform-async-to-generator
    Depends on vulnerable versions of babel-plugin-transform-es2015-block-scoping
    Depends on vulnerable versions of babel-plugin-transform-es2015-classes
    Depends on vulnerable versions of babel-plugin-transform-es2015-computed-properties
    Depends on vulnerable versions of babel-plugin-transform-es2015-function-name
    Depends on vulnerable versions of babel-plugin-transform-es2015-modules-amd
    Depends on vulnerable versions of babel-plugin-transform-es2015-modules-commonjs
    Depends on vulnerable versions of babel-plugin-transform-es2015-modules-systemjs
    Depends on vulnerable versions of babel-plugin-transform-es2015-modules-umd
    Depends on vulnerable versions of babel-plugin-transform-es2015-object-super
    Depends on vulnerable versions of babel-plugin-transform-es2015-parameters
    Depends on vulnerable versions of babel-plugin-transform-exponentiation-operator
    node_modules/babel-preset-env
  babel-plugin-transform-es2015-classes  *
  Depends on vulnerable versions of babel-helper-define-map
  Depends on vulnerable versions of babel-helper-function-name
  Depends on vulnerable versions of babel-helper-replace-supers
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-plugin-transform-es2015-classes
  babel-plugin-transform-es2015-parameters  *
  Depends on vulnerable versions of babel-helper-call-delegate
  Depends on vulnerable versions of babel-template
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-plugin-transform-es2015-parameters
  babel-template  *
  Depends on vulnerable versions of babel-traverse
  node_modules/babel-template
    babel-helpers  *
    Depends on vulnerable versions of babel-template
    node_modules/babel-helpers
    babel-plugin-transform-es2015-computed-properties  *
    Depends on vulnerable versions of babel-template
    node_modules/babel-plugin-transform-es2015-computed-properties
    babel-plugin-transform-es2015-modules-amd  *
    Depends on vulnerable versions of babel-plugin-transform-es2015-modules-commonjs
    Depends on vulnerable versions of babel-template
    node_modules/babel-plugin-transform-es2015-modules-amd
      babel-plugin-transform-es2015-modules-umd  *
      Depends on vulnerable versions of babel-plugin-transform-es2015-modules-amd
      Depends on vulnerable versions of babel-template
      node_modules/babel-plugin-transform-es2015-modules-umd
    babel-plugin-transform-es2015-modules-commonjs  <=7.0.0-beta.0
    Depends on vulnerable versions of babel-template
    node_modules/babel-plugin-transform-es2015-modules-commonjs
    babel-plugin-transform-es2015-modules-systemjs  *
    Depends on vulnerable versions of babel-template
    node_modules/babel-plugin-transform-es2015-modules-systemjs

d3-color  <3.1.0
Severity: high
d3-color vulnerable to ReDoS - https://github.com/advisories/GHSA-36jr-mh4h-2g58
fix available via `npm audit fix --force`
Will install d3@7.9.0, which is a breaking change
node_modules/d3-color
  d3  4.0.0-alpha.1 - 6.7.0
  Depends on vulnerable versions of d3-brush
  Depends on vulnerable versions of d3-color
  Depends on vulnerable versions of d3-interpolate
  Depends on vulnerable versions of d3-scale
  Depends on vulnerable versions of d3-transition
  Depends on vulnerable versions of d3-zoom
  node_modules/d3
  d3-interpolate  0.1.3 - 2.0.1
  Depends on vulnerable versions of d3-color
  node_modules/d3-interpolate
    d3-brush  0.1.0 - 2.1.0
    Depends on vulnerable versions of d3-interpolate
    Depends on vulnerable versions of d3-transition
    node_modules/d3-brush
    d3-scale  0.1.3 - 3.3.0
    Depends on vulnerable versions of d3-color
    Depends on vulnerable versions of d3-interpolate
    node_modules/d3-scale
    d3-transition  0.0.7 - 2.0.0
    Depends on vulnerable versions of d3-color
    Depends on vulnerable versions of d3-interpolate
    node_modules/d3-transition
    d3-zoom  0.0.2 - 2.0.0
    Depends on vulnerable versions of d3-interpolate
    Depends on vulnerable versions of d3-transition
    node_modules/d3-zoom

express  <4.19.2
Severity: moderate
Express.js Open Redirect in malformed URLs - https://github.com/advisories/GHSA-rv95-896h-c2vc
fix available via `npm audit fix`
node_modules/express

follow-redirects  <=1.15.5
Severity: moderate
Follow Redirects improperly handles URLs in the url.parse() function - https://github.com/advisories/GHSA-jchw-25xp-jwwc
follow-redirects' Proxy-Authorization header kept across hosts - https://github.com/advisories/GHSA-cxjh-pqwp-8mfp
fix available via `npm audit fix`
node_modules/follow-redirects

ip  <1.1.9
Severity: moderate
NPM IP package incorrectly identifies some private IP addresses as public - https://github.com/advisories/GHSA-78xj-cgh5-2h22
fix available via `npm audit fix`
node_modules/ip

json5  <1.0.2 || >=2.0.0 <2.2.2
Severity: high
Prototype Pollution in JSON5 via Parse Method - https://github.com/advisories/GHSA-9c47-m6qq-7p4h
Prototype Pollution in JSON5 via Parse Method - https://github.com/advisories/GHSA-9c47-m6qq-7p4h
fix available via `npm audit fix --force`
Will install babel-core@4.7.16, which is a breaking change
node_modules/babel-core/node_modules/json5
node_modules/json5
node_modules/loader-utils/node_modules/json5

loader-utils  <=1.4.1 || 2.0.0 - 2.0.3
Severity: critical
Prototype pollution in webpack loader-utils - https://github.com/advisories/GHSA-76p3-8jx3-jpfq
Prototype pollution in webpack loader-utils - https://github.com/advisories/GHSA-76p3-8jx3-jpfq
loader-utils is vulnerable to Regular Expression Denial of Service (ReDoS) via url variable - https://github.com/advisories/GHSA-3rfm-jhwj-7488
loader-utils is vulnerable to Regular Expression Denial of Service (ReDoS) via url variable - https://github.com/advisories/GHSA-3rfm-jhwj-7488
loader-utils is vulnerable to Regular Expression Denial of Service (ReDoS) - https://github.com/advisories/GHSA-hhq3-ff78-jv3g
loader-utils is vulnerable to Regular Expression Denial of Service (ReDoS) - https://github.com/advisories/GHSA-hhq3-ff78-jv3g
fix available via `npm audit fix`
node_modules/file-loader/node_modules/loader-utils
node_modules/loader-utils

minimist  1.0.0 - 1.2.5
Severity: critical
Prototype Pollution in minimist - https://github.com/advisories/GHSA-xvch-5gv4-984h
fix available via `npm audit fix`
node_modules/minimist

moment  <=2.29.3
Severity: high
Moment.js vulnerable to Inefficient Regular Expression Complexity - https://github.com/advisories/GHSA-wc69-rhjr-hc9g
Path Traversal: 'dir/../../filename' in moment.locale - https://github.com/advisories/GHSA-8hfj-j24r-96c4
fix available via `npm audit fix`
node_modules/moment

node-forge  <=1.2.1
Severity: high
Improper Verification of Cryptographic Signature in `node-forge` - https://github.com/advisories/GHSA-2r2c-g63r-vccr
Improper Verification of Cryptographic Signature in node-forge - https://github.com/advisories/GHSA-cfm4-qjh2-4765
Improper Verification of Cryptographic Signature in node-forge - https://github.com/advisories/GHSA-x4jg-mjrx-434g
fix available via `npm audit fix`
node_modules/node-forge

postcss  <8.4.31
Severity: moderate
PostCSS line return parsing error - https://github.com/advisories/GHSA-7fh5-64p2-3v2j
fix available via `npm audit fix --force`
Will install vue-loader@17.4.2, which is a breaking change
node_modules/@vue/component-compiler-utils/node_modules/postcss
node_modules/postcss
  @vue/component-compiler-utils  *
  Depends on vulnerable versions of postcss
  node_modules/@vue/component-compiler-utils
    vue-loader  15.0.0-beta.1 - 15.11.1
    Depends on vulnerable versions of @vue/component-compiler-utils
    node_modules/vue-loader

semver  <=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1
Severity: moderate
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
fix available via `npm audit fix`
node_modules/babel-preset-env/node_modules/semver
node_modules/css-loader/node_modules/semver
node_modules/semver

terser  5.0.0 - 5.14.1
Severity: high
Terser insecure use of regular expressions leads to ReDoS - https://github.com/advisories/GHSA-4wf5-vphf-c2xc
fix available via `npm audit fix`
node_modules/terser

webpack  5.0.0 - 5.75.0
Severity: critical
Cross-realm object access in Webpack 5 - https://github.com/advisories/GHSA-hc6q-2mpp-qw7j
fix available via `npm audit fix`
node_modules/webpack

webpack-dev-middleware  <=5.3.3
Severity: high
Path traversal in webpack-dev-middleware - https://github.com/advisories/GHSA-wr3j-pwj9-hqq6
fix available via `npm audit fix`
node_modules/webpack-dev-middleware

49 vulnerabilities (7 moderate, 14 high, 28 critical)