CVE-2026-70196

Inefficient Algorithmic Complexity
Affects
ASP.NET Core / Form parsing
in
.NET
No items found.
Versions
>=6.0.0 <=6.0.46

Patch Available.

Exclamation circle icon
Patch Available

This Vulnerability has been fixed in the Never-Ending Support (NES) version offered by HeroDevs.

Overview

.NET is a free, open-source, cross-platform framework for building modern apps and powerful cloud services. It consists of a runtime and a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

A denial of service vulnerability (CVE-2026-70196) has been identified in ASP.NET Core's form body parser. When form data arrives in many small pieces, ASP.NET Core re-examines everything it has buffered so far on every read, so an unauthenticated client can make the server spend CPU time that grows with the square of the value length.

Per CWE-407: Inefficient Algorithmic Complexity, the weakness is an algorithm whose worst-case computational complexity is significantly worse than desired, and an attacker can trigger that worst case.

This issue affects ASP.NET Core 6.0 applications on any endpoint that reads URL-encoded form data, on Windows, Linux, and macOS. Microsoft's advisory lists ASP.NET Core 8.0, 9.0 and 10.0 as affected; .NET 6 is past end of life and is not assessed there.

Additionally, if you've deployed self-contained applications targeting any of the impacted versions, these applications are also vulnerable and must be recompiled and redeployed.

Details

Module Info

  • Product: Any NES for .NET 6 ASP.NET Core application at version 6.0.46 or earlier that reads URL-encoded form bodies.
  • Affected packages: ASP.NET Core shared framework (Microsoft.AspNetCore.App), in-box code from Microsoft.AspNetCore.WebUtilities
  • Affected versions:
    • >= 6.0.0 <= 6.0.46
  • Package manager: NuGet, Windows Installer, Docker
  • GitHub repository: https://github.com/dotnet/aspnetcore
  • Published packages: Download .NET (Linux, macOS, and Windows)
  • Fixed in: NES for .NET 6.0.47

Vulnerability Info

This Medium-severity vulnerability is found in the FormPipeReader type in Microsoft.AspNetCore.WebUtilities, part of the ASP.NET Core shared framework.

FormPipeReader parses application/x-www-form-urlencoded bodies by searching the buffered data for the & separator between key-value pairs. When a pair has not fully arrived yet, the reader waits for more data and tries again. Before the fix, each retry in ParseFormValues started the search from the beginning of the unconsumed buffer. A client that sends one long value a few bytes at a time made the server rescan the same growing buffer on every read, so the total work grew quadratically with the value's length. HeroDevs measured a 4 MB value, the default limit, sent 100 bytes at a time taking about 1.9 seconds of parsing on unpatched .NET 6, against about 46 ms with the fix.

The fix remembers how far the previous search reached and resumes from there, rescanning only enough bytes to find a multi-byte separator split across reads.

This vulnerability has been present since at least ASP.NET Core 6.0 and likely earlier.

Mitigation

.NET 6 is End-of-Life and will not receive any updates to address this issue. For more information see .NET and .NET Core official support policy.

Users of the affected components should apply one of the following mitigations:

  • Upgrade affected ASP.NET Core deployments to one of:
    • NES for .NET 6.0.47 or later
    • .NET / ASP.NET Core 8.0.32 or later
    • .NET / ASP.NET Core 9.0.21 or later
    • .NET / ASP.NET Core 10.0.13 or later
  • Leverage a commercial support partner like HeroDevs for post-EOL security support, including NES for .NET 6.0.47 or later.

Credits

Dr.-Ing Ashar Javed (@soaj1664ashar), as credited in Microsoft's advisory.

Vulnerability Details
Severity
Level
CVSS Assessment
Low
>=0 <4
Medium
>=4 <6
High
>=6 <8
Critical
>=8 <10
Medium
ID
CVE-2026-70196
PROJECT Affected
ASP.NET Core / Form parsing
Versions Affected
>=6.0.0 <=6.0.46
NES Versions Affected
Published date
October 13, 2026
≈ Fix date
October 13, 2026
Fixed in
Category
Inefficient Algorithmic Complexity
Vex Document
Download VEXHow do I use it?
Sign up for the latest vulnerability alerts fixed in
NES for .NET
Rss feed icon
Subscribe via RSS
or

By submitting the form I acknowledge receipt of our Privacy Policy.

Thanks for signing up for our Newsletter! We look forward to connecting with you.
Oops! Something went wrong while submitting the form.