EUVD-2026-19537

| CVE-2026-35454 HIGH
2026-04-04 https://github.com/coder/code-marketplace GHSA-8x9r-hvwg-c55h
8.7
CVSS 4.0
Share

CVSS Vector

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/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
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

4
Analysis Generated
Apr 04, 2026 - 06:30 vuln.today
EUVD ID Assigned
Apr 04, 2026 - 06:30 euvd
EUVD-2026-19537
Patch Released
Apr 04, 2026 - 06:30 nvd
Patch available
CVE Published
Apr 04, 2026 - 06:26 nvd
HIGH 8.7

Description

# Zip Slip Path Traversal in coder/code-marketplace ## Summary A Zip Slip (CWE-22) vulnerability in `coder/code-marketplace` ≤ v2.4.1 allowed a malicious VSIX file to write arbitrary files outside the extension directory. `ExtractZip` passed raw zip entry names to a callback that wrote files via `filepath.Join` with no boundary check; `filepath.Join` resolved `..` components but did not prevent the result from escaping the base path. ## Root Cause `ExtractZip` passed the raw, attacker-controlled `zf.Name` to a caller-supplied callback: ```go return false, fn(zf.Name, zr) // zf.Name not sanitized ``` `AddExtension` constructed the output path with `filepath.Join` and no boundary check: ```go path := filepath.Join(dir, name) // zip loop path := filepath.Join(dir, file.RelativePath) // extra files loop ``` `filepath.Clean` resolved `..` lexically but did not confine the result to `dir`: ``` filepath.Join("/srv/ext/pub/1.0", "../../../../etc/cron.d/evil") → "/etc/cron.d/evil" ``` ## Attack Scenario An authenticated user (any upload-capable role) would submit a VSIX containing path-traversal entries. On extraction, files would land at attacker-chosen paths writable by the marketplace process, enabling persistence (cron/init injection), SSH key injection, `ld.so.preload` hijacking, or binary overwrite depending on process privileges. ## Fix Addressed in https://github.com/coder/code-marketplace/releases/tag/v2.4.2 ## Recognition Coder would like to thank [Kandlaguduru Vamsi](https://www.linkedin.com/in/vamsi-k-5419632a9/) for responsibly disclosing this issue in accordance with https://coder.com/security/policy

Analysis

Path traversal in Coder code-marketplace ≤ v2.4.1 allows authenticated users to write arbitrary files outside the extension directory during VSIX extraction. The ExtractZip function passes unsanitized zip entry names containing '..' sequences to filepath.Join, which resolves parent directory references without confining output to the intended base path. …

Sign in for full analysis, threat intelligence, and remediation guidance.

Remediation

Within 24 hours: Identify all Coder installations running code-marketplace v2.4.1 or earlier and restrict access to the marketplace feature pending upgrade. Within 7 days: Upgrade to Coder code-marketplace v2.4.2 or later across all affected instances. …

Sign in for detailed remediation steps.

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: +0.1
CVSS: +44
POC: 0

Share

EUVD-2026-19537 vulnerability details – vuln.today

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