Oracle Linux 8:olcne / istio / istio / kubernetes (ELSA-2021-9546)

high Nessus 插件 ID 155011

简介

远程 Oracle Linux 主机缺少一个或多个安全更新。

描述

远程 Oracle Linux 8 主机上安装的程序包受到 ELSA-2021-9546 公告中提及的多个漏洞的影响。

- Envoy 是专为面向新式服务的大型架构设计的开源 L7 代理和通信总线。在受影响的版本中,ext-authz 扩展向外部授权服务发送请求标头时,必须按照 HTTP 规范合并多个值标头。但只会发送最后一个标头值。这可能允许发送特别构建的请求来绕过授权。使用 ext-authz 扩展或后端服务(使用多个值标头进行授权)时,攻击者也许可以提升特权。如果存在 ext-authz 扩展,则不受信任的下游对等方可以传送特别构建的请求。Envoy 版本 1.19.1、1.18.4、1.17.4 和 1.16.5 包含针对 ext-authz 扩展的修复,使其在发送请求进行授权时能够正确合并多个请求标头值。(CVE-2021-32777)

- Envoy 是专为面向新式服务的大型架构设计的开源 L7 代理和通信总线。在受影响的版本中,当收到不具有任何未完成的流的 GOAWAY 帧时,Envoy 会将 H/2 连接转换为 CLOSED 状态。当收到 SETTINGS_MAX_CONCURRENT_STREAMS 参数设置为 0 的 SETTING 帧时,它会将连接状态转换为 DRAINING。如果在同一个 I/O 事件中收到这两个帧,将导致异常终止 Envoy 进程,原因是从 CLOSED 到 DRAINING 的状态转换无效。在存在不受信任的上游服务器的情况下,如果不受信任的上游服务器传送 H/2 帧序列,将导致拒绝服务。Envoy 版本 1.19.1 和 1.18.4 包含相应的修复,可在连接转换为 CLOSED 状态后停止处理待处理的 H/2 frames after connection transition to thestate. (CVE-2021-32780)

- Envoy 是专为面向新式服务的大型架构设计的开源 L7 代理和通信总线。在受影响的版本中,当 Envoy 发送本地生成的响应后,必须停止进一步处理请求或响应数据。但是,如果在过滤器链处理请求或响应时由于内部缓冲区溢出而生成了本地响应,可能无法完全停止操作,并导致访问已释放的内存块。在存在会修改请求正文或响应正文并增加其大小的扩展的情况下,如果下游对等方或上游对等方传送特别构建的请求,则使用这些扩展时会导致拒绝服务。Envoy 版本 1.19.1、1.18.4、1.17.4 和 1.16.5 包含相应的修复,可解决在生成本地响应后无法完全终止请求处理的问题。解决方法是禁用 Envoy 的解压缩器、json 转码器、grpc-web 扩展或者会修改请求正文或响应正文并增加其大小的专有扩展(如果可行)。
(CVE-2021-32781)

- Envoy 是专为面向新式服务的大型架构设计的开源 L7 代理和通信总线。在受影响的版本中,Envoy 未正确处理属于路径元素一部分的 URI“#fragment”元素。Envoy 配置有用于授权或类似机制的 RBAC 过滤器,并且明确存在最后一个路径元素为 /admin 的情况,或者使用最后一个路径元素为 /admin 的反向断言。客户端向 /app1/admin#foo 发送请求。在低于 1.18.0 的 Envoy 版本或 path_normalization 配置为 false 的 1.18.0 及更高版本中。Envoy 将片段视为查询字符串(如果存在)的后缀或路径的后缀(如果查询字符串不存在),因此将最后一个路径元素计算为 /admin#foo,并导致与已配置的 /admin 路径元素不匹配。在 path_normalization 配置为 true 的 Envoy 1.18.0 及更高版本中。Envoy 将该元素转换为 /app1/admin%23foo,并导致与已配置的 /admin 前缀不匹配。发送到下一个服务器代理的结果 URI 将带有违反规定的 #foo 片段(违反 RFC3986),或附加了无意义的 %23foo 文本。在存在基于路径的请求授权扩展的情况下,如果不受信任的客户端发送特别构建的请求(带有包含“#fragment”元素的 URI),则使用基于路径的请求授权扩展时会导致特权提升。
Envoy 版本 1.19.1、1.18.4、1.17.4 和 1.16.5 包含相应的修复,可从传入请求的 URI 路径中删除片段。(CVE-2021-32779)

- 在 Kubernetes 中发现了一个安全问题,用户也许可以创建一个容器并装载 subpath 卷,以访问该卷外部的文件和目录(包括主机文件系统上的文件和目录)。
(CVE-2021-25741)

- Envoy 是专为面向新式服务的大型架构设计的开源 L7 代理和通信总线。在受影响的版本中,envoy 重置 HTTP/2 流的程序复杂度为 O(N^2),这导致在重置大量流时 CPU 占用率很高。将 Envoy 配置为对 H/2 并发流实行高限制时,部署容易受到拒绝服务攻击。攻击者要利用此漏洞,需要客户端打开和关闭大量 H/2 流。
Envoy 1.19.1、1.18.4、1.17.4、1.16.5 版中包含的补丁可以降低重置 HTTP/2 流的时间复杂度。作为变通方案,用户可将上游和下游对等机的同步 HTTP/2 Dreams 数量限制为一个较低的数字,即 100。(CVE-2021-32778)

请注意,Nessus 尚未测试此问题,而是只依靠应用程序自我报告的版本号来判断。

解决方案

更新受影响的程序包。

另见

https://linux.oracle.com/errata/ELSA-2021-9546.html

插件详情

严重性: High

ID: 155011

文件名: oraclelinux_ELSA-2021-9546.nasl

版本: 1.2

类型: local

代理: unix

发布时间: 2021/11/10

最近更新时间: 2021/11/10

支持的传感器: Frictionless Assessment Agent, Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 5.2

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 5.5

矢量: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS 分数来源: CVE-2021-32779

CVSS v3

风险因素: High

基本分数: 8.3

时间分数: 7.2

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L

时间矢量: CVSS:3.0/E:U/RL:O/RC:C

漏洞信息

CPE: cpe:/o:oracle:linux:8, p-cpe:/a:oracle:linux:istio, p-cpe:/a:oracle:linux:istio-istioctl, p-cpe:/a:oracle:linux:kubeadm, p-cpe:/a:oracle:linux:kubectl, p-cpe:/a:oracle:linux:kubelet, p-cpe:/a:oracle:linux:olcne-agent, p-cpe:/a:oracle:linux:olcne-api-server, p-cpe:/a:oracle:linux:olcne-grafana-chart, p-cpe:/a:oracle:linux:olcne-istio-chart, p-cpe:/a:oracle:linux:olcne-nginx, p-cpe:/a:oracle:linux:olcne-olm-chart, p-cpe:/a:oracle:linux:olcne-prometheus-chart, p-cpe:/a:oracle:linux:olcne-utils, p-cpe:/a:oracle:linux:olcnectl

必需的 KB 项: Host/local_checks_enabled, Host/RedHat/release, Host/RedHat/rpm-list, Host/OracleLinux

易利用性: No known exploits are available

补丁发布日期: 2021/11/9

漏洞发布日期: 2021/8/24

参考资料信息

CVE: CVE-2021-25741, CVE-2021-32777, CVE-2021-32778, CVE-2021-32779, CVE-2021-32780, CVE-2021-32781