CVE-2023-38180

7.5 HIGH

📋 TL;DR

This CVE describes a denial of service vulnerability in .NET and Visual Studio that allows attackers to crash affected applications by sending specially crafted requests. It affects systems running vulnerable versions of .NET Framework, .NET Core, and Visual Studio. The vulnerability can be exploited remotely without authentication.

💻 Affected Systems

Products:
  • .NET Framework
  • .NET Core
  • .NET 5.0
  • .NET 6.0
  • .NET 7.0
  • Visual Studio 2022
  • Visual Studio 2019
Versions: Multiple versions as specified in Microsoft advisory; typically .NET 7.0 prior to specific patches, .NET 6.0 prior to specific patches, and older versions with specific conditions.
Operating Systems: Windows, Linux, macOS
Default Config Vulnerable: ⚠️ Yes
Notes: Affects both server and client applications built with vulnerable .NET versions; exact version ranges vary by product and should be checked against Microsoft's advisory.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete service disruption of affected applications, leading to business downtime and potential data loss if applications handle critical operations.

🟠

Likely Case

Application crashes causing temporary service unavailability, requiring manual restart of affected services.

🟢

If Mitigated

Minimal impact with proper network segmentation and monitoring; services automatically restart but may experience brief downtime.

🌐 Internet-Facing: HIGH - Remote exploitation without authentication makes internet-facing systems particularly vulnerable to DoS attacks.
🏢 Internal Only: MEDIUM - Internal systems are still vulnerable but require attacker access to internal network; risk depends on network segmentation.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Microsoft rates this as 'Exploitation More Likely' in their advisory; the CISA catalog inclusion suggests active exploitation is occurring or expected.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Varies by product: .NET 7.0.10+, .NET 6.0.21+, and specific updates for older versions as per Microsoft advisory

Vendor Advisory: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-38180

Restart Required: Yes

Instructions:

1. Identify affected .NET/Visual Studio installations. 2. Apply Microsoft security updates via Windows Update or download from Microsoft Update Catalog. 3. Restart affected systems and applications. 4. For Linux systems, update via package manager (apt-get update && apt-get upgrade dotnet-sdk-7.0 etc.).

🔧 Temporary Workarounds

Network Segmentation

all

Restrict network access to affected applications to trusted sources only

Rate Limiting

all

Implement rate limiting on application endpoints to reduce impact of DoS attempts

🧯 If You Can't Patch

  • Implement strict network access controls and firewall rules to limit exposure
  • Deploy web application firewalls (WAF) with DoS protection rules enabled

🔍 How to Verify

Check if Vulnerable:

Check installed .NET version with 'dotnet --info' or Windows Registry for .NET Framework versions; compare against patched versions in Microsoft advisory.

Check Version:

dotnet --info (for .NET Core/5/6/7) or check registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP (for .NET Framework)

Verify Fix Applied:

Verify version numbers match or exceed patched versions: .NET 7.0.10+, .NET 6.0.21+, etc. Check Windows Update history for security updates.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected application crashes
  • High memory/CPU usage spikes
  • Multiple failed requests from single sources
  • Stack traces indicating unhandled exceptions in .NET runtime

Network Indicators:

  • High volume of requests to .NET application endpoints
  • Unusual traffic patterns from external sources
  • Requests with malformed headers or parameters

SIEM Query:

source="application_logs" AND ("unhandled exception" OR "crash" OR "terminated") AND process="dotnet" OR process="w3wp"

🔗 References

📤 Share & Export