Skip to main content

Colanode EUVDEUVD-2026-101566

| CVE-2026-110766 MEDIUM
Path Traversal (CWE-22)
2026-10-14 disclosure@vulncheck.com GHSA-wq2v-xq4c-mvch
5.3
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to Colanode workspace account
  2. Exploit
    Craft percent-encoded ../ in avatarId
  3. Execution
    Send GET /client/v1/avatars/:avatarId
  4. Impact
    Read cross-workspace .jpeg files

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a valid authenticated account on the Colanode server (PR:L) and a multi-workspace/multi-tenant deployment for cross-workspace data to exist. The attacker sends a percent-encoded ../ traversal sequence in the avatarId parameter of GET /client/v1/avatars/:avatarId to escape the avatars storage directory. Exploitation is LIMITED to reading files with a .jpeg extension, so it cannot retrieve arbitrary configuration or credential files; no user interaction is needed, but authentication is mandatory and the attacker benefits from knowing or guessing relative paths to target workspaces' image assets.

Impact

This is a moderate, constrained information-disclosure issue rather than a top-tier priority. The input CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N) is internally consistent with the description: network-reachable, low-complexity, but requiring authentication (PR:L) and yielding only low confidentiality impact with no integrity or availability impact. No EPSS score was provided, the CVE is not listed in CISA KEV, and no weaponized public exploit is identified in the structured input - so there is no public exploit identified at time of analysis, though a third-party technical write-up (hackmd) and a VulnCheck advisory with source-code line references exist, which materially lowers the bar for an attacker to reproduce it. The real-world ceiling is low: an authenticated user can read only .jpeg files belonging to other workspaces, so the practical impact is leakage of avatar/image assets across tenant boundaries, not full file-system compromise. Signals are consistent (no conflicts between CVSS, description, and exploitation status); the main missing data are EPSS and any vendor-confirmed fixed version.

Exploit ScenarioDerived

An authenticated low-privilege user of a multi-tenant Colanode server crafts a percent-encoded ../ traversal sequence in the avatarId path parameter and issues GET /client/v1/avatars/:avatarId, escaping the avatars directory to read .jpeg files stored for other workspaces. No public weaponized exploit is identified, but a detailed technical write-up and advisory with the vulnerable source lines (avatar-download.ts, fs.ts) are published, making reproduction straightforward. Because CVSS is AC:L with network attack vector, exploitation is trivial once a valid account exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

Authenticated path traversal in the Colanode server (versions through 0.4.7) allows any user holding a valid account to read .jpeg image files outside their own workspace by injecting a percent-encoded ../ sequence into the avatarId parameter of GET /client/v1/avatars/:avatarId. The impact is deliberately narrow: only files with a .jpeg extension can be retrieved, so configuration files, keys, or credentials are not exposed, and meaningful cross-tenant exposure requires a multi-workspace deployment plus knowledge or guessing of the target's relative path. There is no CISA KEV listing and no confirmed public exploit code, although the disclosure is accompanied by a public technical writeup (hackmd.io/@hieuPenguinnn/colanode-avatar-download-path-traversal) describing the traversal; CVSS 4.0 scores it 5.3 with VC:L, and the independent assessment scores it CVSS:3.1 5.3 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N), framing it as a moderate, constrained information-disclosure issue rather than a top-tier priority.

RemediationAI

No vendor-released patch version is confirmed in the available data; the referenced links point to the affected source files and a third-party advisory rather than to a tagged fixed release, so treat patch status as unverified and track the upstream repository (https://github.com/colanode/colanode) and the VulnCheck advisory (https://www.vulncheck.com/advisories/colanode-server-through-0.4.7-path-traversal-via-avatar-download-route) for a confirmed fix, then upgrade as soon as one is published. Until then, the primary compensating control is to reject or normalize traversal input at the edge: block requests to /client/v1/avatars/ whose avatarId contains percent-encoded or literal dot-dot sequences (for example %2e%2e, %2F, ..%2f) at the reverse proxy - this is low risk but must be written to survive double-encoding or the filter is trivially bypassed. Deploy each workspace with an OS-level isolated storage directory and file ownership so that the Colanode process running one workspace's requests cannot read another workspace's files; the trade-off is extra operational complexity and per-tenant provisioning. Where avatars are not required, disable the avatar download route entirely (the trade-off is loss of avatar rendering in the client). If avatar serving is needed, the robust fix is in code: canonicalize the resolved path with realpath and verify it is contained within the configured avatars root before reading, and never rely on the .jpeg extension check as a containment boundary. Because the flaw requires a valid account (PR:L), limiting who can register or be provisioned on the server reduces the attacker pool but does not eliminate risk from legitimate low-privilege users; no integrity or availability impact is expected, so recovery actions are limited to reviewing server storage logs for out-of-directory avatar reads where such logging exists.

Affected VersionsENISA

colanode 0 ≤0.4.7

Affected Packages

euvd colanode no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / Path Traversal) in the Colanode server's avatar download handler. Colanode is a TypeScript/Node.js collaborative workspace server that stores uploaded avatar images on the local filesystem through an abstraction implemented in apps/server/src/lib/storage/fs.ts; the download route in apps/server/src/api/client/routes/avatars/avatar-download.ts takes the avatarId path segment and resolves it against the avatars storage directory. Because the percent-encoded traversal sequence is decoded and concatenated without canonicalizing the final path (or without verifying that the resolved path remains inside the avatars root), the concatenation escapes the intended directory and the filesystem backend returns whatever file the resulting path points to. The route's extension restriction constrains the primitive to .jpeg files, which is why the CVSS vectors (4.0: AV:N/AC:L/AT:N/PR:L/UI:N/VC:L; independent 3.1: AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) record low confidentiality impact only, no integrity or availability impact, no scope change, and a low-privilege prerequisite (PR:L) matching the authenticated-account requirement. The vulnerability class is well understood: any user-controlled identifier used to build a filesystem path needs normalization plus a realpath containment check, and relying on extension filtering alone is not a containment control.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network-reachable low-complexity traversal needing an authenticated account (PR:L), unchanged scope, and only limited .jpeg read access (C:L), with no integrity or availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Colanode server through 0.4.7 contains a path traversal vulnerability that allows authenticated users to read arbitrary .jpeg files by supplying an encoded traversal sequence in avatarId. Attackers can send percent-encoded ../ sequences to GET /client/v1/avatars/:avatarId to escape the avatars directory and read .jpeg files belonging to other workspaces.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Rare
obscure self-hosted open-source collaboration app, tiny deployment footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

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