CVE-2025-4565 json
Unbounded recursion in Python Protobuf
published last yr. modified last mo. also EUVD-2025-18401 , GHSA-8qvm-5x2c-j2w7 , PYSEC-2026-1806
- cvss
- 5.3
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 17%
- public exploits
- 0
- none known
Summary
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
Patch / fix
- pypi protobuf 4.25.8, 5.29.5, 6.31.1
- protocolbuffers Python-Protobuf 4.25.8, 5.29.5, 6.31.1
- protobuf Debian 12 3.21.12-3+deb12u1
- protobuf Debian 13 3.21.12-11+deb13u1
- protobuf Debian 14 3.21.12-12
debian advisories DEBIAN-CVE-2025-4565
- protobuf Ubuntu 22.04 LTS 3.12.4-1ubuntu7.22.04.4
- protobuf Ubuntu 24.04 LTS 3.21.12-8.2ubuntu0.2
- protobuf Ubuntu Pro 16.04 LTS 2.6.1-1.3ubuntu0.1~esm4
- protobuf Ubuntu Pro 18.04 LTS 3.0.0-9.1ubuntu1.1+esm3
- protobuf Ubuntu Pro 20.04 LTS 3.6.1.3-2ubuntu5.2+esm2
ubuntu advisories UBUNTU-CVE-2025-4565
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- receptor ansible automation platform 2.6 1.6.3-2.el10ap
- receptor ansible automation platform inside 2.6, ansible automation platform developer 2.6, ansible automation platform 2.6 1.6.3-2.el9ap
- python3.11-django ansible automation platform developer 2.6, ansible automation platform 2.6 4.2.27-2.el9ap
- python3.11-urllib3 ansible automation platform developer 2.6, ansible automation platform 2.6 2.6.3-1.el9ap
- python3.11-protobuf ansible automation platform 2.6 4.25.8-1.el9ap
- automation-controller-venv-tower ansible automation platform 2.6 4.7.8-1.el9ap
red hat advisories RHSA-2026:1249
- protobuf SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 28.3-160000.3.1
- protobuf-java SLES for SAP applications 16.0, SLES 16.0 28.3-160000.3.1
- python-protobuf SLES for SAP applications 16.0, SLES 16.0 5.28.3-160000.3.1
- protobuf SLE Module for Public Cloud 15 SP7, SLE Module for Public Cloud 15 SP6, SLE Module for Public Cloud 15 SP5 +11 more 3.9.2-150200.4.27.1
- protobuf Linux Micro 6.1 23.4-slfo.1.1_2.1
- protobuf Linux Micro 6.0 23.4-10.1
- protobuf SLE Module for Python 3 15 SP7, SLE Module for Python 3 15 SP6, SLE Module for Package Hub 15 SP6 +5 more 25.1-150600.16.13.1
- protobuf SLE Module for Public Cloud 15 SP5, SLE Micro 5.5 25.1-150500.12.11.1
suse advisories SUSE-SU-2026:20753-1SUSE-SU-2026:20907-1SUSE-SU-2025:3722-1SUSE-SU-2025:20672-1SUSE-SU-2025:20514-1SUSE-SU-2025:02311-1
- protobuf openSUSE Leap 16.0 28.3-160000.3.1
- protobuf-java openSUSE Leap 16.0 28.3-160000.3.1
- python-protobuf openSUSE Leap 16.0 5.28.3-160000.3.1
- protobuf openSUSE Tumbleweed 31.1-1.1
opensuse advisories openSUSE-SU-2026:20390-1openSUSE-SU-2025:15265-1
- protobuf CBL-Mariner 2.0 3.17.3-4
- protobuf Azure Linux 3.0 25.3-5
azure linux advisories AZL-64116AZL-64145
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
Is CVE-2025-4565 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-4565 updated cvss 5.3
python-protobuf: Unbounded recursion in Python Protobuf
-
Red Hat OpenShift Service Mesh 3 openshift-service-mesh/istio-cni-rhel9, openshift-service-mesh/istio-pilot-rhel9, openshift-service-mesh/istio-proxyv2-rhel9, openshift-service-mesh/istio-rhel9-operator, openshift-service-mesh/istio-must-gather-rhel9, openshift-service-mesh/istio-sail-operator-bundle, +1 more Red Hat AI Inference Server rhaiis/vllm-cuda-rhel9, rhaiis/vllm-rocm-rhel9 Red Hat Ansible Automation Platform 2 automation-controller, ansible-automation-platform-24/lightspeed-rhel8, ansible-automation-platform-25/lightspeed-rhel8, ansible-automation-platform-24/ee-supported-rhel8, ansible-automation-platform-24/ee-supported-rhel9, ansible-automation-platform-25/ee-supported-rhel8, +7 more Red Hat Enterprise Linux 7 protobuf, protobuf-vim, protobuf-java, protobuf-lite, protobuf-emacs, protobuf-python, +3 more Red Hat Enterprise Linux 8 protobuf, protobuf-lite, python3-protobuf, protobuf-compiler Red Hat Enterprise Linux 9 protobuf, fence-virt, fence-virtd, fence-agents, protobuf-lite, fence-virtd-cpg, +55 moreaffected: workaround, no fix available “Fix deferred”
+3 more productsfewer
Red Hat Enterprise Linux 10 protobuf Red Hat Enterprise Linux AI (RHEL AI) rhelai1/ui-rhel9, rhelai1/gemma-2-9b-it, rhelai1/bootc-amd-rhel9, rhelai1/bootc-intel-rhel9, rhelai1/gemma-2-9b-it-fp8, rhelai1/granite-8b-lab-v1, +47 more Red Hat OpenShift AI (RHOAI) rhoai/odh-feast-operator-rhel8, rhoai/odh-feature-server-rhel8, rhoai/odh-model-registry-rhel8, rhoai/odh-modelmesh-runtime-adapter-rhel8, rhoai/odh-ml-pipelines-runtime-generic-rhel8 -
Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-9affected: workaround, no fix planned “Will not fix”
-
Red Hat OpenStack Platform 16.2 protobuf, python3-protobuf Red Hat Quay 3 quay/quay-rhel8affected: workaround, no fix available “Fix deferred”
-
Red Hat Ansible Automation Platform 2.6 ansible-automation-platform-26 1772543959fixed: vendor fix RHSA-2026:3960
-
Red Hat Ansible Automation Platform 2.6 for RHEL 9 python3.11-protobuf 4.25.8-1.el9apfixed: vendor fix RHSA-2026:1249
-
Red Hat OpenShift Container Platform 4.19 openshift4/ose-dpu-intel-ipu-vsp-rhel9 v4.19.0-202507081507.p0.gb4d5e23.assembly.stream.el9fixed: vendor fix RHSA-2025:10773
-
Red Hat Ansible Automation Platform 2.6 ansible-automation-platform 1772556678, ansible-automation-platform 1772556679, ansible-automation-platform-26 1772204398, ansible-automation-platform-26 1772381996, ansible-automation-platform-26 1772382003, ansible-automation-platform-26 1772382254, +21 more Red Hat Ansible Automation Platform 2.6 for RHEL 9 receptor 1.6.3-2.el9ap, receptorctl 1.6.3-2.el9ap, ansible-lint 26.1.0-2.el9ap, ansible-core 2.16.15-1.el9ap, ansible-test 2.16.15-1.el9ap, automation-hub 4.11.5-1.el9ap, +37 more Red Hat Ansible Automation Platform 2.6 for RHEL 10 receptor 1.6.3-2.el10ap, receptorctl 1.6.3-2.el10ap, ansible-lint 26.1.0-2.el10ap, ansible-core 2.16.15-2.el10ap, python-django 4.2.27-2.el10ap, python3-django 4.2.27-2.el10ap, +3 more Red Hat OpenShift Container Platform 4.19 openshift4/metallb-rhel9 v4.19.0-202507081507.p0.gdc0b421.assembly.stream.el9, openshift4/ose-ptp-rhel9 v4.19.0-202507081507.p0.g51be981.assembly.stream.el9, openshift4/sriov-cni-rhel9 v4.19.0-202507081507.p0.g91f918a.assembly.stream.el9, openshift4/ose-dpu-cni-rhel9 v4.19.0-202507081507.p0.gb4d5e23.assembly.stream.el9, openshift4/ose-dpu-daemon-rhel9 v4.19.0-202507081507.p0.gb4d5e23.assembly.stream.el9, openshift4/pf-status-relay-rhel9 v4.19.0-202507081507.p0.g356d927.assembly.stream.el9, +45 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
0.26% chance of exploitation in the next 30 days, higher than 17% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | protobuf | <4.25.8 >=5.26.0rc1, <5.29.5 >=6.30.0rc1, <6.31.1 |
4.25.8 5.29.5 6.31.1 |
Affected products
- protocolbuffers Python-Protobuf
Classification
- Weakness
-
- CWE-674 Uncontrolled Recursion
References
-
github.com
/protocolbuffers/protobuf/commit/17838beda2943d08b8a9d4df5b68f5f04f26d901
web, patch
-
github.com
/protocolbuffers/protobuf/security/advisories/GHSA-735f-pc8j-v9w8
web
-
github.com
/protocolbuffers/protobuf/security/advisories/GHSA-8qvm-5x2c-j2w7
web
-
nvd.nist.gov
/vuln/detail/CVE-2025-4565
advisory
-
github.com
/protocolbuffers/protobuf
package
-
github.com
/protocolbuffers/protobuf/blob/main/python/google/protobuf/internal/decoder_test.py#L87-L98
web
-
github.com
/protocolbuffers/protobuf/blob/main/python/google/protobuf/internal/message_test.py#L1436-L1478
web
-
github.com
/protocolbuffers/protobuf/tree/main/python#implementation-backends
web
-
pypi.org
/project/protobuf
package
-
github.com
/advisories/GHSA-8qvm-5x2c-j2w7
advisory
Sources
- CVE List CVE-2025-4565
- GitHub Advisory GHSA-8qvm-5x2c-j2w7
- NVD CVE-2025-4565
- OSV PYSEC-2026-1806
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.