Analizar Sophos Endpoint en Windows desde CLI
Para una sospecha individual suele bastar la interfaz local. En un Runbook RMM, durante Incident Response o para una ruta definida, la CLI de Windows es más precisa. Se instala con Sophos Endpoint y también comunica Detections a Sophos Fusion (antes Sophos Central).
Planificar y solucionar problemas de los análisis de Sophos Endpoint trata la planificación, los análisis programados, el análisis de duración y el estado de File Scanner. Este artículo se centra en la CLI de Windows y en una automatización fiable.
Ruta y ayuda
La herramienta se instala en:
C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe
Abra PowerShell con la cuenta cuyos permisos deban aplicarse al análisis dirigido. El operador & inicia la ruta entre comillas y help scan muestra las opciones de la versión instalada:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" help scan
La ayuda local es la referencia. Es una herramienta del agente Windows; la ruta no se aplica a macOS.
Modelo de ejecución antes de empezar
- Shell: Todos los ejemplos usan PowerShell. En
cmd.exe, omita el operador&; no mezcle ambas sintaxis. - Privilegios: Un análisis de archivos, carpetas o unidades hereda los permisos de la cuenta que lo ejecuta. Un análisis con
--systemusa los derechos del proceso local del sistema. - Marcadores: Sustituya
C:\Users\Public\Downloads,C:\IR\EvidenceyD:\por la ruta autorizada. No escriba literalmente marcadores entre corchetes angulares. - Efecto:
scaninicia el análisis de inmediato. Sin--nouiaparece un diálogo; los resultados se muestran en Sophos Endpoint y las amenazas detectadas se notifican a Sophos Fusion. - Salida: Con
--nouino hay interfaz, las detecciones se escriben enstdouty el proceso espera hasta terminar. En una ejecución no fatal,--jsondeja un único objeto JSON enstdout.
Ejecutar un análisis del sistema
Un análisis completo usa permisos del proceso local system:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --full --noui
Uno rápido se centra en archivos habituales, procesos activos y recientes, inicio, MBR y memoria:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --quick --noui
No indique objetivos adicionales con --system. Archivos inaccesibles para local system, como contenido EFS ligado al usuario, pueden quedar sin analizar.
Analizar archivo, carpeta o unidad
Un análisis dirigido usa permisos del usuario que lo invoca:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "C:\Users\Public\Downloads"
Una unidad completa necesita barra final:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "D:\"
D: sin barra suele referirse al directorio actual. Se admiten rutas UNC si la cuenta tiene acceso.
Se admiten comodines en nombres de carpetas y archivos, pero no de unidades. La expansión previa solo funciona en el último elemento: C:/Test/Folder/F*le se expande; C:/Test/F*lder/File no.
Archivos comprimidos y salida detallada
--expand_archives abre archivos compatibles y analiza su contenido. Aumenta duración e I/O; úselo selectivamente.
--noui oculta la interfaz y espera al final. --verbose solo es válido junto con él:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui --verbose --expand_archives "C:\IR\Evidence"
No escriba salida verbose enorme en registros RMM sin control. Las rutas pueden contener usuarios e información sensible.
Tratar correctamente códigos de salida
| Código | Significado |
|---|---|
0 | análisis correcto, sin malware |
1 | error al procesar el comando |
2 | error inesperado al iniciar |
3 | al menos una amenaza detectada |
4 | al menos un archivo con error de análisis |
5 | al menos un archivo cifrado |
6 | al menos un formato no compatible |
7 | al menos un archivo inaccesible |
Si se producen varios errores, se devuelve el código aplicable más alto. Por tanto, los códigos 4 a 7 también pueden acompañar a amenazas detectadas. Compruebe además summary.detections y los eventos de Sophos Fusion. El código 0 indica un análisis correcto sin malware en el ámbito analizado; no cubre archivos excluidos ni una comprobación de Live Protection no disponible.
JSON para automatización
--json escribe un resultado estructurado en stdout. Salvo errores fatales 1 o 2, un script puede evaluar el resumen y, para un User Scan, los archivos afectados:
$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
Para un User Scan, la salida incluye objetivos, Detections, errores, formatos no admitidos y archivos inaccesibles, cifrados y dañados. El objeto JSON de un System Scan solo contiene type y summary; no incluye listas de archivos.
Live Protection y exclusiones
Los análisis usan Live Protection. Sin red o con la función desactivada, la evaluación es menos completa.
Un User Scan dirigido respeta exclusiones globales y de política. La CLI no inspecciona plenamente de repente un archivo excluido. Antes de investigar, compruebe qué exclusiones se aplican. La guía de exclusiones de Endpoint explica cómo comprobar el ámbito efectivo.
Validación y escalado
Debe:
- Confirmar que la CLI existe en la ruta documentada y usar
help scanpara validar las opciones locales. - Limitar alcance y duración.
- Capturar
stdout,stderry código por separado. - Tratar código
3como Detection y evaluar los demás. - Correlacionar con Central Events y Health.
- No crear exclusión o eliminación automática solo por el código.
La ejecución queda validada cuando termina el proceso, se conserva por separado el código de salida y está disponible la salida esperada. Correlacione el código 3 con los eventos de Sophos Fusion y escálelo mediante el runbook de limpieza de amenazas. Para los códigos 4 a 7, revise los archivos indicados por un User Scan. Un System Scan no devuelve ninguna lista de archivos, por lo que debe conservar y escalar su JSON y la salida de la consola. Investigue los códigos 1 o 2 y los fallos recurrentes con Endpoint Self Help y SDU. Estos estados no equivalen todos a una detección de malware.