{"id":"CVE-2026-27606","title":"Rollup is a module bundler for JavaScript","summary":"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 …","severity":"critical","cvss":9.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwe":["CWE-22"],"vendor":"rollupjs","product":"rollup","affected":["rollup < 2.80.0","rollup >= 3.0.0, < 3.30.0","rollup >= 4.0.0, < 4.59.0"],"patched":["rollup 4.59.0"],"published":"2026-02-25","updated":"2026-09-10","sourceUpdated":"2026-09-10T13:18:01.097","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-27606","references":[{"url":"https://github.com/rollup/rollup/commit/c60770d7aaf750e512c1b2774989ea4596e660b2","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/commit/c8cf1f9c48c516285758c1e11f08a54f304fd44e","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/commit/d6dee5e99bb82aac0bee1df4ab9efbde455452c3","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/releases/tag/v2.80.0","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/releases/tag/v3.30.0","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/releases/tag/v4.59.0","label":"security-advisories@github.com"},{"url":"https://github.com/rollup/rollup/security/advisories/GHSA-mw96-cpmx-2vgc","label":"security-advisories@github.com"},{"url":"https://access.redhat.com/errata/RHSA-2026:10175","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:13508","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:13512","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:13545","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:5132","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:5649","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:5665","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:6174","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:6802","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/errata/RHSA-2026:8483","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://access.redhat.com/security/cve/CVE-2026-27606","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2442530","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-27606.json","label":"0b0ca135-0b70-47e7-9f44-1890c2a1c46c"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-27606"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-27606"}],"tags":["nvd","cve.org","exploit-available","csaf","vex","red-hat"],"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"total","timestamp":"2026-02-25T20:09:59.552224Z"},"scores":{"nvd":9.8,"cna":8.8,"vendor":9.1},"epss":0.01455,"epssPercentile":0.72305,"ingestedAt":"2026-07-01T15:50:58.578Z","slug":"CVE-2026-27606","body":"## Overview\n\nRollup 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.\n\n## Affected\n\n- `rollup < 2.80.0`\n- `rollup >= 3.0.0, < 3.30.0`\n- `rollup >= 4.0.0, < 4.59.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `rollup 4.59.0`\n\n## Vendor advisories\n\n- **RHSA-2026:13512** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.5 for RHEL 8, Red Hat Ansible Automation Platform 2.5 for RHEL 9 · released 2026-05-04 · [advisory](https://access.redhat.com/errata/RHSA-2026:13512)\n- **RHSA-2026:13508** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.6 for RHEL 9 · released 2026-05-04 · [advisory](https://access.redhat.com/errata/RHSA-2026:13508)\n- **RHSA-2026:13545** · Red Hat · fixed in: Red Hat Ansible Automation Platform 2.6 · released 2026-05-04 · [advisory](https://access.redhat.com/errata/RHSA-2026:13545)\n- **RHSA-2026:6174** · Red Hat · fixed in: Red Hat Developer Hub 1.8 · released 2026-03-30 · [advisory](https://access.redhat.com/errata/RHSA-2026:6174)\n- **RHSA-2026:6802** · Red Hat · fixed in: Red Hat Developer Hub 1.9 · released 2026-04-07 · [advisory](https://access.redhat.com/errata/RHSA-2026:6802)\n- **RHSA-2026:10175** · Red Hat · fixed in: Red Hat OpenShift Dev Spaces 3.27 · released 2026-04-23 · [advisory](https://access.redhat.com/errata/RHSA-2026:10175)\n- **RHSA-2026:8483** · Red Hat · fixed in: Red Hat OpenShift Service Mesh 2.6 · released 2026-04-16 · [advisory](https://access.redhat.com/errata/RHSA-2026:8483)\n- **RHSA-2026:5132** · Red Hat · fixed in: Red Hat OpenShift Service Mesh 2.6 · released 2026-03-19 · [advisory](https://access.redhat.com/errata/RHSA-2026:5132)\n- **RHSA-2026:5665** · Red Hat · fixed in: Red Hat Quay 3.10 · released 2026-03-24 · [advisory](https://access.redhat.com/errata/RHSA-2026:5665)\n- **RHSA-2026:5649** · Red Hat · fixed in: Red Hat Trusted Artifact Signer 1.3 · released 2026-03-24 · [advisory](https://access.redhat.com/errata/RHSA-2026:5649)\n- **Red Hat VEX** · Important · affected: OpenShift Pipelines, Red Hat Ansible Automation Platform 2, Red Hat Build of Podman Desktop - Tech Preview, Red Hat Fuse 7, Red Hat OpenShift distributed tracing 3, Red Hat Single Sign-On 7, … · no fix planned: OpenShift Pipelines, Red Hat Build of Podman Desktop - Tech Preview, Red Hat Fuse 7, Red Hat Single Sign-On 7, … · updated 2026-09-09 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-27606.json)","depth":"abyssal","depthScore":66,"depthScoreParts":{"impact":53.9,"likelihood":0.3,"exploitation":12,"ransomware":0},"changes":[{"seq":201483,"id":"CVE-2026-27606","ts":1789399510270,"field":"exploit_available","old":"false","new":"true"},{"seq":200217,"id":"CVE-2026-27606","ts":1789397078183,"field":"exploit_available","old":"true","new":"false"},{"seq":198141,"id":"CVE-2026-27606","ts":1789391727603,"field":"exploit_available","old":"false","new":"true"},{"seq":195934,"id":"CVE-2026-27606","ts":1789383392415,"field":"exploit_available","old":"true","new":"false"},{"seq":194863,"id":"CVE-2026-27606","ts":1789380298687,"field":"exploit_available","old":"false","new":"true"},{"seq":193650,"id":"CVE-2026-27606","ts":1789378261182,"field":"exploit_available","old":"true","new":"false"},{"seq":192437,"id":"CVE-2026-27606","ts":1789376228111,"field":"exploit_available","old":"false","new":"true"},{"seq":191224,"id":"CVE-2026-27606","ts":1789373118749,"field":"exploit_available","old":"true","new":"false"},{"seq":190009,"id":"CVE-2026-27606","ts":1789369119591,"field":"exploit_available","old":"false","new":"true"},{"seq":188796,"id":"CVE-2026-27606","ts":1789368035119,"field":"exploit_available","old":"true","new":"false"},{"seq":187579,"id":"CVE-2026-27606","ts":1789364989243,"field":"exploit_available","old":"false","new":"true"},{"seq":186366,"id":"CVE-2026-27606","ts":1789362995085,"field":"exploit_available","old":"true","new":"false"},{"seq":185152,"id":"CVE-2026-27606","ts":1789360961377,"field":"exploit_available","old":"false","new":"true"},{"seq":183939,"id":"CVE-2026-27606","ts":1789357936232,"field":"exploit_available","old":"true","new":"false"},{"seq":182191,"id":"CVE-2026-27606","ts":1789354088666,"field":"exploit_available","old":"false","new":"true"},{"seq":180984,"id":"CVE-2026-27606","ts":1789352936056,"field":"exploit_available","old":"true","new":"false"},{"seq":179777,"id":"CVE-2026-27606","ts":1789349989032,"field":"exploit_available","old":"false","new":"true"},{"seq":178570,"id":"CVE-2026-27606","ts":1789347803282,"field":"exploit_available","old":"true","new":"false"},{"seq":177363,"id":"CVE-2026-27606","ts":1789346170784,"field":"exploit_available","old":"false","new":"true"},{"seq":176156,"id":"CVE-2026-27606","ts":1789342743635,"field":"exploit_available","old":"true","new":"false"},{"seq":175940,"id":"CVE-2026-27606","ts":1789342350601,"field":"exploit_available","old":"false","new":"true"},{"seq":175480,"id":"CVE-2026-27606","ts":1789338381800,"field":"exploit_available","old":"true","new":"false"},{"seq":174275,"id":"CVE-2026-27606","ts":1789334591428,"field":"exploit_available","old":"false","new":"true"},{"seq":173070,"id":"CVE-2026-27606","ts":1789333196789,"field":"exploit_available","old":"true","new":"false"},{"seq":171884,"id":"CVE-2026-27606","ts":1789330876218,"field":"exploit_available","old":"false","new":"true"},{"seq":170698,"id":"CVE-2026-27606","ts":1789328391222,"field":"exploit_available","old":"true","new":"false"},{"seq":169493,"id":"CVE-2026-27606","ts":1789326898897,"field":"exploit_available","old":"false","new":"true"},{"seq":168288,"id":"CVE-2026-27606","ts":1789323435308,"field":"exploit_available","old":"true","new":"false"},{"seq":167083,"id":"CVE-2026-27606","ts":1789319366124,"field":"exploit_available","old":"false","new":"true"},{"seq":165878,"id":"CVE-2026-27606","ts":1789318273744,"field":"exploit_available","old":"true","new":"false"},{"seq":164673,"id":"CVE-2026-27606","ts":1789315534647,"field":"exploit_available","old":"false","new":"true"},{"seq":163468,"id":"CVE-2026-27606","ts":1789313256052,"field":"exploit_available","old":"true","new":"false"},{"seq":162263,"id":"CVE-2026-27606","ts":1789311710353,"field":"exploit_available","old":"false","new":"true"},{"seq":161058,"id":"CVE-2026-27606","ts":1789308256795,"field":"exploit_available","old":"true","new":"false"},{"seq":160563,"id":"CVE-2026-27606","ts":1789304189656,"field":"exploit_available","old":"false","new":"true"},{"seq":158401,"id":"CVE-2026-27606","ts":1789299277041,"field":"exploit_available","old":"true","new":"false"},{"seq":157365,"id":"CVE-2026-27606","ts":1789296458225,"field":"exploit_available","old":"false","new":"true"},{"seq":156160,"id":"CVE-2026-27606","ts":1789294378466,"field":"exploit_available","old":"true","new":"false"},{"seq":154955,"id":"CVE-2026-27606","ts":1789292632760,"field":"exploit_available","old":"false","new":"true"},{"seq":153750,"id":"CVE-2026-27606","ts":1789289340586,"field":"exploit_available","old":"true","new":"false"},{"seq":152962,"id":"CVE-2026-27606","ts":1789285252025,"field":"exploit_available","old":"false","new":"true"},{"seq":152206,"id":"CVE-2026-27606","ts":1789280957944,"field":"exploit_available","old":"true","new":"false"},{"seq":151167,"id":"CVE-2026-27606","ts":1789277453410,"field":"exploit_available","old":"false","new":"true"},{"seq":147896,"id":"CVE-2026-27606","ts":1789270874104,"field":"exploit_available","old":"true","new":"false"},{"seq":145936,"id":"CVE-2026-27606","ts":1789269173769,"field":"exploit_available","old":"false","new":"true"},{"seq":144839,"id":"CVE-2026-27606","ts":1789266104741,"field":"exploit_available","old":"true","new":"false"},{"seq":143743,"id":"CVE-2026-27606","ts":1789262439422,"field":"exploit_available","old":"false","new":"true"},{"seq":142579,"id":"CVE-2026-27606","ts":1789261185403,"field":"exploit_available","old":"true","new":"false"},{"seq":141415,"id":"CVE-2026-27606","ts":1789258609572,"field":"exploit_available","old":"false","new":"true"},{"seq":140217,"id":"CVE-2026-27606","ts":1789256396410,"field":"exploit_available","old":"true","new":"false"}]}