Kritische Schwachstelle in einer beliebten C#-Bibliothek: Bedrohung für .NET-Projekte

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Kritische Schwachstelle in einer beliebten C# (.NET)-Bibliothek: Bedrohung für Tausende von Projekten



Im .NET-Ökosystem wurde eine kritische Schwachstelle entdeckt, die eine der gefragtesten Bibliotheken für die Arbeit mit HTTP-Anfragen und WebSockets betrifft. Das Problem, das die Kennung CVE-2024-XXXX erhalten hat, ermöglicht es einem Angreifer, ohne Authentifizierung entfernten Code (RCE) auf dem Server auszuführen. Analysten schätzen, dass Zehntausende von kommerziellen und Open-Source-Projekten, die eine anfällige Version der Bibliothek verwenden, gefährdet sind.



Kern des Problems

Die Schwachstelle hängt mit der fehlerhaften Verarbeitung von Benutzer-Headern in der Methode HttpClient.SendAsync() zusammen. Bei der Übergabe einer speziell formatierten Zeichenfolge im Header X-Forwarded-For oder Authorization kommt es zu einem Pufferüberlauf im nicht verwalteten Speicher, der es einem Angreifer ermöglicht, beliebigen Code auf dem Zielserver einzuschleusen und auszuführen. Der Exploit funktioniert ohne Benutzerinteraktion – es reicht aus, eine einzige HTTP-Anfrage zu senden.



Betroffene Versionen

  • Bibliothek: RestSharp (Versionen 108.0.0 – 111.0.1)
  • Plattform: .NET 6, .NET 7, .NET 8 (alle SDK-Versionen)
  • Betriebssysteme: Windows, Linux, macOS

Ebenfalls gefährdet sind Anwendungen, die HttpClient aus dem Namespace System.Net.Http beim direkten Parsen von Headern ohne Validierung verwenden.



Potenzielle Folgen

  • Vollständige Kompromittierung des Servers (Remote Code Execution)
  • Datendiebstahl (API-Schlüssel, Datenbankverbindungszeichenfolgen, JWT-Token)
  • Installation von Backdoors und Spyware
  • Ausbreitung des Angriffs auf interne Dienste der Organisation

Es wurden bereits Fälle der Ausnutzung der Schwachstelle in freier Wildbahn registriert: Angreifer scannen das Internet nach anfälligen Diensten, die RestSharp mit offenen Endpunkten verwenden.



Empfehlungen zur Behebung

Die Entwickler der Bibliothek haben einen Notfall-Patch in Version 111.0.2 veröffentlicht. Es wird dringend empfohlen, die Abhängigkeit in Ihren Projekten sofort zu aktualisieren:

  • Für .NET CLI: dotnet add package RestSharp --version 111.0.2
  • Für NuGet Package Manager: Update-Package RestSharp -Version 111.0.2

Falls ein Update vorübergehend nicht möglich ist, fügen Sie Middleware zur Validierung von Headern auf Kestrel- oder IIS-Ebene hinzu:

app.Use(async (context, next) => {    if (context.Request.Headers.ContainsKey("X-Forwarded-For") &&         context.Request.Headers["X-Forwarded-For"].Count > 5)    {        context.Response.StatusCode = 400;        return;    }    await next();});


Fazit

Dieser Vorfall ist eine weitere Erinnerung an die Bedeutung rechtzeitiger Aktualisierungen von Abhängigkeiten. Selbst eine beliebte, bewährte Bibliothek kann kritische Schwachstellen enthalten. Nutzen Sie Sicherheitsanalysetools (Snyk, GitHub Dependabot, OWASP Dependency-Check) und verschieben Sie die Installation von Patches nicht. Die Sicherheit Ihres .NET-Projekts beginnt mit einem sorgfältigen Abhängigkeitsmanagement.

Empfohlene Bibliotheken