CVE-2023-36788
High · 7.8CVSS
7.8
EPSS
1.0%
Published
Sep 12, 2023
CISA due date
—
Cloudanix analysis
A flaw in the software could allow someone to run harmful code on computers, potentially giving them control over data and systems.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Library
- Class
- RCE
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The vulnerability permits arbitrary code execution on affected systems by exploiting a flaw in .NET Framework handling, allowing an attacker to run malicious code with high impact on confidentiality, integrity, and availability.
Why it matters to the business
Successful exploitation could lead to full system compromise, data breaches, or service disruption across dependent applications and forums using the affected software, increasing operational risk and potential regulatory exposure.
How an attack unfolds
An attacker crafts a malicious input or file that triggers the .NET Framework flaw when processed by the application, leading to remote code execution without requiring elevated privileges or user interaction beyond opening the content.
How to fix it
Update all instances of discourse/discourse to the commit 1b288236387fc0a823e4f15f1aea8dde81b49d53 or later. Apply the corresponding .NET Framework security updates from Microsoft where applicable and verify the patch deployment across the environment.
How to confirm the fix worked
Confirm the software version or commit hash matches the fixed release, review changelog entries for the vulnerability resolution, and conduct targeted testing with known exploit patterns to ensure the code path no longer allows code execution.
Typical attack path
- Identify a target running the vulnerable Discourse version or .NET-dependent component
- Deliver a specially crafted payload via local file or user-supplied input
- Trigger processing that invokes the vulnerable .NET code path
- Execute arbitrary commands or install persistent access mechanisms
How to detect it
Examine application and system logs for unusual process spawns or code execution following file uploads or content processing; look for indicators tied to .NET runtime errors or unexpected assemblies being loaded.
What your security team should do
- Prioritize patching Discourse instances to the specified commit within standard change windows
- Monitor for any downstream dependents and apply updates promptly
- Review application logs for unexpected code execution attempts post-patch
- Maintain inventory of all .NET Framework versions in use
The record
.NET Framework Remote Code Execution Vulnerability
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:22.04:LTS | dotnet6 | 0 | No fix |
| Ubuntu:22.04:LTS | dotnet7 | 0 | No fix |
Related vulnerabilities
- CVE-2024-38229 Microsoft Security Advisory CVE-2024-38229 | .NET Remote Code Execution Vulnerability Also affects dotnet6
- CVE-2024-30105 .NET Core and Visual Studio Denial of Service Vulnerability Also affects dotnet6
- CVE-2023-38178 .NET Core and Visual Studio Denial of Service Vulnerability Also affects dotnet6
- CVE-2022-38013 .NET Core and Visual Studio Denial of Service Vulnerability Also affects dotnet6
- CVE-2024-43498 .NET Remote Code Execution Vulnerability Also affects dotnet7
- CVE-2024-43499 .NET Denial of Service Vulnerability Also affects dotnet7
- CVE-2024-38081 .NET, .NET Framework, and Visual Studio Elevation of Privilege Vulnerability Also affects dotnet7