CVE-2026-66881

Path traversal in imported file_entries name allows arbitrary file write via URL-type entry download

HIGH
8.1
CVSS Score
Published: August 5, 2026 at 07:43 PM UTC
Updated: October 24, 2026 at 04:10 PM UTC
2 products affected across 2 vendorsLivebookLivebook

Using livebook by livebook-dev?

Get instant alerts when new vulnerabilities affect livebook - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.1
Exploit prediction
EPSS 0.6%
SSVC
PoC

Description

Relative Path Traversal vulnerability in livebook-dev livebook allows an attacker-authored notebook to write a file with attacker-controlled content to an arbitrary path. A .livemd notebook can declare file_entries metadata, each entry carrying a name. Every path that creates a file entry through the user interface validates that name with Livebook.Notebook.validate_file_entry_name/2, which requires a flat filename of alphanumerics, dashes, underscores and dots, ending in an extension. The import path does not: Livebook.LiveMarkdown.Import.file_entry_metadata_to_attrs/1 in lib/livebook/live_markdown/import.ex takes the name verbatim from the notebook source. For a URL-type file entry, Livebook.Session.file_entry_cache_file/2 in lib/livebook/session.ex resolves that name beneath the session's temporary directory without checking that the result stays inside it, and Livebook.FileSystem.Utils.resolve_unix_like_path/2 collapses parent-directory segments while clamping only at the filesystem root. When the entry's content is requested and no cached copy exists, Livebook fetches the entry's URL and writes the response body to the resolved path, creating parent directories as needed. The attacker therefore controls both the destination and the contents of the written file, which may land anywhere the Livebook process can write. The same missing containment check is present in Livebook.Session.to_attachment_file_entry/2. A victim who opens an attacker-supplied notebook and causes the entry to be fetched triggers the write within their own authenticated session; the attacker needs no account on the target instance. URL-type entries are also not placed under notebook stamping quarantine on import, so no warning is shown. This issue affects livebook: from 0.11.0 before 0.18.7 and from 0.19.0 before 0.19.9.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

All versions0.11.00.11.0-cuda120.19.00.19.0-cuda12c02eb984f80a543c7a52b1d882c76f56aa5be743
Affected range stops below 0.18.7, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.18.7-cuda12, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.19.9, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.19.9-cuda12, so it looks safe — our inference, not a vendor statement
0.11.0 ≤ v < 0.18.70.19.0 ≤ v < 0.19.9
Affected range stops below 0.18.7, so it looks safe — our inference, not a vendor statement
Affected range stops below 0.19.9, so it looks safe — our inference, not a vendor statement

References (6)

RelatedVendor Advisory
Source: 6b3ad84c-e1a6-4bf7-a703-f496b71e49db
https://cna.erlef.org/cves/CVE-2026-66881.html
Vendor AdvisoryRelatedExploitPatch
Source: 6b3ad84c-e1a6-4bf7-a703-f496b71e49db
https://github.com/livebook-dev/livebook/security/advisories/GHSA-r4h8-2xpq-v48g
RelatedThird Party Advisory
Source: 6b3ad84c-e1a6-4bf7-a703-f496b71e49db
https://osv.dev/vulnerability/EEF-CVE-2026-66881

SSVC — Action Prioritization

SSVCPoCNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
NETWORK
Complexity
LOW
Privileges
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
NONE
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-23

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card