JVNDB-2026-021008 | |
MessagePackにおける再帰制御に関する脆弱性 | |
| 概要 | |
MessagePack for C# は C# 用の MessagePack シリアライザーです。バージョン 2.5.301 および 3.1.7 より前の MessagePack-CSharp の JSON 変換ヘルパーには、深さ制限を一貫して適用しない複数の再帰パスが含まれています。これらのパスは通常の型付き MessagePack デシリアライズではなく、JSON 変換コンポーネントに存在します。MessagePackSerializer.ConvertFromJson は FromJsonCore() 内でネストされた JSON 配列やオブジェクトを MessagePackSecurity.MaximumObjectGraphDepth を参照せずに再帰的に処理します。TinyJsonReader.ReadNextToken() はカンマやコロンの区切り文字を再帰的に処理し、長い区切り文字の連続による不正な JSON であっても各文字ごとにスタックフレームを消費します。MessagePackSerializer.ConvertToJson は配列やマップに対して深さチェックを適用しますが、拡張タイプ ext-100 の型なし拡張ブランチは MessagePackSecurity.DepthStep(ref reader) を適用せずに ToJsonCore() を再帰的に呼び出します。これらのパスはいずれも攻撃者が制御する入力によってプロセスのスタックを枯渇させ、キャッチできない StackOverflowException を発生させる可能性があり、キャッチ可能な解析やシリアライズ例外で失敗する代わりにスタックオーバーフローが発生します。この脆弱性はバージョン 2.5.301 および 3.1.7 で修正されました。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 7.5 (重要) [NVD値]
| |
| 影響を受けるシステム | |
|
| |
MessagePack | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/06/22 |
| 登録日 | 2026/06/26 |
| 最終更新日 | 2026/06/26 |



