CVE-2025-4565 Unbounded recursion in Python Protobuf
Attackers can cause a denial of service by sending crafted Protocol Buffers data that triggers unbounded recursion in the Python backend.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2025-4565?
CVE-2025-4565 is a high-severity denial of service vulnerability in protocolbuffers Python-Protobuf, published on 16 Jun 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Any project that uses Protobuf Pure-Python backend to parse untrusted Protocol Buffers data containing an arbitrary number of recursive groups, recursive messages or a series of SGROUP tags can be corrupted by exceeding the Python recursion limit. This can result in a Denial of service by crashing the application with a RecursionError. We recommend upgrading to version =>6.31.1 or beyond commit 17838beda2943d08b8a9d4df5b68f5f04f26d901
Weakness: CWE-674
Which versions are affected by CVE-2025-4565?
7 open source packages ship an affected version, including protobuf. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
protobuf PyPI | All versions | 4.25.8, 5.29.5, 6.31.1 |
protobuf PyPI | All versions | 4.25.8 |
protobuf PyPI | All versions | 4.25.8 |
protobuf PyPI | From 5.26.0rc1 | 5.29.5 |
protobuf PyPI | From 5.26.0rc1 | 5.29.5 |
protobuf PyPI | From 6.30.0rc1 | 6.31.1 |
1 more packages
protobuf PyPI | From 6.30.0rc1 | 6.31.1 |
Linux distribution packages (30)
protobuf SUSE:Linux Enterprise Micro 5.1 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Micro 5.2 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Micro 5.3 | All versions | 25.1-150400.9.16.1 |
protobuf SUSE:Linux Enterprise Micro 5.3 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Micro 5.4 | All versions | 25.1-150400.9.16.1 |
protobuf SUSE:Linux Enterprise Micro 5.4 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Micro 5.5 | All versions | 25.1-150500.12.11.1 |
protobuf SUSE:Linux Enterprise Micro 5.5 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Basesystem 15 SP6 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Basesystem 15 SP6 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Basesystem 15 SP7 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Basesystem 15 SP7 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Development Tools 15 SP6 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Development Tools 15 SP7 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Package Hub 15 SP6 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Package Hub 15 SP6 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Package Hub 15 SP7 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP3 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP4 | All versions | 25.1-150400.9.16.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP4 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP5 | All versions | 25.1-150500.12.11.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP5 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Public Cloud 15 SP7 | All versions | 3.9.2-150200.4.27.1 |
protobuf SUSE:Linux Enterprise Module for Python 3 15 SP6 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Enterprise Module for Python 3 15 SP7 | All versions | 25.1-150600.16.13.1 |
protobuf SUSE:Linux Micro 6.0 | All versions | 23.4-10.1 |
protobuf SUSE:Manager Server Module 4.3 | All versions | 25.1-150400.9.16.1 |
protobuf openSUSE:Leap 15.6 | All versions | 25.1-150600.16.13.1 |
protobuf openSUSE:Tumbleweed | All versions | 31.1-1.1 |
Products include Google Protobuf-Python.
How do I fix CVE-2025-4565?
Upgrade protobuf to a fixed version for your release line: 4.25.8, 5.29.5 or 6.31.1.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2025-4565 being exploited?
There is no known exploitation of CVE-2025-4565 in the wild and no public exploit code.
Sources
Also known as AZL-64116, AZL-64145, CLEANSTART-2026-AJ37514, CLEANSTART-2026-OD41490, CLSA-2025-1762301642, DEBIAN-CVE-2025-4565 and 19 more.