Security vulnerabilities in v7.x of ember-cli-babel

Open
#517 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
javascript, nodejs

Research direction

Start by running yarn audit --groups dependencies on the 7.x branch and inspect the dependency declarations and lockfile that select json5, @babel/traverse, and semver. Update the dependency chain to patched versions, verify the project tests, and rerun the audit until these 10 reported vulnerabilities are resolved.

Written by the indexing model from the issue text.

Description

yarn audit --groups dependencies results in the following on the 7.x branch:

yarn audit v1.22.22
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ Prototype Pollution in JSON5 via Parse Method                │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ json5                                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=1.0.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > babel-plugin-module-resolver >             │
│               │ find-babel-config > json5                                    │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096543                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ Prototype Pollution in JSON5 via Parse Method                │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ json5                                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=2.2.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > @babel/core > json5                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096544                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ Prototype Pollution in JSON5 via Parse Method                │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ json5                                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=2.2.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > broccoli-babel-transpiler > @babel/core >  │
│               │ json5                                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096544                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ Prototype Pollution in JSON5 via Parse Method                │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ json5                                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=2.2.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > broccoli-babel-transpiler > workerpool >   │
│               │ @babel/core > json5                                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096544                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ critical      │ Babel vulnerable to arbitrary code execution when compiling  │
│               │ specifically crafted malicious code                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ @babel/traverse                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.23.2                                                     │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > @babel/core > @babel/traverse              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096886                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ critical      │ Babel vulnerable to arbitrary code execution when compiling  │
│               │ specifically crafted malicious code                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ @babel/traverse                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.23.2                                                     │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > @babel/core >                              │
│               │ @babel/helper-module-transforms > @babel/traverse            │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096886                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ critical      │ Babel vulnerable to arbitrary code execution when compiling  │
│               │ specifically crafted malicious code                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ @babel/traverse                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.23.2                                                     │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > broccoli-babel-transpiler > @babel/core >  │
│               │ @babel/helper-module-transforms > @babel/traverse            │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096886                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ critical      │ Babel vulnerable to arbitrary code execution when compiling  │
│               │ specifically crafted malicious code                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ @babel/traverse                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.23.2                                                     │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > broccoli-babel-transpiler > workerpool >   │
│               │ @babel/core > @babel/helper-module-transforms >              │
│               │ @babel/traverse                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1096886                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ semver vulnerable to Regular Expression Denial of Service    │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ semver                                                       │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.5.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > @babel/preset-env > core-js-compat >       │
│               │ semver                                                       │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1098562                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ high          │ semver vulnerable to Regular Expression Denial of Service    │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ semver                                                       │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=7.5.2                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ ember-cli-babel                                              │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ ember-cli-babel > @babel/plugin-transform-runtime >          │
│               │ babel-plugin-polyfill-corejs3 > core-js-compat > semver      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://www.npmjs.com/advisories/1098562                     │
└───────────────┴──────────────────────────────────────────────────────────────┘
10 vulnerabilities found - Packages audited: 375
Severity: 6 High | 4 Critical
Done in 0.80s.
Dominant language
JavaScript
Stars
152
Forks
115
Avg merge
23h 22m
Merged PRs (30d)
4

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from emberjs/ember-cli-babel

All issues in emberjs/ember-cli-babel

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.