CVE-2023-45133: Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code
Vulnerability summary
CVE-2023-45133 is a critical (CVSS 9.4) Incomplete List of Disallowed Inputs vulnerability in babel. EPSS estimates a 0.53% chance of exploitation in the next 30 days, higher than 44.5% of scored vulnerabilities.
Severe, CVSS 9.4 (CVE.org); no exploitation reported by the 5 checked sources; EPSS 1% (FIRST, 03-11-2026)
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 2 · Related 3Timeline
- 12-10-2023PublishedVulnerability first disclosed.
- 13-02-2025Last modifiedVulnerability information updated.
Description
Babel is a compiler for writingJavaScript. In `@babel/traverse` prior to versions 7.23.2 and 8.0.0-alpha.4 and all versions of `babel-traverse`, using Babel to compile code that was specifically crafted by an attacker can lead to arbitrary code execution during compilation, when using plugins that rely on the `path.evaluate()`or `path.evaluateTruthy()` internal Babel methods. Known affected plugins are `@babel/plugin-transform-runtime`; `@babel/preset-env` when using its `useBuiltIns` option; and any "polyfill provider" plugin that depends on `@babel/helper-define-polyfill-provider`, such as `babel-plugin-polyfill-corejs3`, `babel-plugin-polyfill-corejs2`, `babel-plugin-polyfill-es-shims`, `babel-plugin-polyfill-regenerator`. No other plugins under the `@babel/` namespace are impacted, but third-party plugins might be. Users that only compile trusted code are not impacted. The vulnerability has been fixed in `@babel/traverse@7.23.2` and `@babel/traverse@8.0.0-alpha.4`. Those who cannot upgrade `@babel/traverse` and are using one of the affected packages mentioned above should upgrade them to their latest version to avoid triggering the vulnerable code path in affected `@babel/traverse` versions: `@babel/plugin-transform-runtime` v7.23.2, `@babel/preset-env` v7.23.2, `@babel/helper-define-polyfill-provider` v0.4.3, `babel-plugin-polyfill-corejs2` v0.4.6, `babel-plugin-polyfill-corejs3` v0.8.5, `babel-plugin-polyfill-es-shims` v0.10.0, `babel-plugin-polyfill-regenerator` v0.5.3.
CVSS metrics
6 scores · 6 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated8.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HDiffers
- OSV · DebianEcosystem advisory · calculated8.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HDiffers
- OSV · NpmEcosystem advisory · calculated9.3CriticalCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HDiffers
- OSV · ChainguardEcosystem advisory · calculated9.3CriticalCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HDiffers
- NVDNIST8.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HDiffers
EPSS trend
Probability
0.53%
Chance of exploitation in the next 30 days
Percentile
45%
Versus all other CVEs
30-day change
Increase +0.01 pp
From 0.52% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root cause- CWE-184Incomplete List of Disallowed InputsThe product implements a protection mechanism that relies on a list of inputs (or properties of inputs) that are not allowed by policy or otherwise require other action to neutralize before additional processing takes place, but the list is incomplete.
- CWE-697Incorrect ComparisonThe product compares two entities in a security-relevant context, but the comparison is incorrect.
Affected systems
Known conditions: local access, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.
Babeljs8 products
- babel< 7.23.2 | 8.0.0:alpha.0 | 8.0.0:alpha.1 | 8.0.0:alpha.2 | 8.0.0:alpha.3
- babel-helper-define-polyfill-provider< 0.4.3
- babel-plugin-polyfill-corejs2< 0.4.6
- babel-plugin-polyfill-corejs3< 0.8.5
- babel-plugin-polyfill-es-shims< 0.10.0
Debian3 products
- node-babel< 6.26.0+dfsg-3+deb10u1
- node-babel7< 7.12.12+~cs150.141.84-6+deb11u1 | < 7.20.15+ds1+~cs214.269.168-3+deb12u1 | < 7.20.15+ds1+~cs214.269.168-5
- debian_linuxEOL10.0 | 11.0 | 12.0
Chainguard2 products
- arangodb-3.11< 3.11.14.4-r6
- awx< 24.6.1-r42
Ubuntu2 products
- node-babelAll versions (No fix recorded)
- node-babel7All versions (No fix recorded)
@babel1 product
- traverse< 7.23.2 | ≥ 8.0.0-alpha.0, < 8.0.0-alpha.4
Babel1 product
- babel< 7.23.2 | ≥ 8.0.0-alpha.0, < 8.0.0-alpha.4
Npm1 product
- babel-traverseAll versions (No fix recorded)
7 vendors · 18 products
References
14 links- github.com/babel/babel/security/advisories/GHSA-67hx-6x53-jw92X Refsource CONFIRMREPORTWEBAdvisoryThird Party Advisory
- github.com/babel/babel/commit/b13376b346946e3f62fc0848c1d2a23223314c82X Refsource MISCREPORTWEBFIXPatch
Show all 14 references
- github.com/babel/babelPACKAGE