CVE-2026-44728: @babel/plugin transform modules systemjs @babel/plugin-transform-modules-systemjs Generates Arbitrary Code When Vulnerability
HIGHCVE-2026-44728 is a HIGH (CVSS 8.2) @babel/plugin-transform-modules-systemjs generates arbitrary code when vulnerability (CWE-94: Improper Control of Generation of Code ('Code Injection')) affecting @babel/plugin transform modules systemjs libraries in the npm ecosystem. The issue involves @babel/plugin-transform-modules-systemjs generates arbitrary code when compiling malicious input. Remediation is available by upgrading affected packages to version 7.29.4, 8.0.0-alpha.13.
CVE-2026-44728 at a Glance
Security Impact
CVSS: 8.2
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H).
How to Fix CVE-2026-44728
To remediate this vulnerability, upgrade all affected @babel/plugin transform modules systemjs dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
npm install @babel/plugin-transform-modules-systemjs@7.29.4
npm install @babel/plugin-transform-modules-systemjs@8.0.0-alpha.13
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
npm ls @babel/plugin-transform-modules-systemjs
How to Check if You Are Affected
To determine whether your Node.js application is affected by CVE-2026-44728, inspect your project dependencies using npm:
npm ls @babel/plugin-transform-modules-systemjs
Analyze the terminal output to locate any version of @babel/plugin transform modules systemjs in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 7.29.4), your application is affected.
Note: The npm ls @babel/plugin-transform-modules-systemjs command inspects dependencies declared in your package.json and lockfile; it does not perform automated runtime dynamic scanning.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-94: Improper Control of Generation of Code ('Code Injection'), where the product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment. In @babel/plugin transform modules systemjs, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2026-44728 Affected @babel/plugin transform modules systemjs Versions
2 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
@babel/plugin-transform-modules-systemjs
|
npm |
≥ 7.12.0
< 7.29.4
|
7.29.4
|
|
@babel/plugin-transform-modules-systemjs
|
npm |
≥ 8.0.0-alpha.0
< 8.0.0-alpha.13
|
8.0.0-alpha.13
|
References
Frequently Asked Questions
What is CVE-2026-44728?
Which @babel/plugin transform modules systemjs versions are affected?
What version fixes CVE-2026-44728?
Is @babel/plugin-transform-modules-systemjs affected?
What is the CVSS score of CVE-2026-44728?
What CWE is associated with CVE-2026-44728?
How can I check npm dependencies for CVE-2026-44728?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-fv7c-fp4j-7gwp",
"modified" : "2026-06-08T23:28:08Z",
"published" : "2026-05-08T20:34:07Z",
"aliases" : [ "CVE-2026-44728" ],
"summary" : "@babel/plugin-transform-modules-systemjs generates arbitrary code when compiling malicious input",
"details" : "### Impact\n\nUsing Babel to compile code that was specifically crafted by an attacker can cause Babel to generate output code that executes arbitrary code.\n\nKnown affected plugins are:\n- `@babel/plugin-transform-modules-systemjs`\n- `@babel/preset-env` when using the [`modules: \"systemjs\"` option](https://babel.dev/docs/babel-preset-env#modules), as it delegates to `@babel/plugin-transform-modules-systemjs`\n\nNo other plugins under the `@babel` namespace are impacted.\n\n**Users that only compile trusted code are not impacted.**\n\n### Patches\n\nThe vulnerability has been fixed in `@babel/plugin-transform-modules-systemjs@7.29.4`.\n\nBabel also released `@babel/preset-env@7.29.5`, updating its `@babel/plugin-transform-modules-systemjs` dependency, to simplify forcing the update if you are using `@babel/preset-env` directly.\n\n### Workarounds\n\n- Pin `@babel/parser` to v7.11.5. The downgrade will completely disable string module name parsing, but it would also disable other new language features and the build pipeline may fail as a result. Only do so if you are working on a legacy codebase and can not upgrade `@babel/plugin-transform-modules-systemjs` to v7.29.4.\n- Do not use the `modules: \"systemjs\"` option, migrate the codebase to native ES Modules or any other module formats.\n\n### Credits\nBabel thanks Daniel Cervera for reporting the vulnerability.",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "npm",
"name" : "@babel/plugin-transform-modules-systemjs"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "7.12.0"
}, {
"fixed" : "7.29.4"
} ]
} ],
"database_specific" : {
"last_known_affected_version_range" : "<= 7.29.3"
}
}, {
"package" : {
"ecosystem" : "npm",
"name" : "@babel/plugin-transform-modules-systemjs"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "8.0.0-alpha.0"
}, {
"fixed" : "8.0.0-alpha.13"
} ]
} ],
"database_specific" : {
"last_known_affected_version_range" : "<= 8.0.0-alpha.12"
}
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/babel/babel/security/advisories/GHSA-fv7c-fp4j-7gwp"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-44728"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/babel/babel"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-843", "CWE-94" ],
"severity" : "HIGH",
"github_reviewed" : true,
"github_reviewed_at" : "2026-05-08T20:34:07Z",
"nvd_published_at" : "2026-05-26T18:16:50Z"
}
}