MessagePackにおけるアルゴリズムの複雑さに関する脆弱性
タイトル MessagePackにおけるアルゴリズムの複雑さに関する脆弱性
概要

MessagePack for C# は C# 用の MessagePack シリアライザです。バージョン 2.5.301 および 3.1.7 より前では、ExpandoObjectFormatter.Deserialize は各マップエントリに対して IDictionarystring, object.Add を呼び出して System.Dynamic.ExpandoObject を構築します。ExpandoObject は内部的にメンバー名を配列のような構造で管理しているため、多数の異なるキーを挿入すると繰り返しの線形スキャンと配列のコピーが必要になる場合があります。攻撃者が制御する大規模なマップでは、これにより CPU 使用率と割り当てが二次的に増加する挙動が発生します。この問題は、ExpandoObjectResolver.Options が MessagePackSecurity.UntrustedData に設定されているにもかかわらず、衝突耐性のある辞書の比較器が ExpandoObject の挿入処理を保護できないため、特に驚くべきものです。この脆弱性はバージョン 2.5.301 および 3.1.7 で修正されています。

想定される影響 ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。 
対策

ベンダ情報を参照して適切な対策を実施してください。

公表日 2026年6月22日0:00
登録日 2026年6月26日11:57
最終更新日 2026年6月26日11:57
CVSS3.0 : 重要
スコア 7.5
ベクター CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
MessagePack
MessagePack 2.5.301 未満
MessagePack 3.0.3 以上 3.1.7 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
変更履歴
No 変更内容 変更日
1 [2026年06月26日]
  掲載
2026年6月26日11:57