Saltar para o conteudo
Avanet

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ódigoSignificado
0análise concluída, sem malware
1erro ao processar o comando
2erro inesperado ao iniciar a ferramenta
3pelo menos uma ameaça detetada
4pelo menos um ficheiro com erro de análise
5pelo menos um ficheiro encriptado
6pelo menos um formato não suportado
7pelo 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:

  1. Verificar a existência e versão da CLI.
  2. Limitar Scope e duração máxima.
  3. Guardar stdout, stderr e Exit Code separadamente.
  4. Tratar código 3 como Detection e avaliar os outros códigos individualmente.
  5. Correlacionar o resultado com Central Events e Health.
  6. 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.

Perguntas frequentes

Porque uma System Scan não encontra um ficheiro EFS do utilizador?

A System Scan utiliza os direitos do processo System local e não possui automaticamente as chaves EFS privadas do utilizador. Uma User Scan só analisa ficheiros acessíveis à conta que a executa.

Exit Code 7 é uma deteção de malware?

Não. O código 7 indica que pelo menos um ficheiro estava inacessível. A causa pode ser uma permissão, bloqueio ou caminho indisponível e deve ser verificada separadamente.