CVE-2026-44290
protobufjs: Process-wide denial of service through unsafe option paths
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality. This vulnerability is fixed in 7.5.6 and 8.0.2.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.5
protobufjs: Process-wide denial of service through unsafe option paths
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality. This vulnerability is fixed in 7.5.6 and 8.0.2.
- Record
CVE-2026-44290- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-1321
- Updated
- 2026-11-02
EUVDEUVD-2026-30028
7.5
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality. This vulnerability is fixed in 7.5.6 and 8.0.2.
- Record
EUVD-2026-30028- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-jvwf-75h9-cwgg
7.5
protobuf.js: Process-wide denial of service through unsafe option paths
Summary
protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality.
Impact
An attacker who can provide or influence protobuf schemas or JSON descriptors may be able to corrupt built-in process state in a way that causes subsequent application code or protobufjs code to fail. This can result in a persistent denial of service for the lifetime of the affected process.
This issue affects applications that parse or load protobuf schemas or descriptors from untrusted sources. Applications that use bundled, generated, or otherwise trusted schemas to decode untrusted protobuf message payloads are not directly affected.
The issue is not known to allow code execution by itself.
Preconditions
- The application must allow an attacker to control or influence a protobuf schema or JSON descriptor.
- The application must parse or load that schema through protobufjs reflection APIs such as
parse,Root.load,Root.loadSync, orRoot.fromJSON. - The crafted input must contain option paths that reach unsafe inherited properties during option processing.
Workarounds
Do not parse or load protobuf schemas or JSON descriptors from untrusted sources with affected versions. If untrusted schemas must be accepted, validate or reject option names containing unsafe property path components before loading them, and run schema processing in an isolated process.
- Record
GHSA-jvwf-75h9-cwgg- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-1321
- Updated
- 2026-11-02
NVD
7.5
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality. This vulnerability is fixed in 7.5.6 and 8.0.2.
- Record
CVE-2026-44290- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-1321
- Updated
- 2026-11-02
OSV
7.5
protobufjs: Process-wide denial of service through unsafe option paths
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality. This vulnerability is fixed in 7.5.6 and 8.0.2.
- Record
CVE-2026-44290- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-1321
- Updated
- 2026-11-02
OSVGHSA-jvwf-75h9-cwgg
7.5
protobuf.js: Process-wide denial of service through unsafe option paths
Summary
protobufjs allowed certain schema option paths to traverse through inherited object properties while applying options. A crafted protobuf schema or JSON descriptor could cause option handling to write to properties on global JavaScript constructors, corrupting process-wide built-in functionality.
Impact
An attacker who can provide or influence protobuf schemas or JSON descriptors may be able to corrupt built-in process state in a way that causes subsequent application code or protobufjs code to fail. This can result in a persistent denial of service for the lifetime of the affected process.
This issue affects applications that parse or load protobuf schemas or descriptors from untrusted sources. Applications that use bundled, generated, or otherwise trusted schemas to decode untrusted protobuf message payloads are not directly affected.
The issue is not known to allow code execution by itself.
Preconditions
- The application must allow an attacker to control or influence a protobuf schema or JSON descriptor.
- The application must parse or load that schema through protobufjs reflection APIs such as
parse,Root.load,Root.loadSync, orRoot.fromJSON. - The crafted input must contain option paths that reach unsafe inherited properties during option processing.
Workarounds
Do not parse or load protobuf schemas or JSON descriptors from untrusted sources with affected versions. If untrusted schemas must be accepted, validate or reject option names containing unsafe property path components before loading them, and run schema processing in an isolated process.
- Record
GHSA-jvwf-75h9-cwgg- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-1321
- Updated
- 2026-11-02
Show 11 moreShow less
OSVROOT-APP-NPM-CVE-2026-44290
7.5
CVE-2026-44290 in protobufjs - Patched by Root
Root has patched CVE-2026-44290 in the protobufjs package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2026-44290- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVCLSA-2026-1784250508 No score
TuxCare security update for protobufjs (6 CVEs)
TuxCare rebuilt protobufjs to address 6 CVEs. Fixed in 6.11.6-tuxcare.4.
- Record
CLSA-2026-1784250508- Updated
- 2026-11-02
OSVCLSA-2026-1784769544 No score
TuxCare security update for protobufjs (8 CVEs)
TuxCare rebuilt protobufjs to address 8 CVEs. Fixed in 2.2.1-tuxcare.1.
- Record
CLSA-2026-1784769544- Updated
- 2026-11-02
OSVCLSA-2026-1785468075 No score
TuxCare security update for protobufjs (11 CVEs)
TuxCare rebuilt protobufjs to address 11 CVEs. Fixed in 6.8.8-tuxcare.1.
- Record
CLSA-2026-1785468075- Updated
- 2026-11-02
OSVCLSA-2026-1785468077 No score
TuxCare security update for protobufjs (7 CVEs)
TuxCare rebuilt protobufjs to address 7 CVEs. Fixed in 5.0.0-tuxcare.2.
- Record
CLSA-2026-1785468077- Updated
- 2026-11-02
OSVCLSA-2026-1790770894 No score
TuxCare security update for protobufjs (4 CVEs)
TuxCare rebuilt protobufjs to address 4 CVEs. Fixed in 6.11.3-tuxcare.1.
- Record
CLSA-2026-1790770894- Updated
- 2026-11-02
OSVCLSA-2026-1791218903 No score
TuxCare security update for protobufjs (11 CVEs)
TuxCare rebuilt protobufjs to address 11 CVEs. Fixed in 7.4.0-tuxcare.1.
- Record
CLSA-2026-1791218903- Updated
- 2026-11-02
OSVCLSA-2026-1791293603 No score
TuxCare security update for protobufjs (12 CVEs)
TuxCare rebuilt protobufjs to address 12 CVEs. Fixed in 8.0.0-tuxcare.1.
- Record
CLSA-2026-1791293603- Updated
- 2026-11-02
OSVCLSA-2026-1791362263 No score
TuxCare security update for protobufjs (11 CVEs)
TuxCare rebuilt protobufjs to address 11 CVEs. Fixed in 8.0.1-tuxcare.1.
- Record
CLSA-2026-1791362263- Updated
- 2026-11-02
OSVCLSA-2026-1792490720 No score
TuxCare security update for protobufjs (12 CVEs)
TuxCare rebuilt protobufjs to address 12 CVEs. Fixed in 3.8.2-tuxcare.1.
- Record
CLSA-2026-1792490720- Updated
- 2026-11-02
OSVCLSA-2026-1792755967 No score
TuxCare security update for protobufjs (7 CVEs)
TuxCare rebuilt protobufjs to address 7 CVEs. Fixed in 7.5.4-tuxcare.3.
- Record
CLSA-2026-1792755967- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
protobufjsnpm |
through 7.5.5 | 7.5.6 |
protobufjsnpm |
8.0.0 to 8.0.1 | 8.0.2 |
protobufjsTuxCare:npm From an advisory covering 6 CVEs |
6.11.6-tuxcare.0 up to 6.11.6-tuxcare.4, plus listed versions 6.11.66.11.6-tuxcare.16.11.6-tuxcare.26.11.6-tuxcare.3 |
6.11.6-tuxcare.4 |
protobufjsTuxCare:npm From an advisory covering 8 CVEs |
2.2.1-tuxcare.0 up to 2.2.1-tuxcare.1, plus listed versions 2.2.1 |
2.2.1-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 11 CVEs |
6.8.8-tuxcare.0 up to 6.8.8-tuxcare.1, plus listed versions 6.8.8 |
6.8.8-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 7 CVEs |
5.0.0-tuxcare.0 up to 5.0.0-tuxcare.2, plus listed versions 5.0.05.0.0-tuxcare.1 |
5.0.0-tuxcare.2 |
protobufjsTuxCare:npm From an advisory covering 4 CVEs |
6.11.3-tuxcare.0 up to 6.11.3-tuxcare.1, plus listed versions 6.11.3 |
6.11.3-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 11 CVEs |
7.4.0-tuxcare.0 up to 7.4.0-tuxcare.1, plus listed versions 7.4.0 |
7.4.0-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 12 CVEs |
8.0.0-tuxcare.0 up to 8.0.0-tuxcare.1, plus listed versions 8.0.0 |
8.0.0-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 11 CVEs |
8.0.1-tuxcare.0 up to 8.0.1-tuxcare.1, plus listed versions 8.0.1 |
8.0.1-tuxcare.1 |
Show 6 moreShow less
| Package | Affected | Fixed |
|---|---|---|
protobufjsTuxCare:npm From an advisory covering 12 CVEs |
3.8.2-tuxcare.0 up to 3.8.2-tuxcare.1, plus listed versions 3.8.2 |
3.8.2-tuxcare.1 |
protobufjsTuxCare:npm From an advisory covering 7 CVEs |
7.5.4-tuxcare.0 up to 7.5.4-tuxcare.3, plus listed versions 7.5.47.5.4-tuxcare.17.5.4-tuxcare.2 |
7.5.4-tuxcare.3 |
protobufjsnpm |
before 7.5.6 | 7.5.6 |
protobufjsnpm |
8.0.0 up to 8.0.2 | 8.0.2 |
protobufjsRoot:npm |
before 6.11.2-aikido.1 | 6.11.2-aikido.17.4.0-aikido.37.5.5-aikido.37.5.4-aikido.48.0.1-aikido.46.11.4-aikido.26.11.6-aikido.27.5.5-aikido.47.5.4-aikido.58.0.1-aikido.57.4.0-aikido.48.0.1-aikido.67.5.4-aikido.67.4.0-aikido.57.4.0-aikido.66.11.4-aikido.36.11.6-aikido.36.11.6-aikido.46.11.4-aikido.46.11.6-aikido.57.5.5-aikido.58.0.1-aikido.77.5.4-aikido.77.4.0-aikido.77.5.5-aikido.68.0.1-aikido.87.5.4-aikido.86.11.4-aikido.57.5.5-aikido.78.0.1-aikido.96.11.6-aikido.67.5.5-aikido.87.5.3-aikido.17.2.0-aikido.37.3.2-aikido.2 |
@rootio/protobufjsRoot:npm |
before 7.4.0-root.io.2 | 7.4.0-root.io.27.5.5-root.io.18.0.1-root.io.17.5.4-root.io.28.0.1-root.io.27.5.4-root.io.37.5.5-root.io.28.0.1-root.io.36.11.4-root.io.16.11.6-root.io.16.11.2-root.io.17.4.0-root.io.37.5.5-root.io.37.5.4-root.io.48.0.1-root.io.46.11.4-root.io.26.11.6-root.io.27.5.5-root.io.47.5.4-root.io.58.0.1-root.io.57.4.0-root.io.48.0.1-root.io.67.5.4-root.io.67.4.0-root.io.57.4.0-root.io.66.11.4-root.io.36.11.6-root.io.36.11.6-root.io.46.11.4-root.io.46.11.6-root.io.57.5.5-root.io.58.0.1-root.io.77.5.4-root.io.77.4.0-root.io.77.5.5-root.io.68.0.1-root.io.87.5.4-root.io.86.11.4-root.io.57.5.5-root.io.78.0.1-root.io.96.11.6-root.io.67.5.5-root.io.87.5.3-root.io.17.2.0-root.io.37.3.2-root.io.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-44290 is a high vulnerability (CVSS 7.5) in Protobufjs Project Protobufjs, published May 12, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.37%, the 31st percentile. Fixed in protobufjs 7.5.6.
References
github.com/protobufjs/protobuf.js/security/advisories/GHSA-jvwf-75h9-cwgg
github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v7.5.6
github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v8.0.2
nvd.nist.gov/vuln/detail/CVE-2026-44290
github.com/advisories/GHSA-jvwf-75h9-cwgg
github.com/CVEProject/cvelistV5/tree/main/cves/2026/44xxx/CVE-2026-44290.json
github.com/protobufjs/protobuf.js