跳转至

从命令行扫描

您可以使用我们的命令行工具扫描计算机。

当您安装 Sophos Endpoint 时,命令行工具会自动安装。

该工具安装在 Program Files/Sophos/Endpoint Defense 中,称为 sophosinterceptxcli.exe

您可以使用该工具执行以下操作:

  • 运行系统扫描。这是对整个计算机进行扫描。
  • 运行用户扫描。这是对用户指定的文件或文件夹进行扫描。

此页面列出了您可以使用的命令和选项。

命令

命令如下所示。

scan

scan 命令启动设备的扫描,并显示扫描进度对话框。结果显示在 Sophos Endpoint 用户界面中,检测到的所有威胁都将报告给 Sophos Central。

要运行扫描,请输入以下格式的命令:

scan <options> <targets>

有关扫描选项的详细信息,请参阅选项

有关如何指定目标的详细信息,请参阅目标

扫描可以访问的文件取决于运行扫描的权限:

  • 系统扫描,以本地系统进程权限运行。因为本地系统进程不能访问用户密钥,因此不能访问 Microsoft EFS 加密文件之类的文件。

  • 用户扫描 (特定文件或文件夹的扫描) 以您的用户权限运行,因此只能扫描您可以访问的文件。

用户扫描不会检查策略排除的文件或 Sophos Central 中设置的全局排除项。

使用“实时保护”的扫描,根据 SophosLabs 提供的最新威胁信息检查可疑文件。如果“实时保护”关闭或设备与网络断开连接,则扫描效果会降低。

help

help 命令显示可用命令的列表。

help <command> 显示命令可用的所有选项。

选项

以下是 scan 命令可以使用的选项。它们适用于您指定的所有目标 (要扫描的项目)。无论您将它们放在命令行中的什么位置,它们都起作用。

选项 描述
展开存档文件

--expand_archives

扫描将展开存档文件并扫描内容。

无用户界面

--noui

不显示用户界面。所有检测结果都将写入 stdout。扫描完成后,工具才会关闭。

详细输出

--verbose

仅在指定 --noui 时有效。将扫描的每个文件的信息 (文件名以及清除或检测到的状态) 写入 stdout

系统扫描

--system

默认情况 (或者还指定了 --full) 下,扫描当前设备上的所有本地文件,并执行其他系统扫描操作,如 MBR (主引导记录) 和内存扫描。

如果一起指定了 --quick--system,系统扫描将只扫描常用文件,包括用于正在运行和最近运行的进程的映像文件,以及配置为在启动时自动运行的程序。它还会扫描 MBR 和内存。

如果使用 --system,请勿指定任何目标。

系统扫描始终以本地系统进程的权限运行。因为本地系统进程不能访问用户密钥,因此不能访问某些项目,如 Microsoft EFS 加密文件的内容。

目标

目标是您要扫描的内容。目标可以是驱动器、文件夹或文件。

要扫描驱动器,请输入一个大写或小写字母,然后输入冒号和反斜杠,如 C:\

注释

必须包含反斜杠。如果没有,扫描将只检查该驱动器上当前文件夹中的文件。如果您指定 C:,则通常是您运行命令行工具的文件夹。

要扫描特定文件夹或文件,请输入完整或部分路径。扫描将以相对路径的方式处理文件夹和文件路径,相对于您启动命令行工具的文件夹。

您可以使用 DOS 样式或 Unix 样式的路径分隔符。您还可以使用 UNC 路径。

通配符

您可以在文件夹和路径名中使用通配符,但不能用于驱动器名。

通配符 描述
* (星号) 用于匹配 0 个或多个字符
用于匹配单个字符

请参阅 MS-DOS 和 Windows 通配符

扫描可以在检查文件夹和文件之前扩展通配符。这只适用于通配符位于路径的最后一个元素中时。因此,扫描会扩展 C:/Test/Folder/F*le,但不会扩展 C:/Test/F*lder/File

错误代码

命令行工具可能会返回以下错误代码:

代码 描述
0 已成功扫描所有文件,未发现恶意软件
1 处理命令时出现错误
2 设置命令行工具时出现意外错误
3 在一个或多个文件中检测到威胁
4 一个或多个文件在扫描过程中出现错误
5 一个或多个文件已加密
6 一个或多个文件的格式不支持
7 一个或多个文件无法访问

如果出现多个错误,我们将返回最严重的错误代码。代码按上述严重性顺序显示,最高的数字表示严重性最高。

Intercept X CLI 工具不会返回低版本 Sophos 端点产品使用的其他类型错误代码。

对于用户启动的扫描 (不是系统扫描),我们会将附加输出写入控制台。对于每个类别,我们将显示受影响文件的数量,并列出这些文件。

结果为 JSON 格式

使用 --json 选项,可在扫描结束时以 JSON 格式输出结果。

除非出现致命错误 (错误代码为 1 或 2),将只写入一个 JSON 对象到 stdout,以支持脚本。

JSON 输出格式

如果指定 --json,将写入一个 JSON 对象,提供与默认情况下采用 --noui 提供的人类可读输出相同级别的详细信息。

对于用户扫描,始终提供以下键 (哪怕他们下面没有列出任何文件),以支持可检测性:

{
"type": "user",
"targets": ["C:\\test", "C:\\foo", "C:\\bar"],
"summary": {
"detections": 1,
"cleanFiles": 3,
"filesWithScanningErrors": 1,
"filesWithUnsupportedFormats": 1,
"inaccessibleFiles": 1,
"encryptedFiles": 1,
"corruptedFiles": 1
},
"detections": [{"path": "C:\\test\\eicar.com", "name": "EICAR-AV-Test", "type": "Malware"}],
"filesWithScanningErrors": [{"path": "C:\\test\\bad.exe", "reason": "Stream read failure (source: SAVI, code: -1610350039)"}],
"filesWithUnsupportedFormats": [{"path": "C:\\bar\\bar.exe"}],
"inaccessibleFiles": [{"path": "C:\\foo\\bar.exe", "reason": "Access is denied (5) (source: ScanCoordinator)"}],
"encryptedFiles": [{"path": "C:\\bar\\baz.exe"}],
"corruptedFiles": [{"path": "C:\\bar\\corrupted.zip"}]
}

对于系统扫描,仅提供顶级类型和摘要键,其中类型为“fullSystem”或“quickSystem”。

对于用户扫描,如果还指定了 --verbose,则会包括附加的 scannedFiles 键,列出除无法访问的文件之外的所有已扫描文件。

`"scannedFiles": [{"path": "C:\\test\\eicar.com"}]`