| 概要 | MessagePack for C# is a MessagePack serializer for C#. Prior to 2.5.301 and 3.1.7, UnsafeBlitFormatterBase<T>.Deserialize reads an attacker-controlled byteLength from an extension payload and allocates an array based on that value before validating it against the extension header length or remaining payload bytes. The outer extension header is bounded by available input, but that bound is not used to constrain the inner byteLength before allocation. A very small payload can therefore request a very large T[] allocation. This vulnerability is fixed in 2.5.301 and 3.1.7. |
|---|---|
| 公表日 | 2026年6月23日7:16 |
| 登録日 | 2026年6月27日4:12 |
| 最終更新日 | 2026年6月26日1:16 |
| CVSS3.1 : HIGH | |
| スコア | 7.5 |
|---|---|
| ベクター | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| 攻撃元区分(AV) | ネットワーク |
| 攻撃条件の複雑さ(AC) | 低 |
| 攻撃に必要な特権レベル(PR) | 不要 |
| 利用者の関与(UI) | 不要 |
| 影響の想定範囲(S) | 変更なし |
| 機密性への影響(C) | なし |
| 完全性への影響(I) | なし |
| 可用性への影響(A) | 高 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:messagepack:messagepack:*:*:*:*:*:c\#:*:* | 2.5.301 | ||||
| cpe:2.3:a:messagepack:messagepack:*:*:*:*:*:c\#:*:* | 3.0.3 | 3.1.7 | |||
| タイトル | MessagePackにおける制限またはスロットリング無しのリソースの割り当てに関する脆弱性 |
|---|---|
| 概要 | MessagePack for C# は C# 向けの MessagePack シリアライザです。バージョン 2.5.301 および 3.1.7 より前の UnsafeBlitFormatterBaseT.Deserialize は、拡張ペイロードから攻撃者によって制御される byteLength を読み取り、その値に基づいて配列を割り当てますが、割り当て前に拡張ヘッダの長さまたは残りのペイロードバイト数と照合しません。外側の拡張ヘッダは利用可能な入力で制限されていますが、その制限は割り当て前に内側の byteLength の制約に使われません。そのため、非常に小さなペイロードで非常に大きな T[] を割り当てることが可能です。この脆弱性はバージョン 2.5.301 および 3.1.7 で修正されました。 |
| 想定される影響 | ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。 |
| 対策 | ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年6月22日0:00 |
| 登録日 | 2026年6月26日11:57 |
| 最終更新日 | 2026年6月26日11:57 |
| MessagePack |
| MessagePack 2.5.301 未満 |
| MessagePack 3.0.3 以上 3.1.7 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年06月26日] 掲載 |
2026年6月26日11:57 |