Sophos Endpoint unter Windows per CLI scannen
Für einen einzelnen Verdachtsfall genügt oft der Scan aus der lokalen Oberfläche. In einem RMM-Runbook, bei einer Incident Response oder für einen definierten Pfad ist die Windows-CLI genauer. Sie wird mit Sophos Endpoint installiert und meldet Detections zusätzlich an Sophos Central.
Planung, Scheduled Scans, Laufzeitanalyse und File-Scanner-Health behandelt der übergeordnete Artikel Sophos Endpoint Scans planen und troubleshooten.
Pfad und Hilfe
Das Werkzeug liegt standardmässig unter:
C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe
Eine administrative PowerShell zeigt die verfügbaren Scanoptionen:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" help scan
Die Hilfe der lokal installierten Version ist massgebend. Das Werkzeug gehört zum Windows-Agenten; für macOS gilt dieser Pfad nicht.
Systemscan ausführen
Ein vollständiger Systemscan läuft mit den Rechten des lokalen Systemprozesses:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --full --noui
Ein schneller Systemscan konzentriert sich auf häufig verwendete Dateien, laufende und kürzlich ausgeführte Prozesse, Autostarts, MBR und Arbeitsspeicher:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --quick --noui
Bei --system werden keine zusätzlichen Targets angegeben. Dateien, auf die der lokale Systemprozess keinen Zugriff hat, etwa benutzergebundene EFS-Inhalte, können dadurch ungescannt bleiben.
Datei, Ordner oder Laufwerk scannen
Ein gezielter Scan läuft mit den Rechten des aufrufenden Benutzers:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "C:\Users\Public\Downloads"
Ein komplettes Laufwerk benötigt den abschliessenden Backslash:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "D:\"
D: ohne Backslash bezeichnet normalerweise nur das aktuelle Verzeichnis dieses Laufwerks. UNC-Pfade werden unterstützt, sofern das aufrufende Konto Zugriff besitzt.
Wildcards sind in Ordner- und Dateinamen möglich, nicht aber in Laufwerksnamen. Eine Expansion im letzten Pfadelement ist verlässlicher als ein Wildcard-Ausdruck in einem übergeordneten Ordner.
Archive und ausführliche Ausgabe
Mit --expand_archives werden unterstützte Archive geöffnet und deren Inhalte geprüft. Das erhöht Laufzeit und I/O und wird deshalb gezielt eingesetzt.
--noui unterdrückt die Oberfläche und wartet bis zum Ende des Scans. Erst zusammen damit ist --verbose gültig:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui --verbose --expand_archives "C:\IR\Evidence"
Eine sehr grosse Verbose-Ausgabe wird nicht unkontrolliert in RMM-Logs geschrieben. Pfade können Benutzernamen und sensible Projektinformationen enthalten.
Exitcodes korrekt behandeln
| Code | Bedeutung |
|---|---|
0 | Scan erfolgreich, keine Malware gefunden |
1 | Fehler bei der Befehlsverarbeitung |
2 | unerwarteter Fehler beim Start des Werkzeugs |
3 | mindestens eine Bedrohung erkannt |
4 | mindestens eine Datei mit Scanfehler |
5 | mindestens eine verschlüsselte Datei |
6 | mindestens ein nicht unterstütztes Format |
7 | mindestens eine Datei nicht zugreifbar |
Wenn mehrere Zustände auftreten, liefert das Werkzeug den schwerwiegendsten Code. Ein Wert ungleich null bedeutet deshalb nicht automatisch Malware. Umgekehrt ist Code 0 kein Beweis, dass jede denkbare Datei erreichbar und jede Cloud-Abfrage möglich war.
JSON für Automatisierung
--json schreibt am Ende ein strukturiertes Ergebnis nach stdout. Ausser bei fatalen Fehlern mit Code 1 oder 2 kann ein Skript die Zusammenfassung und betroffenen Dateien direkt auswerten:
$cli = "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe"
$json = & $cli scan --noui --json "C:\Users\Public\Downloads"
$exitCode = $LASTEXITCODE
if ($json) {
$result = $json | ConvertFrom-Json
$result.summary
}
exit $exitCode
Bei einem User Scan enthält die Ausgabe unter anderem Targets, Detections, Scanfehler, nicht unterstützte, unzugängliche, verschlüsselte und beschädigte Dateien. Ein Systemscan liefert eine kompaktere Zusammenfassung.
Live Protection und Ausnahmen
Scans verwenden Live Protection für aktuelle SophosLabs-Informationen. Ohne Netzwerk oder bei deaktivierter Live Protection ist die Bewertung weniger vollständig.
Ein gezielter User Scan respektiert globale und Policy-Ausnahmen. Eine ausgenommene Datei wird durch den manuellen CLI-Aufruf nicht plötzlich vollumfänglich geprüft. Vor einer Incident-Untersuchung wird deshalb kontrolliert, welche Ausnahmen tatsächlich greifen.
Sicheres RMM-Runbook
Ein produktives Runbook sollte:
- Existenz und Version der CLI prüfen.
- Scope und maximale Laufzeit begrenzen.
stdout,stderrund Exitcode getrennt sichern.- Code
3als Detection behandeln, andere Codes differenziert auswerten. - Ergebnis mit Central Events und Health korrelieren.
- Keine automatische Ausnahme oder Löschung allein aufgrund des Exitcodes erstellen.
Bei einer Detection folgt das Threat-Cleanup-Runbook. Für tiefergehende Agentprobleme dient Endpoint Self Help und SDU.