Red Hat Advanced Cluster Security for Kubernetes 评估整个环境中的风险,并根据其安全风险对正在运行的部署进行排名。它还提供有关需要立即关注的漏洞、配置和运行时活动的详细信息。
**风险**视图列出所有集群中的所有部署,并根据策略违规、镜像内容、部署配置和其他类似因素的多种因素风险指标进行排序。列表顶部的部署呈现最高的风险。
**风险**视图显示部署列表,每行包含以下属性:
**名称**:部署的名称。
**创建时间**:部署的创建时间。
**集群**:部署正在运行的集群的名称。
**命名空间**:部署所在的命名空间。
**优先级**:基于严重性和风险指标的优先级排名。
在**风险**视图中,您可以:
选择列标题以升序或降序对违规进行排序。
使用筛选栏筛选违规。
根据筛选条件创建新的策略。
要查看有关部署风险的更多详细信息,请选择**风险**视图中的部署。
在**风险**视图中评估部署中的风险时,应用本地页面筛选后,您可以根据使用的筛选条件创建新的安全策略。
转到 RHACS 门户,然后从导航菜单中选择**风险**。
应用您要为其创建策略的本地页面筛选条件。
选择**新建策略**,然后填写所需字段以创建新的策略。
根据您在**风险**视图中使用的筛选条件创建新的安全策略时,并非所有条件都会直接应用于新策略。
Red Hat Advanced Cluster Security for Kubernetes 会将**集群**、**命名空间**和**部署**筛选器转换为等效的策略范围。
风险视图中的本地页面过滤使用以下方法组合搜索词:
使用OR运算符组合同一类别中的搜索词。例如,如果搜索查询为集群:A,B,则过滤器匹配集群A或集群B中的部署。
使用AND运算符组合不同类别中的搜索词。例如,如果搜索查询为集群:A+命名空间:Z,则过滤器匹配集群A和命名空间Z中的部署。
向策略添加多个范围时,策略将匹配来自任何范围的违规行为。
例如,如果您搜索(集群A 或 集群B) 和 (命名空间Z),则会产生两个策略范围:(集群=A 和 命名空间=Z) 或 (集群=B 和 命名空间=Z)。
Red Hat Advanced Cluster Security for Kubernetes 会删除或修改无法直接映射到策略标准的过滤器,并报告已删除的过滤器。
下表列出了过滤搜索属性如何映射到策略标准:
| 搜索属性 | 策略标准 |
|---|---|
添加功能 |
添加功能 |
注释 |
不允许的注释 |
CPU核心限制 |
容器CPU限制 |
CPU核心请求 |
容器CPU请求 |
CVE |
CVE |
CVE发布日期 |
✕ 已删除 |
CVE已暂停 |
✕ 已删除 |
CVSS |
CVSS |
集群 |
⟳ 已转换为范围 |
组件 |
镜像组件(名称) |
组件版本 |
镜像组件(版本) |
部署 |
⟳ 已转换为范围 |
部署类型 |
✕ 已删除 |
Dockerfile指令关键字 |
Dockerfile行(键) |
Dockerfile指令值 |
Dockerfile行(值) |
删除功能 |
✕ 已删除 |
环境键 |
环境变量(键) |
环境值 |
环境变量(值) |
环境变量来源 |
环境变量(来源) |
公开的节点端口 |
✕ 已删除 |
公开的服务 |
✕ 已删除 |
公开的服务端口 |
✕ 已删除 |
暴露级别 |
端口暴露 |
外部主机名 |
✕ 已删除 |
外部IP |
✕ 已删除 |
镜像 |
✕ 已删除 |
镜像命令 |
✕ 已删除 |
镜像创建时间 |
镜像创建至今的天数 |
镜像入口点 |
✕ 已删除 |
镜像标签 |
不允许的镜像标签 |
镜像操作系统 |
镜像操作系统 |
镜像拉取密钥 |
✕ 已删除 |
镜像注册表 |
镜像注册表 |
远程镜像 |
远程镜像 |
镜像扫描时间 |
镜像上次扫描至今的天数 |
镜像标签 |
镜像标签 |
镜像最高CVSS评分 |
✕ 已删除 |
镜像用户 |
✕ 已删除 |
镜像卷 |
✕ 已删除 |
标签 |
⟳ 已转换为范围 |
最大暴露级别 |
✕ 已删除 |
内存限制(MB) |
容器内存限制 |
内存请求(MB) |
容器内存请求 |
命名空间 |
⟳ 已转换为范围 |
命名空间ID |
✕ 已删除 |
Pod标签 |
✕ 已删除 |
端口 |
端口 |
端口协议 |
协议 |
优先级 |
✕ 已删除 |
特权 |
特权 |
进程祖先 |
进程祖先 |
进程参数 |
进程参数 |
进程名称 |
进程名称 |
进程路径 |
✕ 已删除 |
进程标签 |
✕ 已删除 |
进程UID |
进程UID |
只读根文件系统 |
只读根文件系统 |
密钥 |
✕ 已删除 |
密钥路径 |
✕ 已删除 |
服务账号 |
✕ 已删除 |
服务账号权限级别 |
最小RBAC权限级别 |
容忍键 |
✕ 已删除 |
容忍值 |
✕ 已删除 |
卷目标 |
卷目标 |
卷名称 |
卷名称 |
卷只读 |
可写卷 |
卷来源 |
卷来源 |
卷类型 |
卷类型 |
在风险视图中选择一个部署时,风险详情会在右侧面板中打开。风险详情面板显示按多个选项卡分组的详细信息。
风险详情面板的风险指标选项卡解释了发现的风险。
风险指标选项卡包含以下部分:
策略违规:针对所选部署违规的策略名称。
可疑进程执行:可疑进程、参数和进程运行所在的容器名称。
镜像漏洞:包括总 CVE 数量及其 CVSS 评分的镜像。
服务配置:配置中经常出现问题的方面,例如读写 (RW) 功能、是否删除功能以及是否存在特权容器。
服务可达性:集群内部或外部公开的容器端口。
攻击者有用的组件:发现的攻击者经常使用的软件工具。
镜像中组件的数量:在每个镜像中找到的软件包数量。
镜像新鲜度:镜像名称和使用期限,例如285 天前。
RBAC配置:在 Kubernetes 基于角色的访问控制 (RBAC) 中授予部署的权限级别。
|
并非所有部分都显示在风险指标选项卡中。Red Hat Advanced Cluster Security for Kubernetes 只显示影响所选部署的相关部分。 |
部署风险面板的部署详情选项卡中的部分提供了更多信息,以便您可以就如何解决发现的风险做出适当的决定。
概述部分显示以下内容的详细信息:
部署ID:部署的字母数字标识符。
命名空间:部署所在的 Kubernetes 或 OpenShift Container Platform 命名空间。
更新时间:部署更新时间的日期时间戳。
部署类型:部署类型,例如Deployment或DaemonSet。
副本:为此部署部署的 Pod 数量。
标签:附加到 Kubernetes 或 OpenShift Container Platform 应用程序的键值标签。
**集群**:部署正在运行的集群的名称。
注释:部署的 Kubernetes 注释。
服务账号:代表在 Pod 中运行的进程的身份。当进程通过服务账号进行身份验证时,它可以联系 Kubernetes API 服务器并访问集群资源。如果 Pod 没有分配的服务账号,它将获得默认的服务账号。
进程发现选项卡提供环境中每个容器中已执行的所有二进制文件的完整列表,按部署汇总。
进程发现选项卡显示以下详细信息:
二进制名称: 已执行的二进制文件的名称。
容器: 执行进程的部署中的容器。
参数: 传递给二进制文件的特定参数。
时间: 二进制文件在给定容器中最近一次执行的日期和时间。
Pod ID: 容器所在的 Pod 的标识符。
UID: 进程执行的 Linux 用户身份。
使用过滤器栏中的进程名称:查询查找特定进程。
进程发现选项卡中的事件时间线部分提供了所选部署的事件概述。它显示策略违规次数、进程活动以及容器终止或重启事件。
您可以选择事件时间线以查看更多详细信息。
事件时间线模态框显示所选部署所有 Pod 的事件。
时间线上的事件分为以下几类:
进程活动
策略违规
容器重启
容器终止
事件以图标的形式显示在时间线上。要查看有关事件的更多详细信息,请将鼠标指针悬停在事件图标上。详细信息将显示在工具提示中。
单击显示图例以查看哪个图标对应于哪种类型的事件。
选择导出→下载 PDF或导出→下载 CSV下载事件时间线信息。
选择显示全部下拉菜单以过滤时间线上可见的事件类型。
单击展开图标即可分别查看所选 Pod 中每个容器的事件。
时间线中的所有事件也显示在底部的微型地图控件中。微型地图控制时间线上可见的事件数量。您可以通过修改微型地图上的突出显示区域来更改时间线上显示的事件。为此,请从左侧或右侧(或同时)减小突出显示区域,然后拖动突出显示区域。
|
您可以通过对基础架构安全使用进程基线来最大限度地降低风险。使用这种方法,Red Hat Advanced Cluster Security for Kubernetes 首先发现现有进程并创建基线。然后,它以默认的拒绝所有模式运行,并且只允许基线中列出的进程运行。
安装 Red Hat Advanced Cluster Security for Kubernetes 时,没有默认的进程基线。随着 Red Hat Advanced Cluster Security for Kubernetes 发现部署,它会为部署中的每种容器类型创建一个进程基线。然后,它会将所有发现的进程添加到其自身的进程基线中。
在进程发现阶段,所有基线都处于解锁状态。
在解锁状态下
当 Red Hat Advanced Cluster Security for Kubernetes 发现新进程时,它会将该进程添加到进程基线中。
进程不会显示为风险,也不会触发任何违规。
在 Red Hat Advanced Cluster Security for Kubernetes 从部署中的容器接收第一个进程指示器一小时后,它将完成进程发现阶段。此时
Red Hat Advanced Cluster Security for Kubernetes 将停止向进程基线添加进程。
不在进程基线中的新进程会显示为风险,但不会触发任何违规。
要生成违规,您必须手动锁定进程基线。
在锁定状态下
Red Hat Advanced Cluster Security for Kubernetes 将停止向进程基线添加进程。
不在进程基线中的新进程将触发违规。
无论基线状态是锁定还是解锁,您始终可以向基线添加或从中删除进程。
|
对于部署,如果每个 Pod 中有多个容器,Red Hat Advanced Cluster Security for Kubernetes 会为每种容器类型创建一个进程基线。对于此类部署,如果某些基线已锁定而某些基线未锁定,则该部署的基线状态将显示为混合。 |
您可以从风险视图查看流程基线。
在 RHACS 门户中,从导航菜单中选择风险。
从默认风险视图中的部署列表中选择一个部署。部署详细信息将在右侧面板中打开。
在部署详细信息面板中,选择流程发现选项卡。
流程基线显示在规范容器基线部分。
您可以将流程添加到基线。
在 RHACS 门户中,从导航菜单中选择风险。
从默认风险视图中的部署列表中选择一个部署。部署详细信息将在右侧面板中打开。
在部署详细信息面板中,选择流程发现选项卡。
在正在运行的流程部分,单击要添加到流程基线的流程的添加图标。
|
只有不在流程基线中的流程才可以使用添加图标。 |