CVE-2026-48511
Description
MessagePack for C# is a MessagePack serializer for C#. Prior to 2.5.301 and 3.1.7, ExpandoObjectFormatter.Deserialize populates System.Dynamic.ExpandoObject by calling IDictionary<string, object>.Add for each map entry. ExpandoObject internally maintains member names in array-like structures, so inserting many distinct keys can require repeated linear scans and array copies. For large attacker-controlled maps, this produces quadratic CPU and allocation behavior. The issue is especially surprising because ExpandoObjectResolver.Options is configured with MessagePackSecurity.UntrustedData, but collision-resistant dictionary comparers cannot protect ExpandoObject insertion internals. This vulnerability is fixed in 2.5.301 and 3.1.7.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
MessagePackNuGet | < 2.5.301 | 2.5.301 |
MessagePackNuGet | >= 3.0, < 3.1.7 | 3.1.7 |
Affected products
2- Range: <2.5.301 and <3.1.7
Patches
Vulnerability mechanics
References
3- github.com/MessagePack-CSharp/MessagePack-CSharp/security/advisories/GHSA-2x83-8g95-xh59nvdMitigationVendor AdvisoryWEB
- github.com/advisories/GHSA-2x83-8g95-xh59ghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2026-48511ghsaADVISORY
News mentions
1- MessagePack C#: Ten Vulnerabilities Disclosed Together, Affecting Deserialization and SecurityVypr Intelligence · Jun 22, 2026