Miggo Logo

CVE-2020-1108: .NET Core & .NET Framework Denial of Service Vulnerability

7.5

CVSS Score
3.1

Basic Information

EPSS Score
0.81706%
CWE
-
Published
5/24/2022
Updated
2/2/2023
KEV Status
No
Technology
TechnologyC#

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
Microsoft.NETCore.Appnuget>= 2.1.0, < 2.1.182.1.18
Microsoft.NETCore.App.Runtime.linux-armnuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.linux-arm64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.linux-musl-arm64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.linux-musl-x64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.linux-x64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.osx-x64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.rhel.6-x64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.win-armnuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.win-arm64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.win-x64nuget>= 3.1.0, < 3.1.43.1.4
Microsoft.NETCore.App.Runtime.win-x86nuget>= 3.1.0, < 3.1.43.1.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability involves improper handling of web requests in ASP.NET Core's Kestrel server. While no direct patch diffs are available, Microsoft's advisory explicitly mentions HTTP request processing fixes. The ParseHeaders() and ParseRequestLine() functions are critical points in HTTP message parsing where improper input handling could lead to DoS. These components were previously involved in similar CVEs (CVE-2020-1045) and are logical candidates for request processing vulnerabilities. The medium confidence reflects the lack of direct commit evidence, but aligns with Microsoft's description of the fix scope and Kestrel's architecture.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

* **ni*l o* s*rvi** vuln*r**ility *xists w**n .N*T *or* or .N*T *r*m*work improp*rly **n*l*s w** r*qu*sts, *k* '.N*T *or* & .N*T *r*m*work **ni*l o* S*rvi** Vuln*r**ility'.

Reasoning

T** vuln*r**ility involv*s improp*r **n*lin* o* w** r*qu*sts in *SP.N*T *or*'s K*str*l s*rv*r. W*il* no *ir**t p*t** *i**s *r* *v*il**l*, Mi*roso*t's **visory *xpli*itly m*ntions `*TTP` r*qu*st pro**ssin* *ix*s. T** `P*rs******rs()` *n* `P*rs*R*qu*st