---
id: CVE-2026-39378
aliases:
  - GHSA-7jqv-fw35-gmx9
  - PYSEC-2026-2230
title: >-
  nbconvert has an Arbitrary File Read via Path Traversal in HTMLExporter Image
  Embedding
summary: >-
  nbconvert has an Arbitrary File Read via Path Traversal in HTMLExporter Image
  Embedding
severity: medium
cvss: 6.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N'
vendor: nbconvert
product: nbconvert
ecosystem: pip
affected:
  - 'nbconvert >= 6.5.0, < 7.17.1'
patched:
  - nbconvert 7.17.1
published: '2026-04-21'
updated: '2026-09-10'
sourceUpdated: '2026-09-10T03:50:43.685983757Z'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/GHSA-7jqv-fw35-gmx9'
references:
  - url: >-
      https://github.com/jupyter/nbconvert/security/advisories/GHSA-7jqv-fw35-gmx9
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-39378'
  - url: 'https://github.com/jupyter/nbconvert'
  - url: 'https://github.com/jupyter/nbconvert/releases/tag/v7.17.1'
tags:
  - osv
  - pip
epss: 0.00457
epssPercentile: 0.36913
ingestedAt: '2026-07-13T18:57:54.580Z'
---

## Overview

## Summary

When `HTMLExporter.embed_images=True`, nbconvert's markdown renderer allows arbitrary file read via path traversal in image references. A malicious notebook can exfiltrate sensitive files from the conversion host by embedding them as base64 data URIs in the output HTML.

## Patches

Upgrade to nbconvert 7.17.1

## Workarounds

Do not enable `HTMLExporter.embed_images` (it is not enabled by default).

## Affected packages

- `nbconvert >= 6.5.0, < 7.17.1`

## Remediation

Upgrade to a patched release:

- `nbconvert 7.17.1`
