NewStart CGSL CORE 5.05 / MAIN 5.05 : docker-ce 多个漏洞 (NS-SA-2021-0138)

high Nessus 插件 ID 154519

语言:

简介

远程 NewStart CGSL 主机受到多个漏洞影响。

描述

运行 CORE 5.05 / MAIN 5.05 版本的远程 NewStart CGSL 主机上安装的 docker-ce 程序包受到多个漏洞的影响:

- 在 Docker-CE(亦称为 Moby)的 1.12.6-0、1.10.3、17.03.0、17.03.1、17.03.2、17.06.0、17.06.1、17.06.2、17.09.0 和之前版本中缺少内容验证可让远程攻击者通过特制的图像层负载(亦即 gzip bombing),造成拒绝服务。(CVE-2017-14992)

- 在 Docker Moby 17.03.2-ce 及之前版本中,oci/defaults.go 中的 DefaultLinuxSpec 函数未阻塞 /proc/scsi 路径名,攻击者可以借此通过利用 Docker 容器访问权将 scsi remove-single-device 行写入到 /proc/scsi/scsi 中,即 SCSI MICDROP,进而触发数据损失(前提是使用某些较老的 Linux 内核)。(CVE-2017-16539)

- libseccomp-golang 0.9.0 及其之前版本错误生成的 BPF 与多个参数进行“或”操作,而不是对其进行“与”操作。在已指定多个 syscall 参数的限制性 seccomp 过滤器下运行的进程可通过指定单个匹配参数来绕过预期访问限制。
(CVE-2017-18367)

Docker/Moby 中 oci/defaults{_linux}.go 的默认 OCI Linux 规范(从 1.11 至当前版本),未阻止 /proc/acpi 路径名。此缺陷允许攻击者修改主机硬件,如启用/禁用蓝牙或调高/调低键盘亮度。(CVE-2018-10892)

- 在 Docker 18.06.1-ce-rc2 及之前的版本中,'docker cp' 命令后的 API 端点容易受到具有目录遍历的符号链接交换攻击,从而使攻击者可以利用根特权对主机文件系统进行任意读取和写入,因为 daemon/archive.go 不在冻结的文件系统上(或者从 chroot 内部)执行存档操作。(CVE-2018-15664)

- 18.09 版本之前的 Docker Engine 使得攻击者可以通过 --cpuset-mems 或 --cpuset-cpus 值中的大整数造成拒绝服务(dockerd 内存消耗),这与 daemon/daemon_unix.go、pkg/parsers/parsers.go 和 pkg/sysinfo/sysinfo.go 相关。(CVE-2018-20699)

- 在 18.09.4 版本之前的 Docker 中,能够为 docker 构建命令提供或操纵构建路径的攻击者能够获得命令执行。docker 构建处理远程 git URL 的方式存在问题,使得命令注入到底层 git 克隆命令中,进而导致在执行 docker 构建命令的用户上下文中执行代码。这是因为 git ref 可能被误解成了标志。(CVE-2019-13139)

- 在 18.09.8 版本之前的 Docker CE and EE 中(以及 17.06.2-ee-23 版本之前的 Docker EE 和 18.03.1-ee-10 版本之前的 18.x 中),处于调试模式的 Docker Engine 有时会向调试日志添加秘密。此类情况适用于运行 docker 堆栈部署,以重新部署包含(非外部)秘密的堆栈。如果重新发送秘密,可能适用于堆栈 API 的其他 API 用户。(CVE-2019-13509)

- 1.0-rc6 版本及之前的 runc(在 18.09.2 版本之前的 Docker 和其他产品中使用)使得攻击者可以通过利用在这些类型的容器中作为根执行命令的能力,重写主机 runc 二进制文件(从而获得主机根访问权):(1) 包含攻击者控制的图像的新容器,或 (2) 攻击者之前具有写入权并且可以附加 docker exec 的现有容器。这是因为文件描述符处理不当,与 /proc/self/exe 有关。
(CVE-2019-5736)

- 在 19.03.11 版本之前的 Docker Engine 中发现问题。具有 CAP_NET_RAW 能力的容器中的攻击者可特制 IPv6 路由器公告,进而欺骗外部 IPv6 主机,获取敏感信息或造成拒绝服务。(CVE-2020-13401)

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

解决方案

升级易受攻击的 CGSL docker-ce 程序包。请注意,更新后的程序包尚未发布。请联系 ZTE 获取更多信息。

另见

http://security.gd-linux.com/notice/NS-SA-2021-0138

http://security.gd-linux.com/info/CVE-2017-14992

http://security.gd-linux.com/info/CVE-2017-16539

http://security.gd-linux.com/info/CVE-2017-18367

http://security.gd-linux.com/info/CVE-2018-10892

http://security.gd-linux.com/info/CVE-2018-15664

http://security.gd-linux.com/info/CVE-2018-20699

http://security.gd-linux.com/info/CVE-2019-13139

http://security.gd-linux.com/info/CVE-2019-13509

http://security.gd-linux.com/info/CVE-2019-5736

http://security.gd-linux.com/info/CVE-2020-13401

插件详情

严重性: High

ID: 154519

文件名: newstart_cgsl_NS-SA-2021-0138_docker-ce.nasl

版本: 1.3

类型: local

发布时间: 2021/10/27

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

支持的传感器: Nessus

风险信息

VPR

风险因素: Critical

分数: 10.0

CVSS v2

风险因素: High

基本分数: 9.3

时间分数: 8.1

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

CVSS 分数来源: CVE-2019-5736

CVSS v3

风险因素: High

基本分数: 8.6

时间分数: 8.2

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

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

漏洞信息

CPE: p-cpe:/a:zte:cgsl_core:docker-ce, p-cpe:/a:zte:cgsl_core:docker-ce-debuginfo, p-cpe:/a:zte:cgsl_main:docker-ce, p-cpe:/a:zte:cgsl_main:docker-ce-debuginfo, cpe:/o:zte:cgsl_core:5, cpe:/o:zte:cgsl_main:5

必需的 KB 项: Host/local_checks_enabled, Host/cpu, Host/ZTE-CGSL/release, Host/ZTE-CGSL/rpm-list

可利用: true

易利用性: Exploits are available

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

漏洞发布日期: 2017/11/1

可利用的方式

Metasploit (Docker Container Escape Via runC Overwrite)

参考资料信息

CVE: CVE-2017-14992, CVE-2017-16539, CVE-2017-18367, CVE-2018-10892, CVE-2018-15664, CVE-2018-20699, CVE-2019-13139, CVE-2019-13509, CVE-2019-5736, CVE-2020-13401