Vulnerability Database · PyPI · Package report

lxml: vulnerability history, versions and safety

lxml is a package in the PyPI ecosystem. Vulert records 14 vulnerabilities for it across 120 releases, from May 2014 to Apr 2026. Each vulnerability names the versions it affects, the fixed version to move to, and a workaround where no fix has been published.

i
14 vulnerabilities recorded H1 M6 U7
i
0 with no fix published

Every vulnerability has a patched version to move to.

i
2 in the last 12 months

Most recent disclosure 24 Apr 2026.

See the disclosure history →
i
0 malicious-package vulnerabilities

No published version shipped hostile code.

Vulert verdict on lxml 6.1.3 i

Updated on 23 Oct 2026

Action needed: 6.1.3 has 1 known vulnerability, but every one of them has a fix. Upgrade to the version listed below and you are clear.

Package health score 81/100
  • Security Some issues to review
  • Maintenance Sustainable
  • Popularity Key ecosystem project
  • Community Moderate

What to do: Upgrade to the version that resolves each vulnerability below. Fix it, then keep watch: this version is affected today, and the next one may be too — Vulert alerts you when a new vulnerability lands. Monitor it with Vulert →

  • Current release 6.1.3 — affected i
  • Vulnerabilities on record 14 over 11 years · 2 in the last year i
  • Latest disclosure 24 Apr 2026 i
  • Highest CVSS 8.2 i
  • With no published fix 0 i
  • Depended on by 28,383 packages i
  • Stars 3,067 i
  • OpenSSF scorecard 5/10 i
  • Last release 1 month ago i
  • Licence BSD-3-Clause i

Version list, release dates, licence and dependants published by PyPI, refreshed 22 Oct 2026. Licence information is not legal advice.

Concerned about your application's security?

Vulert continues monitoring your dependencies and alerts you when new vulnerabilities are disclosed. No installation and no source-code access required.

01 Versions

Which versions are affected

Every version Vulert tracks for lxml, newest first, with the vulnerabilities recorded against each one. A version showing none has no vulnerability in the Vulert database — open it for the full picture on that release.

i
Version Released Vulert vulnerabilities Licence Fix published Details
6.1.3 02 Sep 2026 U1 BSD-3-Clause Yes Details →
7.0.0b1 22 Aug 2026 U1 BSD-3-Clause Yes Details →
6.1.2 19 Aug 2026 U1 BSD-3-Clause Yes Details →
7.0.0a3 17 Jun 2026 U1 BSD-3-Clause Yes Details →
7.0.0a2 09 Jun 2026 U1 BSD-3-Clause Yes Details →
7.0.0a1 29 May 2026 U1 BSD-3-Clause Yes Details →
6.1.1 18 May 2026 U1 BSD-3-Clause Yes Details →
6.1.0 18 Apr 2026 U1 BSD-3-Clause Yes Details →
6.0.4 12 Apr 2026 H1 U1 BSD-3-Clause Yes Details →
6.0.3 09 Apr 2026 H1 U1 BSD-3-Clause Yes Details →
6.0.2 22 Sep 2025 H1 U1 BSD-3-Clause Yes Details →
6.0.1 22 Aug 2025 H1 U1 BSD-3-Clause Yes Details →
6.0.0 26 Jun 2025 H1 U1 BSD-3-Clause Yes Details →
5.4.0 23 Apr 2025 H1 U1 BSD-3-Clause Yes Details →
5.3.2 05 Apr 2025 H1 U1 BSD-3-Clause Yes Details →
5.3.1 10 Feb 2025 H1 U1 BSD-3-Clause Yes Details →
5.3.0 10 Aug 2024 H1 U1 BSD-3-Clause Yes Details →
5.2.2 13 May 2024 H1 U1 BSD-3-Clause Yes Details →
5.2.1 02 Apr 2024 H1 U1 BSD-3-Clause Yes Details →
5.2.0 31 Mar 2024 H1 U1 BSD-3-Clause Yes Details →
5.1.1 29 Mar 2024 H1 U1 BSD-3-Clause Yes Details →
5.0.2 28 Mar 2024 H1 U1 BSD-3-Clause Yes Details →
5.1.0 08 Jan 2024 H1 U1 BSD-3-Clause Yes Details →
5.0.1 05 Jan 2024 H1 U1 BSD-3-Clause Yes Details →
5.0.0 29 Dec 2023 H1 U1 BSD-3-Clause Yes Details →
4.9.4 19 Dec 2023 H1 U1 BSD-3-Clause Yes Details →
4.9.3 05 Jul 2023 H1 U1 BSD-3-Clause Yes Details →
4.9.2 13 Dec 2022 H1 U1 BSD-3-Clause Yes Details →
4.9.1 01 Jul 2022 H1 U1 non-standard Yes Details →
4.9.0 31 May 2022 H1 M1 U2 non-standard Yes Details →
4.8.0 17 Feb 2022 H1 M1 U2 non-standard Yes Details →
4.7.1 13 Dec 2021 H1 M1 U2 non-standard Yes Details →
4.6.5 12 Dec 2021 H1 M1 U2 non-standard Yes Details →
4.6.4 02 Nov 2021 H1 M2 U3 non-standard Yes Details →
4.6.3 12 Aug 2021 H1 M2 U3 non-standard Yes Details →
4.6.2 27 Nov 2020 H1 M3 U4 non-standard Yes Details →
4.6.1 18 Oct 2020 H1 M4 U5 non-standard Yes Details →
4.6.0 17 Oct 2020 H1 M4 U5 non-standard Yes Details →
4.5.2 17 Oct 2020 H1 M4 U5 non-standard Yes Details →
4.5.1 19 May 2020 H1 M4 U5 non-standard Yes Details →
4.5.0 29 Jan 2020 H1 M4 U5 non-standard Yes Details →
4.4.3 29 Jan 2020 H1 M4 U5 non-standard Yes Details →
4.4.2 25 Nov 2019 H1 M4 U5 non-standard Yes Details →
4.4.1 27 Oct 2019 H1 M4 U5 non-standard Yes Details →
4.4.0 27 Jul 2019 H1 M4 U5 non-standard Yes Details →
4.3.5 27 Jul 2019 H1 M4 U5 non-standard Yes Details →
4.3.4 10 Jun 2019 H1 M4 U5 non-standard Yes Details →
4.3.3 26 Mar 2019 H1 M4 U5 non-standard Yes Details →
4.3.2 28 Feb 2019 H1 M4 U5 non-standard Yes Details →
4.3.0 04 Jan 2019 H1 M4 U5 non-standard Yes Details →
4.2.6 03 Jan 2019 H1 M4 U5 non-standard Yes Details →
4.2.5 10 Sep 2018 H1 M4 U5 non-standard Yes Details →
4.2.4 03 Aug 2018 H1 M5 U6 non-standard Yes Details →
4.2.3 27 Jun 2018 H1 M5 U6 non-standard Yes Details →
4.2.2 22 Jun 2018 H1 M5 U6 non-standard Yes Details →
4.2.1 21 Mar 2018 H1 M5 U6 non-standard Yes Details →
4.2.0 13 Mar 2018 H1 M5 U6 non-standard Yes Details →
4.1.1 04 Nov 2017 H1 M5 U6 non-standard Yes Details →
4.1.0 13 Oct 2017 H1 M5 U6 non-standard Yes Details →
4.0.0 17 Sep 2017 H1 M5 U6 non-standard Yes Details →
3.8.0 03 Jun 2017 H1 M5 U6 non-standard Yes Details →
3.7.3 18 Feb 2017 H1 M5 U6 non-standard Yes Details →
3.7.2 08 Jan 2017 H1 M5 U6 non-standard Yes Details →
3.7.1 23 Dec 2016 H1 M5 U6 non-standard Yes Details →
3.7.0 10 Dec 2016 H1 M5 U6 non-standard Yes Details →
3.6.4 20 Aug 2016 H1 M5 U6 non-standard Yes Details →
3.6.3 18 Aug 2016 H1 M5 U6 non-standard Yes Details →
3.6.2 18 Aug 2016 H1 M5 U6 non-standard Yes Details →
3.6.1 24 Jul 2016 H1 M5 U6 non-standard Yes Details →
3.6.0 17 Mar 2016 H1 M5 U6 non-standard Yes Details →
3.5.0 13 Nov 2015 H1 M5 U6 non-standard Yes Details →
3.4.4 25 Apr 2015 H1 M5 U6 non-standard Yes Details →
3.4.3 15 Apr 2015 H1 M5 U6 non-standard Yes Details →
3.4.2 07 Feb 2015 H1 M5 U6 non-standard Yes Details →
3.4.1 20 Nov 2014 H1 M5 U6 non-standard Yes Details →
3.4.0 10 Sep 2014 H1 M5 U6 non-standard Yes Details →
3.3.6 28 Aug 2014 H1 M5 U6 non-standard Yes Details →
3.3.5 18 Apr 2014 H1 M5 U6 non-standard Yes Details →
3.3.4 03 Apr 2014 H1 M6 U7 non-standard Yes Details →
3.3.3 04 Mar 2014 H1 M6 U7 non-standard Yes Details →
3.3.2 26 Feb 2014 H1 M6 U7 non-standard Yes Details →
3.3.1 12 Feb 2014 H1 M6 U7 non-standard Yes Details →
3.3.0 26 Jan 2014 H1 M6 U7 non-standard Yes Details →
3.2.5 02 Jan 2014 H1 M6 U7 non-standard Yes Details →
3.2.4 07 Nov 2013 H1 M6 U7 non-standard Yes Details →
3.2.3 28 Jul 2013 H1 M6 U7 non-standard Yes Details →
3.2.2 28 Jul 2013 H1 M6 U7 non-standard Yes Details →
3.2.1 11 May 2013 H1 M6 U7 non-standard Yes Details →
3.2.0 28 Apr 2013 H1 M6 U7 non-standard Yes Details →
3.1.2 12 Apr 2013 H1 M6 U7 non-standard Yes Details →
3.1.1 29 Mar 2013 H1 M6 U7 non-standard Yes Details →
3.1.0 10 Feb 2013 H1 M6 U7 non-standard Yes Details →
3.0.2 14 Dec 2012 H1 M6 U7 non-standard Yes Details →
3.0.0 08 Oct 2012 H1 M6 U5 non-standard Yes Details →
2.3.6 28 Sep 2012 H1 M6 U7 non-standard Yes Details →
2.3.5 31 Jul 2012 H1 M6 U7 non-standard Yes Details →
2.3.4 26 Mar 2012 H1 M6 U7 non-standard Yes Details →
2.3.3 04 Jan 2012 H1 M6 U7 non-standard Yes Details →
2.3.2 11 Nov 2011 H1 M6 U7 non-standard Yes Details →
2.3.1 25 Sep 2011 H1 M6 U7 non-standard Yes Details →
2.3.0 06 Feb 2011 H1 M6 U5 — Yes Details →
2.2.8 02 Sep 2010 H1 M6 U7 — Yes Details →
2.2.7 24 Jul 2010 H1 M6 U7 — Yes Details →
2.2.6 02 Mar 2010 H1 M6 U7 — Yes Details →
2.2.5 28 Feb 2010 H1 M6 U7 — Yes Details →
2.2.4 11 Nov 2009 H1 M6 U7 — Yes Details →
2.2.3 30 Oct 2009 H1 M6 U7 — Yes Details →
2.2.2 21 Jun 2009 H1 M6 U7 — Yes Details →
2.2.1 02 Jun 2009 H1 M6 U7 — Yes Details →
2.2.0 21 Mar 2009 H1 M6 U5 — Yes Details →
2.1.5 06 Jan 2009 H1 M6 U7 — Yes Details →
2.1.4 12 Dec 2008 H1 M6 U7 — Yes Details →
2.0.11 12 Dec 2008 H1 M6 U7 — Yes Details →
2.1.3 19 Nov 2008 H1 M6 U7 — Yes Details →
2.0.10 19 Nov 2008 H1 M6 U7 — Yes Details →
2.1.2 05 Sep 2008 H1 M6 U7 — Yes Details →
2.0.9 05 Sep 2008 H1 M6 U7 — Yes Details →
2.0.8 24 Jul 2008 H1 M6 U7 — Yes Details →
2.1.1 24 Jul 2008 H1 M6 U7 — Yes Details →
2.1.0 09 Jul 2008 H1 M6 U5 — Yes Details →

The newest 120 of 622 versions Vulert tracks. Severity counts are the vulnerabilities recorded against that exact release.

02 Disclosure history

How often vulnerabilities are recorded

  • 2014 1
  • 2018 1
  • 2020 1
  • 2021 5
  • 2022 4
  • 2026 2

Counted by the year Vulert recorded each vulnerability — the same date the table below shows as disclosed. 2 of the 14 were recorded in the last 12 months.

Vulnerability wrong, a fix missing, or a package we should cover? Report it and we will fix the record. Report Vulnerability Provide Feedback

Updated: 23/Oct/2026 · Vulnerabilities in our DB: 524315

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →

Questions

About lxml

Is lxml safe to use?

Vulert records 14 vulnerabilities for lxml in PyPI: 0 critical, 1 high, 6 medium and 0 low, plus 7 not yet rated. Every one of them has a published fix, so the practical answer is to run a supported release and keep it patched.

What is lxml's Vulert package health score?

Vulert scores lxml 81/100, which reads as in good shape. The score weighs the vulnerability record (40), maintenance and release cadence (25), adoption from dependents and stars (20) and community signals such as the OpenSSF scorecard and forks (15).

Is the latest version of lxml affected?

Yes. 6.1.3, the version you would install today, has 1 known vulnerability, and every one of them has a published fix. Upgrade to the version listed for each.

Which version of lxml should I use?

6.1.3 is the version Vulert recommends for the affected releases. The version table above lists every release with the vulnerabilities recorded against it, so you can confirm the range you actually run.

How many vulnerabilities does lxml have?

14 vulnerabilities are recorded for lxml in the PyPI ecosystem: 0 critical, 1 high, 6 medium and 0 low, plus 7 not yet rated. The ledger on this page lists the same counts next to the date of the most recent disclosure.

How often are new lxml vulnerabilities disclosed?

2 vulnerabilities were recorded for lxml in the last 12 months, and the oldest entry in this database dates to 14 May 2014. Recency matters more than a lifetime total: it shows how actively new issues are being disclosed for the package you are considering.

Which versions of lxml are affected?

Each vulnerability on this page lists the affected version range and the fixed version to move to. Open the vulnerability for the version you actually run — fixes are specific to a release line, not to the package as a whole.

How do I monitor lxml for upcoming vulnerabilities?

Upload the manifest or SBOM for your application at vulert.com/scanner and Vulert keeps checking the lxml version you actually run against new disclosures, then alerts you when one affects it. There is no installation and no source-code access required.