Skip to content
JupyterGHSA-4c99-qj7h-p3vg

nbconvert has an Arbitrary File Write via Path Traversal in Cell Attachment Filenames

Medium6.5CVE-2026-39377 · Published Apr 21, 2026 · updated Sep 10, 2026

# Arbitrary File Write via Path Traversal in Cell Attachment Filenames ## Summary nbconvert allows arbitrary file writes to locations outside the intended output directory when processing notebooks containing crafted cell attachment filenames. The `ExtractAttachmentsPreprocessor` passes attachment filenames directly to the filesystem without sanitization, enabling path traversal attacks. This vulnerability provides complete control over both the destination path and file extension. ## Impact This vulnerability allows writing files with arbitrary content to arbitrary filesystem locations, limited only by the permissions of the process running nbconvert. The attacker controls: - Full destination path (via `../` traversal) - Filename - File extension - File content ## Patches - upgrade to nbconvert v7.17.1 ## Workarounds disable ExtractAttachmentsPreprocessor by setting: ```python c. ExtractAttachmentsPreprocessor.enabled = False ```

GitHub advisory

Affected versions

PackageAffectedFixed in
nbconvert
PyPI
>= 6.5.0, < 7.17.17.17.1
Details and references
CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Severity from
GitHub (reviewed advisory)
Weakness
CWE-22, CWE-73
Also known as
CVE-2026-39377, PYSEC-2026-2229

More Jupyter advisories

All Jupyter

Critical advisories by email

Wednesdays: the week’s critical and high advisories in the AI and data stack, with the fixed versions. Only in weeks that have some.

Double opt-in. Unsubscribe any time.