Eine Webshell kann einem Angreifer dauerhafte Befehlsausführung über einen kompromittierten Webserver verschaffen. Selbst wenn die ursprüngliche Schwachstelle nicht mehr sichtbar ist, hinterlässt das Erstellen oder Ändern serverseitig ausführbarer Dateien Spuren, die Verteidiger überwachen können.
Die Quelle definiert zwei sich ergänzende Erkennungsansätze: Wazuh-Dateiintegritätsüberwachung und Sysmon-Ereignisse zur Dateierstellung.
Warum die Überwachung von Web-Shell-Dateien wichtig ist
Das von der Suche abgedeckte Verhalten umfasst beliebiges Hochladen von Dateien, Path Traversal, Deserialisierung, Befehlsinjektion und Persistenz nach RCE.
Die Erkennung konzentriert sich auf Dateierweiterungen und Verzeichnisse, die üblicherweise mit serverseitiger Ausführung verbunden sind:
ASPX-Dateien unter SharePoint oder IIS;
JSP-Dateien in Java-Anwendungsverzeichnissen;
PHP-Dateien in Web-Stammverzeichnissen;
CGI-Dateien in CGI-Verzeichnissen;
ASHX-Dateien unter IIS.
Eine neue Datei an einem dieser Orte ist nicht automatisch bösartig. Anwendungen und Bereitstellungen können legitim Dateien erstellen. Unerwartete serverseitige Skripte, insbesondere in Produktionsumgebungen, sollten jedoch geprüft werden.
Wazuh-Abfrage zur Dateiintegritätsüberwachung
rule.groups:syscheck and syscheck.event:(added or modified) and syscheck.path:(*spinstall*.aspx or *\_layouts\*.aspx or *\inetpub\wwwroot\*.aspx or */webapps/*.jsp or */j2ee/cluster/apps/*.jsp or */htdocs/*.php or */www/*.php or */public_html/*.php or */cgi-bin/*.cgi)
Diese Abfrage überwacht Dateien, die in ausgewählten Anwendungspfaden hinzugefügt oder geändert wurden.
Sysmon-Abfrage zur Dateierstellung
data.win.system.eventID:11 and data.win.eventdata.targetFilename:(*spinstall*.aspx or *\_layouts\*.aspx or *\inetpub\wwwroot\*.aspx or *\webapps\*.jsp or *\wwwroot\*.ashx)
Die Sysmon-Ereignis-ID 11 bietet eine weitere Möglichkeit, die Erstellung verdächtiger Dateien auf Windows-Systemen zu erkennen.
Die Quelle verzeichnete in den vorangegangenen 30 Tagen null Treffer.
So untersuchen Sie einen Treffer
Ein einzelnes Dateiereignis sollte mit Kontext angereichert werden, bevor eine Schlussfolgerung gezogen wird.
Wichtige Fragen sind:
Welcher Prozess hat die Datei erstellt oder geändert?
Welches Konto hat die Aktion ausgeführt?
Gab es zur gleichen Zeit eine Bereitstellung oder ein Einspielen von Patches?
Passt der Dateiname zur Basislinie der Anwendung?
Wurde nach der Erstellung per HTTP auf die Datei zugegriffen?
Hat der Server anschließend
cmd.exe, PowerShell oder eine andere Shell gestartet?Enthält die Datei unerwartete Skript- oder Befehlsausführungsfunktionen?
Auch ein Hashwertvergleich mit bekannten, unveränderten Anwendungspaketen kann helfen festzustellen, ob die Datei zu einer freigegebenen Bereitstellung gehört.
Korrelation mit der Prozessaktivität
Die Erkennung von Web Shells wird aussagekräftiger, wenn Dateiereignisse mit der Prozesserstellung korreliert werden.
Zum Beispiel:
new ASPX file → HTTP access → w3wp.exe → powershell.exe
bietet mehr Sicherheit als jedes einzelne Ereignis für sich.
Dasselbe gilt für Java- oder PHP-Systeme. Eine neue JSP- oder PHP-Datei, gefolgt von einer unerwarteten Shell-Ausführung, verdient eine deutlich höhere Priorität.
Die Erkennung abstimmen
Da Anwendungsbereitstellungen Webordner legitim ändern, sollte die Feinabstimmung bekannte Veröffentlichungsabläufe und freigegebene Wartungsfenster beachten.
Ausnahmen sollten spezifisch sein. Statt ein ganzes Web-Stammverzeichnis auszuschließen, sollten Sie eine Ausnahme auf einen bekannten Bereitstellungsprozess, einen erwarteten Pfad, ein freigegebenes Paket oder ein Dienstkonto beschränken.
Ziel ist es, die Sichtbarkeit unerwarteter Dateiänderungen zu erhalten und zugleich das Rauschen durch kontrollierte Änderungen zu verringern.
Operativer Einsatz
Die Quelle hat im 30-Tage-Zeitraum keine Treffer identifiziert, doch das Ausbleiben von Ereignissen kann dennoch nützlich sein. Eine Regel mit geringem Volumen kann zu einem hochwertigen Alarm werden, wenn sie in einer stabilen Produktionsumgebung eingesetzt wird, in der sich serverseitig ausführbare Dateien nur selten ändern.
Für Webserver, Anwendungsplattformen und SharePoint-Umgebungen bleibt Dateiintegritätsüberwachung eine wichtige Ergänzung zur Prozess- und Netzwerktelemetrie bei der Suche nach Ausnutzung und Persistenz.

