| タイトル | protobufjs projectのprotobufjsにおける再帰制御に関する脆弱性 |
|---|---|
| 概要 | protobufjsはprotobuf定義をJavaScript(JS)関数にコンパイルします。7.6.1および8.4.1以前のバージョンでは、protobufjsがデコード済みメッセージをプレーンオブジェクトやJSONに変換する際に深さの制限なく再帰してしまう可能性がありました。この問題は、生成されたtoObject()変換およびカスタムのgoogle.protobuf.AnyのJSON変換パスに影響を及ぼしていました。細工されたprotobufバイナリペイロードに深くネストされたAny値が含まれている場合、JSONへの変換中にJavaScriptのコールスタックを枯渇させる恐れがあります。この脆弱性は7.6.1および8.4.1で修正されました。 |
| 想定される影響 | ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。 |
| 対策 | ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年6月22日0:00 |
| 登録日 | 2026年6月29日11:15 |
| 最終更新日 | 2026年6月29日11:15 |
| CVSS3.0 : 重要 | |
| スコア | 7.5 |
|---|---|
| ベクター | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| protobufjs project |
| protobufjs 7.6.1 未満 |
| protobufjs 8.0.0 以上 8.4.1 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年06月29日] 掲載 |
2026年6月29日11:15 |
| 概要 | protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.6.1 and 8.4.1, protobufjs could recurse without a depth limit while converting decoded messages to plain objects or JSON. This affected generated toObject() conversion and the custom google.protobuf.Any JSON conversion path. A crafted protobuf binary payload containing deeply nested Any values could cause the JavaScript call stack to be exhausted during conversion to JSON. This vulnerability is fixed in 7.6.1 and 8.4.1. |
|---|---|
| 公表日 | 2026年6月23日3:16 |
| 登録日 | 2026年6月27日4:10 |
| 最終更新日 | 2026年6月27日5:04 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:*:node.js:*:* | 7.6.1 | ||||
| cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:*:node.js:*:* | 8.0.0 | 8.4.1 | |||