MessagePack is vulnerable to Denial of Service (DoS)
53
CVE Score
Medium
Denial of Service (DoS)
PrimitiveObjectFormatter allocates an object[] sized to the declared array length before the configured maximum object-graph depth is enforced, when deserializing untrusted MessagePack data into System.Object. Because nested array headers can reuse the same trailing byte count for length validation, a roughly 31.5 KiB payload can trigger about 114.7 MiB of managed-heap allocation, an amplification of about 3,800x, before the depth check finally rejects it. Repeated requests cause severe memory pressure, excessive garbage collection, and process termination or loss of availability, reachable remotely for example through an ASP.NET Core SignalR hub method that accepts an object parameter with the MessagePack protocol enabled. The fix enforces the depth limit before allocating the declared array length.
Upgrade the MessagePack library to the patch version.
You are affected if you are using a version that falls within the vulnerable range and you deserialize untrusted MessagePack data into System.Object or another type resolved by PrimitiveObjectFormatter.
0.0.1 - 2.5.302
Fixed in 2.5.3033.0.0 - 3.1.8
Fixed in 3.1.9MessagePack is vulnerable to Denial of Service (DoS) in versions 0.0.1 - 2.5.302 and 3.0.0 - 3.1.8.
Secure your code, cloud, and runtime in one central system. Connect a repo to discover what the reasoning agents find in your codebase.
No credit card required | Scan results in 32 seconds.
I consent to receiving marketing communications based on Aikido’s Privacy Policy.
SOC 2Compliant
ISO 27001Compliant
ISO 42001Compliant© All Intel data is openly available and commercially licensed.