A denial-of-service (DoS) vulnerability exists in google.protobuf.json_format.ParseDict() in Python, where the max_recursion_depth limit can be bypassed when parsing nested google.protobuf.Any messages.
Due to missing recursion depth accounting inside the internal Any-handling logic, an attacker can supply deeply nested Any structures that bypass the intended recursion limit, eventually exhausting Python’s recursion stack and causing a RecursionError.
Metrics
Affected Vendors & Products
References
| Link | Providers |
|---|---|
| https://github.com/protocolbuffers/protobuf/pull/25239 |
|
History
Fri, 23 Jan 2026 16:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Fri, 23 Jan 2026 15:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | A denial-of-service (DoS) vulnerability exists in google.protobuf.json_format.ParseDict() in Python, where the max_recursion_depth limit can be bypassed when parsing nested google.protobuf.Any messages. Due to missing recursion depth accounting inside the internal Any-handling logic, an attacker can supply deeply nested Any structures that bypass the intended recursion limit, eventually exhausting Python’s recursion stack and causing a RecursionError. | |
| Title | Denial of Service in Python Protobuf | |
| Weaknesses | CWE-674 | |
| References |
| |
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: Google
Published:
Updated: 2026-01-23T15:34:38.915Z
Reserved: 2026-01-15T15:16:22.904Z
Link: CVE-2026-0994
Updated: 2026-01-23T15:33:53.235Z
Status : Received
Published: 2026-01-23T15:16:06.840
Modified: 2026-01-23T15:16:06.840
Link: CVE-2026-0994
No data.
OpenCVE Enrichment
No data.