CVE-2026-107287
Pydantic AI is a Python agent framework for building applications and workflows with Generative AI. From 1.77.0 until 1.107.7 and 2.52.0, the local web_fetch_tool and the WebFetch local fallback can consume excessive CPU and memory during HTML-to-Markdown conversion of attacker-controlled HTML containing deeply nested block elements. Conversion repeatedly reprocesses accumulated text and can greatly expand intermediate output before the returned-content limit is applied, allowing a model-directed fetch to delay other work in the process. Provider-native web fetching is not affected. This issue is fixed in versions 1.107.7 and 2.52.0.
- CVSS 3.1
- 6.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - EPSS
- 0.3% chance of exploitation in the next 30 days; higher than 19% of CVEs (scores of 2026-10-25)
- CWEs
- CWE-400, CWE-407
- Published
- Modified
- Record from
- the NVD, synced
Affected
- pydantic:pydantic_ai
Packages (OSV)
| Advisory | Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|---|
| GHSA-v36g-jcw9-x7cw | PyPI | pydantic-ai | >=1.77.0 <1.107.7 | 1.107.7 |
| GHSA-v36g-jcw9-x7cw | PyPI | pydantic-ai | >=2.0.0b1 <2.52.0 | 2.52.0 |
| GHSA-v36g-jcw9-x7cw | PyPI | pydantic-ai-slim | >=1.77.0 <1.107.7 | 1.107.7 |
| GHSA-v36g-jcw9-x7cw | PyPI | pydantic-ai-slim | >=2.0.0b1 <2.52.0 | 2.52.0 |
| PYSEC-2026-4281 | PyPI | pydantic-ai | >=1.77.0 <1.107.7 >=2.0.0b1 <2.52.0 | 1.107.7, 2.52.0 |
| PYSEC-2026-4290 | PyPI | pydantic-ai-slim | >=1.77.0 <1.107.7 >=2.0.0b1 <2.52.0 | 1.107.7, 2.52.0 |
References
- https://github.com/pydantic/pydantic-ai/commit/2b247add4950bef61d352e7ca8aefbd20539180c
- https://github.com/pydantic/pydantic-ai/commit/2fd38792693da00a3ca5412aeffb436787af3545
- https://github.com/pydantic/pydantic-ai/pull/8984
- https://github.com/pydantic/pydantic-ai/pull/8985
- https://github.com/pydantic/pydantic-ai/releases/tag/v1.107.7