Amazon EC2 Linux 实例的 Amazon Inspector 深度检查 - Amazon Inspector
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon EC2 Linux 实例的 Amazon Inspector 深度检查

Amazon Inspector 扩大了其亚马逊 EC2 扫描覆盖范围,将深度检查包括在内。通过深度检查,Amazon Inspector 可以检测基于 Linux 的 Amazon EC2 实例中应用程序编程语言包的软件包漏洞。

Amazon Inspector 会扫描编程语言包库的默认路径。除了默认路径外,您还可以配置自定义路径。有关更多信息,请参阅 Amazon Inspector 深度检查的自定义路径

Amazon Inspector 使用通过 Amazon Inspector SSM 插件收集的数据进行深度检查扫描。为了管理插件并对 Linux 进行深入检查,Amazon Inspector 会自动InvokeInspectorLinuxSsmPlugin-do-not-delete在您的账户中创建以下 SSM 关联。当 Amazon Inspector 激活深度检查时,就会发生这种情况。

Amazon Inspector 每 6 小时从实例收集更新的应用程序清单,以便进行深度检查。

有关 Amazon Inspector 支持深度检查的编程语言列表,请参阅支持的编程语言:Amazon EC2 深度检查

注意

Windows 或 Mac 实例不支持深度检查。

激活或停用深度检查

注意

对于在 2023 年 4 月 17 日之后激活 Amazon Inspector 的账户,深度检查将作为 Amazon EC2 扫描的一部分自动激活。

您可以在 Amazon Inspector 控制台的账户管理页面的 Amazon EC2 扫描列中查看账户是否激活了深度检查。如果深度检查未激活,则此列将显示已激活(深度检查已停用)。要以编程方式查看激活状态,请使用 GetEc2DeepInspectionConfiguration API。或者,对于多个账户,请使用 BatchGetMemberEc2DeepInspectionStatus API。

如果您在 2023 年 4 月 17 日之前激活了 Amazon Inspector,则可以通过控制台横幅或 UpdateEc2DeepInspectionConfiguration API 激活深度检查。如果您是 Amazon Inspector 中某组织的委派管理员,则可以使用 BatchUpdateMemberEc2DeepInspectionStatus API 为自己和成员账户激活深度检查。

您可以通过 UpdateEc2DeepInspectionConfiguration API 停用深度检查。组织中的成员账户无法停用深度检查。因此,成员账户必须由其委派管理员使用 BatchUpdateMemberEc2DeepInspectionStatus API 停用。

关于适用于 Linux 的 Amazon Inspector SSM 插件

Amazon Inspector 使用 Amazon Inspector SSM 插件对 Linux 实例进行深度检查。Amazon Inspector SSM 插件会自动安装在 Linux 实例的以下目录中:/opt/aws/inspector/bin。可执行文件的名称是 inspectorssmplugin

注意

Amazon Inspector 使用 Systems Manager Distributor 在 Amazon EC2 实例中部署该插件。Systems Manager Distributor 支持 Systems Manager 指南内的支持的程序包平台和架构中列出的操作系统。您的 Amazon EC2 实例的操作系统是 Systems Manager Distributor 和 Amazon Inspector 支持的系统,Amazon Inspector 才能执行深度检查扫描。

Amazon Inspector 会创建以下文件目录来管理 Amazon Inspector SSM 插件收集的用于深度检查的数据:

  • /opt/aws/inspector/var/input

  • /opt/aws/inspector/var/output

    • 此目录中的 packages.txt 存储了深度检查发现的程序包的完整路径。如果 Amazon Inspector 在实例上多次检测到同一个程序包,则此文件会列出该程序包的每个位置。

Amazon Inspector 将该插件的日志存储在 /var/log/amazon/inspector 目录中。

卸载 Amazon Inspector SSM 插件

如果 inspectorssmplugin 文件被无意中删除,则 InspectorLinuxDistributor-do-not-delete SSM 关联将在下一个扫描间隔尝试重新安装它。

如果您停用 Amazon EC2 扫描,则该插件将自动从所有 Linux 主机上卸载。

Amazon Inspector 深度检查的自定义路径

您可以配置自定义路径,让 Amazon Inspector 在对您的 Linux Amazon EC2 实例进行深入检查时进行搜索。当您添加自定义路径时,Amazon Inspector 会扫描该目录及其中的所有子目录中的程序包。

所有账户都可以为其个人账户定义最多 5 个自定义路径。如果您是组织的委托管理员,则可以额外定义 5 条路径,这些路径将适用于整个组织。这样一来,组织中每个账户最多可扫描 10 个自定义路径。

Amazon Inspector 除了扫描所有账户的以下默认路径外,还会扫描所有自定义路径:

  • /usr/lib

  • /usr/lib64

  • /usr/local/lib

  • /usr/local/lib64

注意

自定义路径必须是本地路径。Amazon Inspector 不会扫描映射的网络路径,例如网络文件系统 (NFS) 挂载或 Amazon S3 文件系统挂载。

自定义路径的格式

以下为自定义路径的格式示例:/home/usr1/project01

自定义路径不能超过 256 个字符。

每个实例的程序包上限为 5,000 个,程序包清单收集时间上限为 15 分钟。我们建议您尽量选择自定义路径,以规避这些限制。

在控制台中设置自定义路径

Console

以 Amazon Inspector 委托管理员的身份登录,然后按照以下步骤为组织添加自定义路径。

  1. 打开 Amazon Inspector 控制台,网址为 https://console.aws.amazon.com/inspector/v2/home

  2. 使用页面右上角的 Amazon Web Services 区域 选择器,选择要激活 Lambda 标准扫描的区域。

  3. 在侧面导航面板的常规设置下,选择 EC2 扫描设置

  4. 自己账户的自定义路径下,选择编辑,为自己的个人账户添加路径。如果您是委托管理员,则可以在组织的自定义路径窗格中选择编辑,为组织内的所有账户添加自定义路径。

  5. 在文本框中输入自定义路径。

  6. 选择保存以保存自定义路径。Amazon Inspector将在下一次深度检查中包括这些路径。

API

运行 UpdateEc2DeepInspectionConfiguration 命令。对于 packagePaths,指定要扫描的路径数组。

支持的编程语言

对于 Linux 实例,除了操作系统包中的漏洞外,Amazon Inspector 深度检查还可以生成应用程序编程语言包的调查发现。对于 Mac 和 Windows 实例,仅扫描操作系统程序包。

有关支持的编程语言的信息,请参阅Amazon Inspector 深度检查支持的编程语言