Read the docs
TI-2026-74955 Aliases CVE-2026-111171

Server-side request forgery in Web3.py CCIP Read URL validation

Priority MEDIUM 61CWE-918Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
High
Attack requirements
Present
Impact type
—
Confidentiality · integrity · availability
Low · Low · None
Fix status
No fix listed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

Web3.py from 7.15.0 through 7.16.0 and from 8.0.0b2 through 8.0.0 is affected. The _check_ip_blocked() function does not unwrap IPv4-mapped IPv6 addresses during CCIP Read URL validation, which is a server-side request forgery flaw (CWE-918). A malicious contract can return an OffchainLookup URL with an IPv4-mapped IPv6 host or AAAA record, making clients with CCIP Read enabled send requests to loopback, private, or link-local services.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Description from the CNA

Web3.py 7.15.0 through 7.16.0 and 8.0.0b2 through 8.0.0 contains a server-side request forgery vulnerability because _check_ip_blocked() does not unwrap IPv4-mapped IPv6 addresses in CCIP Read URL validation. Malicious contracts can return OffchainLookup URLs with IPv4-mapped IPv6 hosts or AAAA records, making clients with CCIP Read enabled send requests to loopback, private, or link-local services.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00341 27th percentileScored 2026-11-07
Fix No fix listed No fixed version in the sources yet

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ethereumweb3.py7.15.0 – 7.16.0; 8.0.0b2 – 8.0.0—No fix listedCNA
  • web3.py Vendorethereum Affected 7.15.0 – 7.16.0; 8.0.0b2 – 8.0.0 Fixed in — No fix listed CNA

Remediation

The sources list no fixed version for Web3.py.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Timeline

  1. 2026-10-16 Threatist record created from CVE-2026-111171

References

  • TI-2023-22561 Geth (aka go-ethereum) through 1.13.4, when --http --graphql is used, allows remote… CVSS 3.1HIGH 7.5
  • TI-2017-10558 Out-of-bounds read in CPP-Ethereum CVSS 3.1CRITICAL 10.0
  • TI-2018-11329 An issue was discovered in EthereumJ 1.8.2. CVSS 3.0CRITICAL 9.8
  • TI-2026-21270 Go Ethereum affected by DoS via malicious p2p message CVSS 4.0HIGH 8.7
  • TI-2025-18585 go-ethereum has a DoS via malicious p2p message CVSS 4.0HIGH 8.7
  • TI-2026-28903 web3.py affected by SSRF via CCIP Read (EIP-3668) OffchainLookup URL handling CVSS 4.0LOW 1.7
See all 43 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences