CVE-2026-48782: pydantic-ai: SSRF blocklist bypass via IPv4-compatible, SIIT/IVI, and local NAT64 IPv6 addresses (incomplete fix of CVE-2026-46678)
Vulnerability summary
CVE-2026-48782 is a medium (CVSS 6.8) Server-Side Request Forgery vulnerability in pydantic pydantic_ai. EPSS estimates a 0.40% chance of exploitation in the next 30 days, higher than 34.3% of scored vulnerabilities.
Not severe (CVSS 6.8, network access); no exploitation reported by the 5 checked sources
Source freshness unavailable
How is this decided?Timeline
- 16-06-2026PublishedVulnerability first disclosed.
- 17-06-2026Last modifiedVulnerability information updated.
Description
Pydantic AI is a Python agent framework for building applications and workflows with Generative AI. In versions 1.56.0 through 1.101.0, 2.0.0b1, and 2.0.0b2, the cloud-metadata blocklist could be bypassed by encoding the metadata IP in an IPv6 transition form that the previous fix, CVE-2026-46678, did not decode, exposing cloud IAM short-term credentials. The previous remediation decoded only IPv4-mapped IPv6, 6to4, and the NAT64 well-known prefix, so the metadata guarantee did not hold for the remaining transition forms: IPv4-compatible IPv6 (::a.b.c.d), the NAT64 RFC 8215 local-use prefix (64:ff9b:1::/48), operator-chosen NAT64 prefixes, and ISATAP. The IPv6 wrapper is then delivered to the underlying IPv4 metadata endpoint. This occurs when an application using Pydantic AI opts a URL into force_download='allow-local' (which disables the default block on private/internal IPs) and runs on a network that actually routes the affected IPv6 transition forms: NAT64-configured networks (IPv6-only or dual-stack-with-NAT64 deployments, including some Kubernetes setups) for the NAT64 variants, or networks with an ISATAP tunnel for ISATAP. A standard dual-stack cloud VM or container does not route these forms and is not affected in practice. The IPv4-compatible and Teredo variants are deprecated and addressed as defense-in-depth. This is an incomplete fix of GHSA-cqp8-fcvh-x7r3 / CVE-2026-46678 (itself a follow-up to CVE-2026-25580). This issue has been fixed in version 2.0.0b3.
CVSS metrics
3 scores · 3 sources · 1 version- OSV · PypiEcosystem advisory · calculated6.8MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N
- NVDNIST6.8MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N
EPSS trend
Probability
0.40%
Chance of exploitation in the next 30 days
Percentile
34%
Versus all other CVEs
30-day change
Decrease -0.02 pp
From 0.42% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.
Pydantic3 products
- pydantic_ai≥ 1.56.0, < 1.102.0 | 2.0.0:beta1 | 2.0.0:beta2
- pydantic-ai≥ 1.56.0, < 1.102.0 | ≥ 2.0.0b1, < 2.0.0b3
- pydantic-ai-slim≥ 2.0.0b1, < 2.0.0b3 | ≥ 1.56.0, < 1.102.0
PyPI2 products
- pydantic-ai≥ 1.56.0, < 1.102.0 | ≥ 2.0.0b1, < 2.0.0b3
- pydantic-ai-slim≥ 1.56.0, < 1.102.0 | ≥ 2.0.0b1, < 2.0.0b3
2 vendors · 5 products
References
9 links- github.com/pydantic/pydantic-ai/security/advisories/GHSA-cg7w-rg45-pc59X Refsource CONFIRMWEBVendor Advisory
- github.com/pydantic/pydantic-ai/commit/1add06179ba4de259f7ab977620b697b7209f7e4X Refsource MISCWEBPatch
- pypi.org/project/pydantic-aiPACKAGE