Skip to content

chore(deps): update dependency lxml to v6.1.0 [security]#4461

Merged
nijel merged 1 commit into
mainfrom
renovate/pypi-lxml-vulnerability
Apr 23, 2026
Merged

chore(deps): update dependency lxml to v6.1.0 [security]#4461
nijel merged 1 commit into
mainfrom
renovate/pypi-lxml-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Apr 22, 2026

This PR contains the following updates:

Package Change Age Confidence
lxml (source, changelog) ==6.0.4==6.1.0 age confidence

lxml: Default configuration of iterparse() and ETCompatXMLParser() allows XXE to local files

CVE-2026-41066 / GHSA-vfmq-68hx-4jfw

More information

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.

Severity

  • CVSS Score: 7.5 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

lxml/lxml (lxml)

v6.1.0

Compare Source

==================

This release fixes a possible external entity injection (XXE) vulnerability in
iterparse() and the ETCompatXMLParser.

Features added

  • GH#486: The HTML ARIA accessibility attributes were added to the set of safe attributes
    in lxml.html.defs. This allows lxml_html_clean to pass them through.
    Patch by oomsveta.

  • The default chunk size for reading from file-likes in iterparse() is now configurable
    with a new chunk_size argument.

Bugs fixed

  • LP#2146291: The resolve_entities option was still set to True for
    iterparse and ETCompatXMLParser, allowing for external entity injection (XXE)
    when using these parsers without setting this option explicitly.
    The default was now changed to 'internal' only (as for the normal XML and HTML parsers
    since lxml 5.0).
    Issue found by Sihao Qiu as CVE-2026-41066.

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • ""
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Third-party library dependencies. label Apr 22, 2026
@renovate renovate Bot enabled auto-merge (squash) April 22, 2026 00:01
@renovate renovate Bot force-pushed the renovate/pypi-lxml-vulnerability branch from 5d02fa1 to bbef8ee Compare April 22, 2026 02:48
@nijel nijel disabled auto-merge April 23, 2026 08:35
@renovate renovate Bot force-pushed the renovate/pypi-lxml-vulnerability branch from bbef8ee to 1b76a06 Compare April 23, 2026 08:35
@nijel nijel merged commit 26cf5d8 into main Apr 23, 2026
7 of 8 checks passed
@nijel nijel deleted the renovate/pypi-lxml-vulnerability branch April 23, 2026 08:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Third-party library dependencies.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant