CVE-2026-44289: protobufjs: Denial of service through unbounded protobuf recursion
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs could recurse without a depth limit while decoding nested protobuf data. This affected both skipping unknown group fields and generated decoding of nested message fields. A crafted protobuf binary payload could cause the JavaScript call stack to be exhausted during decoding. This vulnerability is fixed in 7.5.6 and 8.0.2.
Security readout for executives and security teams
Plain-English summary
CVE-2026-44289 is a denial-of-service flaw in protobuf.js. A malicious protobuf message can make vulnerable decoders recurse until the JavaScript call stack fails, disrupting service availability. The issue is fixed in protobuf.js 7.5.6 and 8.0.2.
Executive priority
Treat this as a high-priority availability risk for services that parse protobuf from untrusted sources. It does not indicate data theft or privilege escalation, but exposed services could be disrupted until patched.
Technical view
Before 7.5.6 and 8.0.2, protobufjs lacked a recursion depth limit while decoding nested protobuf data. The issue affects skipping unknown group fields and generated decoding of nested message fields. Crafted protobuf binary input can exhaust the JavaScript call stack, causing high availability impact without authentication or user interaction.
Likely exposure
Node.js or JavaScript applications using protobuf.js versions below 7.5.6, or 8.0.0 through 8.0.1, are most exposed when they decode untrusted or externally supplied protobuf data.
Exploitation context
The CVSS vector indicates network-reachable, low-complexity, unauthenticated exploitation with availability impact only. The provided sources do not state active exploitation, and the CVE is not marked KEV.
Researcher notes
Focus review on decode paths accepting nested messages or unknown group fields. Evidence supports stack exhaustion through unbounded recursion, not confidentiality or integrity compromise. Do not assume affected downstream products unless dependency evidence confirms vulnerable protobuf.js versions.
Mitigation direction
Upgrade protobuf.js to 7.5.6 or 8.0.2 where compatible.
Refresh lockfiles and rebuild artifacts to remove vulnerable transitive copies.
Prioritize services that decode external, partner, or customer-supplied protobuf payloads.
If upgrades are blocked, check vendor and downstream package guidance for supported temporary controls.
Validation and detection
Inventory direct and transitive protobuf.js versions across repositories, lockfiles, and deployed artifacts.
Confirm no deployed package resolves to versions below 7.5.6 or 8.0.0 through 8.0.1.
Identify routes, queues, or workers that decode protobuf input from untrusted sources.
After upgrading, run regression tests covering protobuf decoding and service error handling.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-606: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-606 · source CWE mapping
Unchecked Input for Loop Condition
Unchecked Input for Loop Condition represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Uncontrolled Recursion represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.