dotnet · Nerdbank.MessagePackHeads-up
Nerdbank.MessagePack deserializers vulnerable to memory amplification via collection preallocation
Nerdbank.MessagePack deserializers for collection-shaped types allocate storage based on attacker-controlled element counts from MessagePack array/map headers b
What changed
Nerdbank.MessagePack deserializers for collection-shaped types allocate storage based on attacker-controlled element counts from MessagePack array/map headers before reading elements, enabling memory amplification attacks.
Who it affects
Applications using Nerdbank.MessagePack to deserialize untrusted MessagePack data into collections (arrays, dictionaries, etc.), including ASP.NET Core, SignalR, RPC, queue, or storage endpoints.
What to do today
Update Nerdbank.MessagePack to a patched version that limits preallocation based on actual data size.
The trail
Collected→
Audited→
Written→
Published