Repository navigation
chore(deps): update dependency protobufjs@<7.5.5 to ^7.5.9 [security] - #451
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/npm-protobufjs-7.5.5-vulnerability
branch
from
October 31, 2026 07:58
e4ea8bf to
30f671b
Compare
renovate
Bot
force-pushed
the
renovate/npm-protobufjs-7.5.5-vulnerability
branch
from
November 1, 2026 09:13
30f671b to
b89f669
Compare
renovate
Bot
force-pushed
the
renovate/npm-protobufjs-7.5.5-vulnerability
branch
from
November 1, 2026 09:20
b89f669 to
3d6380b
Compare
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^7.5.8→^7.5.9protobufjs: Denial of service through unbounded Any expansion during JSON conversion
CVE-2026-48712 / GHSA-wcpc-wj8m-hjx6
More information
Details
Summary
protobufjs could recurse without a depth limit while converting decoded messages to plain objects or JSON. This affected generated
toObject()conversion and the customgoogle.protobuf.AnyJSON conversion path.A crafted protobuf binary payload containing deeply nested
Anyvalues could cause the JavaScript call stack to be exhausted during conversion to JSON.Impact
An attacker who can provide protobuf binary data decoded by an application may be able to crash the process or otherwise cause message conversion to fail with a stack overflow.
This affects applications that decode untrusted protobuf input containing
google.protobuf.Anyvalues and then convert decoded messages to JSON or plain objects with JSON conversion enabled, for example throughJSON.stringify(message),Message#toJSON(), orType.toObject(message, { json: true }).Applications that only decode and re-encode protobuf binary data without converting decoded messages to JSON are not directly affected by this issue.
Preconditions
google.protobuf.Any, and the referencedtype_urlmust resolve to a message type in the loaded protobuf root.Anyvalues that are expanded during conversion.Workarounds
Avoid converting untrusted protobuf messages containing
google.protobuf.Anyvalues to JSON with affected versions. If immediate upgrade is not possible, reject or limit messages with deeply nestedAnypayloads at an outer protocol boundary where feasible, avoid JSON conversion of untrustedAnyvalues, or isolate message conversion in a process that can be safely restarted.Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
protobufjs : Schema-derived names can shadow runtime-significant properties
CVE-2026-54269 / GHSA-f38q-mgvj-vph7
More information
Details
Summary
protobufjs accepted certain schema-derived names that could collide with properties used by protobufjs runtime helpers. The known affected names are fields named
hasOwnProperty, field or oneof names such as$typewhen loaded through protobufjs JSON/reflection descriptors, and service methods whose generated helper name isrpcCall.When affected message or service types were used, protobufjs could read schema-controlled data where it expected an own-property helper, reflected type metadata, or the base RPC helper. This could cause deterministic exceptions or recursive calls in affected decode post-checks, verification, object conversion, reflected JSON serialization, or protobufjs RPC helper invocation.
Impact
An attacker who can provide or influence protobuf schemas or protobufjs JSON descriptors may be able to make affected message or service types unusable, resulting in denial of service for the affected processing path.
Applications using only trusted schemas are affected only if those schemas contain one of the problematic names and the application reaches the affected API path.
The issue is not known to allow code execution by itself.
Preconditions
hasOwnProperty,$typethrough protobufjs JSON/reflection descriptor input,rpcCall.verify, ortoObjectforhasOwnProperty; reflected message JSON serialization for$type; or protobufjs RPC service invocation forrpcCall.Workarounds
Do not load protobuf schemas or protobufjs JSON descriptors from untrusted sources with affected versions. If untrusted schemas or descriptors must be accepted, validate schema-derived field, oneof, and service method names before loading and reject the problematic names described above.
Applications using trusted schemas can avoid the issue by renaming affected fields or service methods, or by avoiding the affected API path.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
protobufjs: Denial of Service via infinite loop in .proto option parsing
CVE-2026-59877 / GHSA-j3f2-48v5-ccww
More information
Details
Summary
protobufjs parsed option names by advancing through schema tokens until it reached an
=token, without checking for end of input. A crafted.protoschema that opens an option declaration but ends prematurely could cause the option parser to loop without ever terminating.This affects the reflection parsing path (
parse,Root.load,Root.loadSync).Impact
An attacker who can provide or influence
.protoschema text parsed by an application may be able to cause the parsing call to never return. Because Node.js is single-threaded, the blocked event loop prevents all other work in the process, resulting in a denial of service that persists until the process is externally terminated.Applications that only encode or decode protobuf binary data with trusted schemas are not directly affected.
Preconditions
.protoschema text influenced by an attacker.parse,Root.load, orRoot.loadSync.=assignment.Workarounds
Do not parse
.protoschemas from untrusted sources with affected versions. If untrusted schema text must be accepted, isolate parsing in a process or worker that can be safely terminated and bound it with a timeout, so a non-returning parse call cannot deny service to the rest of the application.Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Release Notes
protobufjs/protobuf.js (protobufjs@<7.5.5)
v7.5.9: protobufjs: v7.5.9Compare Source
Bug Fixes
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled because a matching PR was automerged previously.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.