Skip to main content

Rollup CVE-2026-27606

HIGH
Path Traversal (CWE-22)
2026-02-25 security-advisories@github.com GHSA-mw96-cpmx-2vgc
8.8
CVSS 4.0 · Vendor: github
Share

Severity by source

Vendor (github) PRIMARY
8.8 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
7.1 HIGH

Exploitation requires attacker-controlled build inputs/plugins (local/supply-chain, so AV:L and PR:L); arbitrary file overwrite yields high integrity/availability impact but no direct confidentiality loss.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Red Hat
9.1 HIGH
qualitative

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

11
Analysis Updated
Jun 30, 2026 - 05:23 vuln.today
v5 (cvss_changed)
Analysis Updated
Jun 30, 2026 - 05:22 vuln.today
v4 (cvss_changed)
Analysis Updated
Jun 30, 2026 - 05:22 vuln.today
v3 (cvss_changed)
Analysis Updated
Jun 30, 2026 - 05:21 vuln.today
v2 (cvss_changed)
Re-analysis Queued
Jun 30, 2026 - 03:23 vuln.today
cvss_changed
Severity Changed
Jun 30, 2026 - 03:23 NVD
CRITICAL HIGH
CVSS changed
Jun 30, 2026 - 03:23 NVD
9.8 (CRITICAL) 8.8 (HIGH)
Analysis Generated
Mar 12, 2026 - 21:55 vuln.today
PoC Detected
Feb 25, 2026 - 16:05 vuln.today
Public exploit code
Patch released
Feb 25, 2026 - 16:05 nvd
Patch available
CVE Published
Feb 25, 2026 - 03:16 nvd
CRITICAL 9.8

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 1 npm packages depend on rollup (1 direct, 0 indirect)

Ecosystem-wide dependent count for version 3.0.0.

DescriptionCVE.org

Rollup is a module bundler for JavaScript. Versions prior to 2.80.0, 3.30.0, and 4.59.0 of the Rollup module bundler (specifically v4.x and present in current source) is vulnerable to an Arbitrary File Write via Path Traversal. Insecure file name sanitization in the core engine allows an attacker to control output filenames (e.g., via CLI named inputs, manual chunk aliases, or malicious plugins) and use traversal sequences (../) to overwrite files anywhere on the host filesystem that the build process has permissions for. This can lead to persistent Remote Code Execution (RCE) by overwriting critical system or user configuration files. Versions 2.80.0, 3.30.0, and 4.59.0 contain a patch for the issue.

AnalysisAI

Arbitrary file write via path traversal in the Rollup JavaScript module bundler lets an attacker who can influence build inputs write or overwrite files anywhere the build process can reach, escalating to persistent remote code execution by clobbering system or user configuration files. Affected are 4.x releases before 4.59.0 (and the 2.x/3.x lines before 2.80.0 and 3.30.0), where insecure output filename sanitization permits ../ traversal through CLI named inputs, manual chunk aliases, or malicious plugins. Publicly available exploit code exists (GitHub Security Advisory GHSA-mw96-cpmx-2vgc), though no public exploit is identified as active in-the-wild use; EPSS is modest at 0.62% (70th percentile).

Technical ContextAI

Rollup is one of the most widely used JavaScript/TypeScript module bundlers, embedded in the toolchains of Vite, enterprise build pipelines, and countless npm packages, and distributed as the rollupjs:rollup Node.js package per the CPE data. The flaw is a classic CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal'): Rollup derives output file paths from caller-supplied identifiers - command-line named inputs, manualChunks aliases, and plugin-provided emitFile names - but fails to neutralize directory-traversal sequences before resolving the destination. Because the bundler then writes emitted assets/chunks to those resolved paths with the build process's privileges, an attacker-controlled name containing ../ escapes the configured output directory and lands the write at an arbitrary location on the host.

RemediationAI

Vendor-released patch: upgrade to Rollup 4.59.0 (4.x), 3.30.0 (3.x), or 2.80.0 (2.x) per the release notes at https://github.com/rollup/rollup/releases/tag/v4.59.0, /v3.30.0, and /v2.80.0; the fix commits are c60770d, c8cf1f9, and d6dee5e referenced from advisory GHSA-mw96-cpmx-2vgc. Distribution users should apply the corresponding errata: Red Hat RHSA-2026:5132/5649/5665/6174/6802/10175 and SUSE SU-2026:1013/1148. Where an immediate upgrade is not possible, reduce exposure by not bundling untrusted source trees or third-party Rollup plugins, pinning and vetting dependencies that invoke Rollup, and running builds as an unprivileged user inside an ephemeral/sandboxed container with the output directory on a separate mount so a traversal write cannot reach system or user config files; the trade-offs are added CI complexity and the need to continuously audit plugin supply chains. Avoid passing externally-influenced values as CLI named inputs or manualChunks aliases until patched.

Vendor StatusVendor

SUSE

Severity: Critical
Product Status
Container suse/manager/5.0/x86_64/server:latest Affected
SUSE Linux Enterprise Module for Package Hub 15 SP7 Fixed
SUSE Manager Client Tools 15 Fixed
SUSE Manager Client Tools for SLE Micro 5 Fixed
SUSE Manager Proxy LTS 4.3 Fixed

Share

CVE-2026-27606 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy