---
schema_version: '1.0'
id: security-20260711-a46103
url: https://osv.dev/vulnerability/GHSA-vfmq-68hx-4jfw
url_hash: a461035781187985ef8fa8979a876d5462017fb5996d0beba24630f3507c243f
canonical_url: https://osv.dev/vulnerability/GHSA-vfmq-68hx-4jfw
source: osv:ghsa
category: security/library
category_raw: cve/library
region: null
tags:
- cve
- CVE-2026-41066
- GHSA-vfmq-68hx-4jfw
- severity:CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- lxml
- PyPI
lang: en
published_at: '2026-04-21T20:38:44Z'
fetched_at: '2026-07-11T06:37:18Z'
updated_at: '2026-07-11T06:39:11Z'
status: published
content_hash: 16421fa243fa906551c06746fbd623b91bb46a3e8cf5f6d7aeacf8368e719248
license_note: full
summary: 'lxml: Default configuration of iterparse() and ETCompatXMLParser() allows
  XXE to local files'
summary_source: rss
summary_en: 'lxml: Default configuration of iterparse() and ETCompatXMLParser() allows
  XXE to local files'
entities:
- name: Default Merkel
  type: person
- name: AND CaaaLL
  type: person
key_facts: []
related: []
related_auto:
- name: Shibu3 project
  type: organization
  weight: 1.0
- name: 豊田ルナ
  type: person
  weight: 1.0
- name: 東条澪
  type: person
  weight: 1.0
title: 'CVE-2026-41066: lxml: Default configuration of iterparse() and ETCompatXMLParser()
  allows XXE to local files'
---

# CVE-2026-41066: lxml: Default configuration of iterparse() and ETCompatXMLParser() allows XXE to local files

## TL;DR
lxml: Default configuration of iterparse() and ETCompatXMLParser() allows XXE to local files

## Key Points
- cve / CVE-2026-41066 / GHSA-vfmq-68hx-4jfw / severity:CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N / lxml / PyPI

## Details
**Severity:** CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
**Advisory:** GHSA-vfmq-68hx-4jfw (CVE-2026-41066)

**Affected (your watchlist):**
- `PyPI:lxml` 6.0.2 → fixed in 6.1.0 [docker/docker-strands]

**Details:**
### Impact
Using either of the two parsers in the default configuration (with `resolve_entities=True`) allows untrusted XML input to read local files.

### Patches
lxml 6.1.0 changes the default to `resolve_entities='internal'`, thus disallowing local file access by default.

### Workarounds
Setting the `resolve_entities` option explicitly to `resolve_entities='internal'` or `resolve_entities=False` disables the local file access.

### Resources
Original report: https://bugs.launchpad.net/lxml/+bug/2146291

The default option was changed to `resolve_entities='internal'` for the normal XML and HTML parsers in lxml 5.0. The default was not changed for `iterparse()` and `ETCompatXMLParser()` at the time. lxml 6.1 makes the safe option the default for all parsers.

**References:**
- https://github.com/lxml/lxml/security/advisories/GHSA-vfmq-68hx-4jfw
- https://nvd.nist.gov/vuln/detail/CVE-2026-41066
- https://bugs.launchpad.net/lxml/+bug/2146291
- https://github.com/lxml/lxml
- https://github.com/lxml/lxml/releases/tag/lxml-6.1.0
- https://github.com/pypa/advisory-database/tree/main/vulns/lxml/PYSEC-2026-87.yaml

_Data: OSV.dev (upstream: ghsa) — https://osv.dev/vulnerability/GHSA-vfmq-68hx-4jfw_

## Source
元記事: [CVE-2026-41066: lxml: Default configuration of iterparse() and ETCompatXMLParser() allows XXE to local files](https://osv.dev/vulnerability/GHSA-vfmq-68hx-4jfw) — published 2026-04-21T20:38:44Z
