CVE-2026-89418 Uncontrolled Recursion leading to Denial of Service in protobuf-javascript (google-protobuf)
An attacker can crash Node.js services using google-protobuf by sending crafted deeply nested group fields, causing uncontrolled recursion and process termination.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-89418?
CVE-2026-89418 is a high-severity denial of service vulnerability in protobuf-javascript (aka google-protobuf npm package), published on 17 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
google-protobuf contains an unbounded recursion when parsing unknown protobuf group fields. An attacker can send a small crafted payload of deeply nested START_GROUP wire bytes to any Node.js service that calls the generated deserializeBinary() API, causing a RangeError: Maximum call stack size exceeded and crashing the process. No authentication or prior knowledge of the schema is required.
Weakness: CWE-674
Which versions are affected by CVE-2026-89418?
How do I fix CVE-2026-89418?
Upgrade to a fixed version.
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-2026-89418 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-89418 exists.
Sources
Also known as AZL-103491, ROOT-APP-NPM-CVE-2026-89418.