CVE-2026-48509: MessagePack-CSharp ASP.NET Core MessagePackInputFormatter Defaults To Vulnerability
MODERATECVE-2026-48509 is a MODERATE asp.net core messagepackinputformatter defaults to vulnerability (CWE-1188: Initialization of a Resource with an Insecure Default) affecting MessagePack-CSharp libraries in the NuGet ecosystem. The issue involves asp.net core messagepackinputformatter defaults to trusteddata for http request bodies. Remediation is available by upgrading affected packages to version 2.5.301, 3.1.7.
CVE-2026-48509 at a Glance
How to Fix CVE-2026-48509
To remediate this vulnerability, upgrade all affected MessagePack-CSharp dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade MessagePack to 2.5.301
Upgrade MessagePack to 3.1.7
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for MessagePack
How to Check if You Are Affected
To determine whether your application is affected by CVE-2026-48509, inspect your project dependencies for MessagePack-CSharp:
inspect dependencies for MessagePack
Analyze the terminal output to locate any version of MessagePack-CSharp in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 2.5.301), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-1188: Initialization of a Resource with an Insecure Default, where the product initializes or sets a resource with a default that is intended to be changed by the product's installer, administrator, or maintainer, but the default is not secure. In MessagePack-CSharp, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2026-48509 Affected MessagePack-CSharp Versions
2 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
MessagePack
|
NuGet |
< 2.5.301
|
2.5.301
|
|
MessagePack
|
NuGet |
≥ 3.0
< 3.1.7
|
3.1.7
|
References
Frequently Asked Questions
What is CVE-2026-48509?
Which MessagePack-CSharp versions are affected?
What version fixes CVE-2026-48509?
Is MessagePack affected?
What CWE is associated with CVE-2026-48509?
How can I check NuGet dependencies for CVE-2026-48509?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-2f33-pr97-265q",
"modified" : "2026-06-25T18:52:46Z",
"published" : "2026-06-25T18:52:46Z",
"aliases" : [ "CVE-2026-48509" ],
"summary" : "MessagePack-CSharp: ASP.NET Core MessagePackInputFormatter defaults to TrustedData for HTTP request bodies",
"details" : "## Summary\n\nThe parameterless `MessagePackInputFormatter()` constructor uses default serializer options, which resolve to `MessagePackSerializerOptions.Standard` with `MessagePackSecurity.TrustedData`. The formatter is designed for ASP.NET Core MVC request bodies, which commonly cross an HTTP trust boundary.\n\nThis insecure default can expose applications to denial-of-service attacks that `MessagePackSecurity.UntrustedData` is intended to mitigate, such as hash-collision attacks against dictionary-like model properties.\n\n## Impact\n\nApplications are affected when they register `new MessagePackInputFormatter()` without explicitly passing serializer options configured for untrusted data.\n\nAn unauthenticated or otherwise untrusted HTTP client can send MessagePack request bodies that are deserialized using the trusted-data posture. For models containing hash-based collections, this can enable algorithmic complexity attacks using colliding keys. The default constructor makes the unsafe posture easy to use at the exact boundary where request bodies should be treated as untrusted.\n\n## Affected components\n\n- Package: `MessagePack.AspNetCoreMvcFormatter`\n- API: `MessagePackInputFormatter()` parameterless constructor\n- Scenario: ASP.NET Core MVC model binding from HTTP request bodies\n- Finding IDs: `MESSAGEPACKCSHARP-OPEN-009`, duplicate `MESSAGEPACKCSHARP-095`\n\n## Patches\n\nFixes are prepared and will be released in coordinated patch versions.\n\nUpgrade guidance:\n\n1. Upgrade `MessagePack.AspNetCoreMvcFormatter` to the patched version for your release line.\n2. Upgrade companion MessagePack packages in the same dependency graph to the coordinated patched versions.\n\nThe fix should default the parameterless constructor to `MessagePackSerializerOptions.Standard.WithSecurity(MessagePackSecurity.UntrustedData)`, or require callers to pass explicit options so the trust posture is deliberate.\n\n## Workarounds\n\nDo not use the parameterless constructor on affected versions. Register the formatter with explicit untrusted-data options, for example:\n\n```csharp\noptions.InputFormatters.Add(\n new MessagePackInputFormatter(\n MessagePackSerializerOptions.Standard.WithSecurity(MessagePackSecurity.UntrustedData)));\n```\n\nAlso apply normal HTTP request-size limits and model validation appropriate for your service.\n\n## Resources\n\n- `MESSAGEPACKCSHARP-OPEN-009`: MVC input formatter defaults to trusted-data security posture\n- `MESSAGEPACKCSHARP-095`: duplicate finding for the same root cause\n- CWE-1188: Initialization of a Resource with an Insecure Default",
"severity" : [ {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "NuGet",
"name" : "MessagePack"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "2.5.301"
} ]
} ]
}, {
"package" : {
"ecosystem" : "NuGet",
"name" : "MessagePack"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "3.0"
}, {
"fixed" : "3.1.7"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/MessagePack-CSharp/MessagePack-CSharp/security/advisories/GHSA-2f33-pr97-265q"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-48509"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/MessagePack-CSharp/MessagePack-CSharp"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-1188" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2026-06-25T18:52:46Z",
"nvd_published_at" : "2026-06-22T22:16:47Z"
}
}