30秒で判断
- 対応すべき人: protobufjs 7.5.6 未満または 8.0.2 未満を使い、信頼できない
.proto記述子(descriptor)を扱うアプリケーションの利用者 - 対応不要な人: protobufjs を使っていない、修正版を使用中、または扱う記述子がすべて信頼済みの場合
- 確認コマンド:
npm ls protobufjsで解決済みバージョンを確認
概要
protobufjs は protobuf 定義を JavaScript 関数へコンパイルするライブラリです。7.5.6 未満および 8.0.2 未満のバージョンでは、toObject 変換用に生成される JavaScript に、スキーマ制御下の bytes フィールドの既定値から派生した安全でない式が含まれ得ます。非文字列の既定値を持つ bytes フィールドを含む細工された記述子により、攻撃者制御のコードが生成された変換関数へ出力される可能性があります。
protobufjs は gRPC 関連ライブラリなどの間接依存として広く含まれるため、直接依存していないアプリケーションでも影響を受ける場合があります。影響範囲の把握には依存ツリー全体の確認が重要です。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSS スコア | 8.8(High) |
| 攻撃元区分(AV) | ネットワーク |
| 攻撃条件の複雑さ(AC) | 低 |
| CWE | CWE-94(Code Injection) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン | 修正バージョン |
|---|---|---|---|
| protobufjs | protobufjs | 7.x(7.5.6 未満) | 7.5.6 |
| protobufjs | protobufjs | 8.x(8.0.2 未満) | 8.0.2 |
修正バージョンと回避策
- 修正: protobufjs 7.5.6 または 8.0.2 以降へアップデート
- 回避策: 信頼できない
.proto記述子を読み込ませない - 確認方法:
npm ls protobufjsで直接・間接依存のバージョンを確認
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
