Ubuntu 14.04 LTS:Linux 内核漏洞 (USN-3583-1)

critical Nessus 插件 ID 107003

简介

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

描述

远程 Ubuntu 14.04 LTS 主机上安装的一个程序包受到 USN-3583-1 公告中提及的多个漏洞影响。

- 上游 Linux 文件系统存在权限提升漏洞。产品:Android。版本:
Android 内核。Android ID:A-36817013。(CVE-2017-0750)

- Linux 内核 ALSA 子系统的 snd_pcm_info 函数中存在释放后使用漏洞,攻击者可利用此漏洞,通过不明向量,获取权限。(CVE-2017-0861)

- Linux 内核 2.6.32 及更高版本受到拒绝服务影响,攻击者可通过淹没诊断端口 0x80,触发异常,导致内核错误。(CVE-2017-1000407)

- 在 Linux 内核 4.13.3 及之前版本内 net/wireless/nl80211.c 中的 nl80211_set_rekey_data() 函数中发现一个安全缺陷。此函数未检查 Netlink 请求中是否有所需的属性。用户可使用 CAP_NET_ADMIN 功能发出此请求,这可能导致空指针取消引用和系统崩溃。(CVE-2017-12153)

- 在低于 4.13.8 的 Linux 内核版本中,当 SCSI I/O 向量具有属于相同页面的小型连续缓冲区时,block/bio.c 中的 bio_map_user_iov 和 bio_unmap_user 函数会进行不平衡的引用计数。
bio_add_pc_page 函数会将其合并成一个,但该页面引用再也不会删除。此漏洞可能会造成内存泄露,并可能造成系统锁定(如果 SCSI 磁盘传递到虚拟机,则客户机操作系统用户可以利用主机操作系统攻击),这是内存不足所致。(CVE-2017-12190)

- 在低于 4.13.5 的 Linux 内核版本中,密钥管理子组件 security/keys/keyctl.c 中的 keyctl_read_key 函数未正确考虑可以拥有负实例化密钥的问题,本地用户可利用此漏洞,通过构建的 KEYCTL_READ 操作,造成拒绝服务(OOPS 和系统崩溃)。(CVE-2017-12192)

- 在 Linux 内核 4.12.10 之前的版本中,drivers/scsi/qla2xxx/qla_attr.c 的 qla2x00_sysfs_write_optrom_ctl 函数存在整数溢出,本地用户可借此通过利用 root 访问权限造成拒绝服务(内存损坏和系统崩溃)。(CVE-2017-14051)

- 在低于 4.12.9 的 Linux 内核版本中,mm/migrate.c 中的 move_pages 系统调用未检查目标进程的有效 UID,本地攻击者可利用此漏洞,绕过 ASLR,了解 setuid 可执行文件的内存布局。(CVE-2017-14140)

- 在 4.12.10 及之前的 Linux 内核中,drivers/video/fbdev/aty/atyfb_base.c 的 atyfb_ioctl 函数并未初始化某些数据结构,导致本地用户可以通过读取与填充字节相关的位置,从内核堆栈内存获取敏感信息。(CVE-2017-14156)

- 本地用户利用 Linux 内核 4.13.2 及之前版本中 drivers/scsi/scsi_transport_iscsi.c 的 iscsi_if_rx 函数,通过不正确的长度验证,造成拒绝服务(错误)。
(CVE-2017-14489)

- 在低于 4.8.1 的 Linux 内核版本中,本地用户(插入构建 USB 设备的物理邻近用户)可利用 drivers/usb/misc/legousbtower.c 中的 tower_probe 函数,通过使用在争用条件和空指针取消引用之后执行的 write-what-where 条件,获取权限。
(CVE-2017-15102)

- 在低于 4.14 的 Linux 内核版本中,net/sctp/socket.c 中的 sctp_do_peeloff 函数未检查是否在剥离操作中使用预期 netns,本地用户可利用此漏洞,通过构建的系统调用,造成拒绝服务(释放后使用和系统崩溃),或可能造成其他不明影响。
(CVE-2017-15115)

- 在 4.11.5 之前的 Linux 内核中,security/keys/keyctl.c 未考虑空负载与非零长度值同时存在的情况,导致本地用户可以通过构建的 add_key 或 keyctl 系统调用造成拒绝服务(空指针取消引用和 OOPS),此漏洞与 CVE-2017-12192 不同。(CVE-2017-15274)

- 在 3.19 之前的 Linux 内核中,net/bluetooth/bnep/core.c 的 bnep_add_connection 函数无法确保 l2cap 套接字可用,导致本地用户可以通过构建的应用程序获取权限。(CVE-2017-15868)

- 在低于 4.13.8 的 Linux 内核版本中,本地用户可利用 drivers/usb/serial/console.c 中的 usb_serial_console_disconnect 函数,通过构建的 USB 设备,造成拒绝服务(释放后使用和系统崩溃),或可能造成其他不明影响,此问题与断开连接和失败的设置相关。
(CVE-2017-16525)

- Linux 内核 4.14.4 及之前版本中的 net/netfilter/xt_osf.c 对于 add_callback 和 remove_callback 操作,不需要使用 CAP_NET_ADMIN 功能,进而允许本地用户绕过预定的访问限制,这是因为 xt_osf_fingers 数据结构是跨所有网络命名空间共享所致。
(CVE-2017-17450)

- 在低于 4.14.8 的 Linux 内核版本中,HMAC 实现 (crypto/hmac.c) 未验证底层加密哈希算法是否未加密,本地攻击者可利用此漏洞使用基于 AF_ALG 的哈希接口 (CONFIG_CRYPTO_USER_API_HASH) 和 SHA-3 哈希算法 (CONFIG_CRYPTO_SHA3),通过执行缺少 SHA-3 初始化的构建系统调用序列,造成内核堆栈缓冲区溢出。(CVE-2017-17806)

- 在低于 4.11 的 Linux 内核版本以及低于 4.9.36 的 4.9.x 版本中,远程攻击者可利用 net/netfilter/xt_TCPMSS.c 中的 tcpmss_mangle_packet 函数,通过在 iptables 操作中使用存在的 xt_TCPMSS,造成拒绝服务(释放后使用和内存损坏),或可能造成其他不明影响。
(CVE-2017-18017)

- 在 Linux 内核 4.9.12 及之前版本中,ipc/shm.c 中的 do_shmat 函数未限制特定舍入操作所计算的地址,本地用户可利用此漏洞,通过在特权环境中执行构建的 shmget 和 shmat 系统调用,映射零页面,从而绕过用于 mmap 系统调用的保护机制。(CVE-2017-5669)

- 使用推测执行和间接分支预测的微处理器所在的系统在未经授权的情况下,可通过数据缓存的边信道分析,向具有本地用户访问权限的攻击者泄露信息。(CVE-2017-5754)

- 在 4.12.3 及之前的 Linux 内核中,net/ipv6/output_core.c 内的 ip6_find_1stfragopt 函数可让本地用户利用打开原始套接字的能力造成拒绝服务(整数溢出和无限循环)。(CVE-2017-7542)

- 在 3.2 及之前的 Linux 内核中,mm 子系统未正确执行 CONFIG_STRICT_DEVMEM 保护机制,这使得本地用户能够通过与 arch/x86/mm/init.c 和 drivers/char/mem.c 相关的能够打开 /dev/mem 文件的应用程序读取或写入第一个兆字节中的内核内存位置(并绕过 slab-allocation 访问权限限制)。(CVE-2017-7889)

- 在 Linux 内核 4.14.3 及之前版本中,本地用户可利用 net/dccp/proto.c 中的 dccp_disconnect 函数,在 DCCP_LISTEN 状态下通过 AF_UNSPEC 连接系统调用,获取权限,或造成拒绝服务(释放后使用)。(CVE-2017-8824)

- 在 Linux 内核 4.14.13 及之前版本中,net/rds/rdma.c 中的 rds_cmsg_atomic 函数未正确处理页面锁定失败或提供地址无效的情况,导致 rds_atomic_free_op 空指针取消引用。(CVE-2018-5333)

- 在 Linux 内核 4.14.13 及之前版本中,drivers/block/loop.c 未正确处理 lo_release 序列化,攻击者可利用此漏洞,造成拒绝服务(__lock_acquire 释放后使用),或可能造成其他不明影响。(CVE-2018-5344)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

更新受影响的 kernel 程序包。

另见

https://ubuntu.com/security/notices/USN-3583-1

插件详情

严重性: Critical

ID: 107003

文件名: ubuntu_USN-3583-1.nasl

版本: 3.12

类型: local

代理: unix

发布时间: 2018/2/26

最近更新时间: 2024/1/9

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

风险信息

VPR

风险因素: High

分数: 8.1

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 8.7

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

CVSS 分数来源: CVE-2017-18017

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 9.4

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

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

漏洞信息

CPE: p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-generic, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-generic-lpae, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-lowlatency, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-powerpc-e500, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-powerpc-e500mc, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-powerpc-smp, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-powerpc64-emb, p-cpe:/a:canonical:ubuntu_linux:linux-image-3.13.0-142-powerpc64-smp, cpe:/o:canonical:ubuntu_linux:14.04:-:lts

必需的 KB 项: Host/cpu, Host/Debian/dpkg-l, Host/Ubuntu, Host/Ubuntu/release

可利用: true

易利用性: Exploits are available

补丁发布日期: 2018/2/23

漏洞发布日期: 2017/2/24

可利用的方式

Metasploit (Reliable Datagram Sockets (RDS) rds_atomic_free_op NULL pointer dereference Privilege Escalation)

参考资料信息

CVE: CVE-2017-0750, CVE-2017-0861, CVE-2017-1000407, CVE-2017-12153, CVE-2017-12190, CVE-2017-12192, CVE-2017-14051, CVE-2017-14140, CVE-2017-14156, CVE-2017-14489, CVE-2017-15102, CVE-2017-15115, CVE-2017-15274, CVE-2017-15868, CVE-2017-16525, CVE-2017-17450, CVE-2017-17806, CVE-2017-18017, CVE-2017-5669, CVE-2017-5754, CVE-2017-7542, CVE-2017-7889, CVE-2017-8824, CVE-2018-5333, CVE-2018-5344

IAVA: 2018-A-0019

USN: 3583-1