Skip to content

GHSA-rh58-r7jh-xhx3 BIT-dotnet-2021-26423 BIT-dotnet-sdk-2021-26423 CVE-2021-26423

.NET Core Elevation of Privilege Vulnerability

High NuGet
Severity
7.5 / 10
High · CVSS 3.1
Exploit chance (EPSS)
3.90%
Chance of exploitation in the next 30 days. Higher than 90.27% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
—
Not classified
Fix
Available
23 packages have a fixed version

Description

Microsoft is releasing this security advisory to provide information about a vulnerability in .NET 5.0 and .NET Core 3.1. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.

A denial of service vulnerability exists in .NET 5.0, .NET Core 3.1 and .NET Core 2.1 where .NET (Core) server applications providing WebSocket endpoints could be tricked into endlessly looping while trying to read a single WebSocket frame.

Patches

Other Details

Affected versions

NuGet

PackageVulnerableFixed in
Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.osx-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.LLVM.osx-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.linux-arm
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.linux-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.linux-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.Mono.osx-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-arm
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.linux-arm
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-arm64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.linux-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-musl-arm
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-musl-arm64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.linux-musl-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-musl-x64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.linux-musl-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.linux-x64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.linux-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.osx-x64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.osx-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.rhel.6-x64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.win-arm
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.win-arm
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.win-arm64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.win-arm64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.win-x64
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.win-x64
>= 5.0.0, < 5.0.9
5.0.9
Microsoft.NETCore.App.Runtime.win-x86
>= 3.1.0, < 3.1.18
3.1.18
Microsoft.NETCore.App.Runtime.win-x86
>= 5.0.0, < 5.0.9
5.0.9

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-arm64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-arm64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.linux-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.osx-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.AOT.osx-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-arm64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-arm64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.linux-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.LLVM.osx-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.LLVM.osx-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.linux-arm NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.linux-arm --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.linux-arm64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.linux-arm64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.linux-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.linux-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.Mono.osx-x64 NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.Mono.osx-x64 --version 5.0.9

Microsoft.NETCore.App.Runtime.linux-arm NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-arm --version 3.1.18

Microsoft.NETCore.App.Runtime.linux-arm64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-arm64 --version 3.1.18

Microsoft.NETCore.App.Runtime.linux-musl-arm NuGet → 5.0.9

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-musl-arm --version 5.0.9

Microsoft.NETCore.App.Runtime.linux-musl-arm64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-musl-arm64 --version 3.1.18

Microsoft.NETCore.App.Runtime.linux-musl-x64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-musl-x64 --version 3.1.18

Microsoft.NETCore.App.Runtime.linux-x64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.linux-x64 --version 3.1.18

Microsoft.NETCore.App.Runtime.osx-x64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.osx-x64 --version 3.1.18

Microsoft.NETCore.App.Runtime.rhel.6-x64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.rhel.6-x64 --version 3.1.18

Microsoft.NETCore.App.Runtime.win-arm NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.win-arm --version 3.1.18

Microsoft.NETCore.App.Runtime.win-arm64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.win-arm64 --version 3.1.18

Microsoft.NETCore.App.Runtime.win-x64 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.win-x64 --version 3.1.18

Microsoft.NETCore.App.Runtime.win-x86 NuGet → 3.1.18

dotnet
dotnet add package Microsoft.NETCore.App.Runtime.win-x86 --version 3.1.18

Severity breakdown

CVSS 3.1 7.5

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
CVE-2020-1147
.NET Framework, SharePoint Server, and Visual Studio Remote Code Execution Vulnerability
High Known exploited Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-87vj-4hqv-22p9
Microsoft Security Advisory CVE-2026-96233 - .NET and Visual Studio Denial of Service Vulnerability
High Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-2j93-m82w-73j2
Microsoft Security Advisory CVE-2026-96231 - .NET and Visual Studio Elevation of Privilege Vulnerability
High Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-w6wh-p4g7-mpj2
Microsoft Security Advisory CVE-2026-96225 - .NET and Visual Studio Elevation of Privilege Vulnerability
High Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-4mpw-cpwj-hxxj
Microsoft Security Advisory CVE-2026-70197 - .NET and Visual Studio Remote Code Execution Vulnerability
High Also affects Microsoft.NETCore.App.Runtime.win-arm64
GHSA-fqpq-cx42-9jmm
Microsoft Security Advisory CVE-2026-70194 - .NET and Visual Studio Security Feature Bypass Vulnerability
Medium Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-3rxq-g8rj-r2cf
Microsoft Security Advisory CVE-2026-69651 - .NET and Visual Studio Denial of Service Vulnerability
High Also affects Microsoft.NETCore.App.Runtime.linux-arm64
GHSA-wxxw-5cvc-53j7
Microsoft Security Advisory CVE-2026-66822 - .NET and Visual Studio Information Disclosure Vulnerability
Medium Also affects Microsoft.NETCore.App.Runtime.linux-arm64
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor