DoS via max_recursion_depth Bypass in google.protobuf.json_format.ParseDict()
CVE-2026-0994 Published on January 23, 2026
Denial of Service in Python Protobuf
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 Pythons recursion stack and causing a RecursionError.
Weakness Type
What is a Stack Exhaustion Vulnerability?
The product does not properly control the amount of recursion which takes place, consuming excessive resources, such as allocated memory or the program stack.
CVE-2026-0994 has been classified to as a Stack Exhaustion vulnerability or weakness.
Affected Versions
Python Protobuf Version <=v33.4 is affected by CVE-2026-0994Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.