protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.6.5 and 8.6.6, protobufjs parsed option names by advancing through schema tokens until reaching an = token without checking for end of input, so a crafted .proto schema that opens an option declaration and ends prematurely can cause parse, Root.load, or Root.loadSync to loop indefinitely. This issue is fixed in versions 7.6.5 and 8.6.6.
Fix
Patch, vendor advisory and mitigation references on NVD 4
- https://github.com/protobufjs/protobuf.js/commit/10fba6d54815ceecca8a06b9a6db490c8f5d2217 Patch
- https://github.com/protobufjs/protobuf.js/commit/fa5c73add738ceb471e74da8cc2f3727c3d0a69f Patch
- https://github.com/protobufjs/protobuf.js/pull/2352 Issue Tracking, Patch
- https://github.com/protobufjs/protobuf.js/security/advisories/GHSA-j3f2-48v5-ccww Mitigation, Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 7.5 · protobufjs_projectNVD modified 2026-10-25 17:10
Affected (CPE criteria) 1
cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:*:node.js:*:*
References 6
- https://github.com/protobufjs/protobuf.js/commit/10fba6d54815ceecca8a06b9a6db490c8f5d2217 Patch
- https://github.com/protobufjs/protobuf.js/commit/fa5c73add738ceb471e74da8cc2f3727c3d0a69f Patch
- https://github.com/protobufjs/protobuf.js/pull/2352 Issue Tracking, Patch
- https://github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v7.6.5 Product, Release Notes
- https://github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v8.6.6 Product, Release Notes
- https://github.com/protobufjs/protobuf.js/security/advisories/GHSA-j3f2-48v5-ccww Mitigation, Vendor Advisory