CVE-2026-107290: Pydantic AI event loop blocking in web_fetch title extraction

CVE-2026-107290 · Severity: medium · CVSS 6.5 · Published 2026-10-08

Pydantic AI's web-fetch tool processes web pages to extract titles and convert them to markdown for AI agents. An attacker can provide a specially crafted malicious webpage that causes the tool to hang for minutes, blocking the entire application and preventing other agent runs or user requests from being served until processing completes.

Technologies: Pydantic AI, pydantic-ai (PyPI), pydantic-ai-slim (PyPI). Vendors: Pydantic, PyPI.

Quick answers

Is CVE-2026-107290 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-107290 being exploited in the wild.
How severe is CVE-2026-107290?
Medium severity, with a CVSS score of 6.5, published 8 October 2026.
Which products and versions are affected?
pydantic-ai (PyPI) ECOSYSTEM:introduced=1.77.0,fixed=1.107.6,introduced=2.0.0b1,fixed=2.44.0; pydantic-ai-slim (PyPI) ECOSYSTEM:introduced=1.77.0,fixed=1.107.6,introduced=2.0.0b1,fixed=2.44.0.
Is there a fix for CVE-2026-107290?
Yes. pydantic-ai (PyPI): upgrade to 2.44.0 or later; pydantic-ai-slim (PyPI): upgrade to 2.44.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-107290 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-107290?
Check whether you run Pydantic AI, pydantic-ai (PyPI) or pydantic-ai-slim (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • pydantic-ai (PyPI): upgrade to 2.44.0 or later
    pip install "pydantic-ai>=2.44.0"
  • pydantic-ai-slim (PyPI): upgrade to 2.44.0 or later
    pip install "pydantic-ai-slim>=2.44.0"

Technical details

The vulnerability stems from quadratic-time regex backtracking in title extraction and HTML-to-markdown conversion steps that run on the event loop, combined with quadratic decoding complexity in Python's punycode codec. An attacker-controlled server can return a megabyte-scale response with repeated malformed HTML tags or a punycode-labeled response to cause event loop stalls of minutes. The tool also fails to handle deeply nested pages or non-text codecs gracefully, aborting agent runs instead of failing safely.

Affected products

  • Pydantic Pydantic AI

Identifiers

  • CVE-2026-107290
  • GHSA-fpf4-vwcp-v4hp
  • PYSEC-2026-4277
  • PYSEC-2026-4286

Timeline

  • 2026-10-08: disclosed
  • 2026-10-08: advisory

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.