Analisar Sophos Endpoint no Windows através da CLI
Para uma suspeita isolada, a análise pela interface local é frequentemente suficiente. Num runbook RMM, durante Incident Response ou para um caminho definido, a Windows CLI é mais precisa. É instalada com Sophos Endpoint e comunica Detections ao Sophos Central.
Planear e resolver problemas de análises Sophos Endpoint aborda planeamento, análises agendadas, análise do tempo de execução e estado do File Scanner. Este artigo concentra-se na CLI do Windows e numa automatização fiável.
Caminho e ajuda
A ferramenta encontra-se normalmente em:
C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe
Uma PowerShell administrativa mostra as opções disponíveis:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" help scan
A ajuda da versão local é determinante. A ferramenta pertence ao Windows Agent; este caminho não se aplica ao macOS.
Executar uma análise do sistema
Uma análise completa utiliza os direitos do processo System local:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --full --noui
Uma Quick System Scan concentra-se em ficheiros utilizados frequentemente, processos em execução e recentes, Autostarts, MBR e memória:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --system --quick --noui
Com --system, não se indicam Targets adicionais. Ficheiros inacessíveis ao processo System, como conteúdos EFS associados ao utilizador, podem não ser analisados.
Analisar ficheiro, pasta ou unidade
Uma análise direcionada utiliza os direitos do utilizador que a invoca:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "C:\Users\Public\Downloads"
Uma unidade completa requer a barra invertida final:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui "D:\"
D: sem barra indica normalmente apenas o diretório atual dessa unidade. Caminhos UNC são suportados se a conta tiver acesso.
Wildcards são possíveis em nomes de pastas e ficheiros, mas não em nomes de unidades. A expansão no último elemento do caminho é mais fiável do que num diretório superior.
Arquivos e saída detalhada
--expand_archives abre arquivos suportados e analisa o conteúdo. Aumenta o tempo e I/O e é utilizado de forma direcionada.
--noui suprime a interface e aguarda pelo fim. --verbose só é válido em conjunto:
& "C:\Program Files\Sophos\Endpoint Defense\sophosinterceptxcli.exe" scan --noui --verbose --expand_archives "C:\IR\Evidence"
Uma Verbose Output muito grande não deve ser escrita sem controlo nos RMM Logs. Os caminhos podem conter nomes de utilizador e informações sensíveis.
Tratar Exit Codes corretamente
| Código | Significado |
|---|---|
0 | análise concluída, sem malware |
1 | erro ao processar o comando |
2 | erro inesperado ao iniciar a ferramenta |
3 | pelo menos uma ameaça detetada |
4 | pelo menos um ficheiro com erro de análise |
5 | pelo menos um ficheiro encriptado |
6 | pelo menos um formato não suportado |
7 | pelo menos um ficheiro inacessível |
Se existirem vários estados, é devolvido o código mais grave. Um valor diferente de zero não significa automaticamente malware. Um código 0 também não prova que todos os ficheiros estavam acessíveis ou que todas as Cloud Queries eram possíveis.
JSON para automação
--json escreve um resultado estruturado em stdout. Exceto em erros fatais 1 ou 2, um script pode avaliar diretamente o resumo e os ficheiros:
$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
Numa User Scan, a saída inclui Targets, Detections, erros, ficheiros não suportados, inacessíveis, encriptados e danificados. Uma System Scan fornece um resumo mais compacto.
Live Protection e exceções
As análises utilizam Live Protection para informações atuais da SophosLabs. Sem rede ou com Live Protection desativado, a avaliação é menos completa.
Uma User Scan respeita exceções globais e de Policy. Uma chamada CLI manual não analisa integralmente um ficheiro excluído. Antes de uma investigação, verificam-se as exceções efetivas.
Runbook RMM seguro
Um runbook produtivo deve:
- Verificar a existência e versão da CLI.
- Limitar Scope e duração máxima.
- Guardar
stdout,stderre Exit Code separadamente. - Tratar código
3como Detection e avaliar os outros códigos individualmente. - Correlacionar o resultado com Central Events e Health.
- Não criar exceções nem eliminar automaticamente apenas com base no Exit Code.
Após uma Detection, siga o runbook Threat Cleanup. Para problemas profundos do agente, utilize Endpoint Self Help e SDU.