Oracle Linux 7:内核 (ELSA-2016-2574)

critical Nessus 插件 ID 94697

简介

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

描述

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

- 在 4.4.1 之前的 Linux 内核允许本地用户在关闭 Unix 套接字之前通过其发送每个描述符,来绕过文件描述符限制并造成拒绝服务(内存消耗),这与 net/unix/af_unix.c 和 net/unix/garbage.c 相关。(CVE-2013-4312)

- 在 Android 和其他产品中使用的 4.3.3 及之前的 Linux 内核中的网络实现未验证某些协议系列的协议标识符,进而允许本地用户利用 CLONE_NEWUSER 支持执行特别构建的 SOCK_RAW 应用程序,造成拒绝服务(空函数指针取消引用和系统崩溃)或可能取得权限。(CVE-2015-8543)

- 在 4.5.2 及之前的 Linux 内核中,drivers/net/ethernet/atheros/atlx/atl2.c 的 atl2_probe 函数错误地启用了分散/收集 I/O,这允许远程攻击者通过读取数据包数据从内核内存获取敏感信息。(CVE-2016-2117)

- 在 4.5.5 之前的 Linux 内核中,文件系统层在 OverlayFS 文件重命名为自硬链接后继续进行 post-rename 操作,这允许本地用户通过 rename 系统调用造成拒绝服务(系统崩溃),这与 fs/namei.c 和 fs/open.c 有关。(CVE-2016-6198)

- 在 4.4.1 之前的 Linux 内核中,arch/x86/mm/tlb.c 中的争用条件允许本地用户通过触发由不同 CPU 访问分页结构而获得权限。(CVE-2016-2069)

- 在 4.5.2 之前的 Linux 内核中,IPv4 实现不当处理设备对象的销毁,进而允许客户机操作系统用户通过对于大量 IP 地址进行安排,造成拒绝服务(主机操作系统网络中断)。(CVE-2016-3156)

- 在 4.5.4 之前的 Linux 内核中,fs/pnode.c 在涉及从属挂载的特定情况下,未正确遍历挂载传播树状结构,其允许本地用户通过一系列构建的挂载系统调用,造成拒绝服务(空指针取消引用和 OOPS)。(CVE-2016-4581)

- 在 4.5 之前的 Linux 内核中,fs/pipe.c 未限制管道中的未读数据量,从而允许本地用户通过创建许多含有非默认大小的管道,造成拒绝服务(内存消耗)。(CVE-2016-2847)

- 在 4.3.3 之前的 Linux 内核中,fs/btrfs/inode.c 错误处理压缩的内联范围,其可允许本地用户通过克隆操作取得文件中敏感的截断前信息。(CVE-2015-8374)

- 在 4.6.3 及之前的 Linux 内核中,drivers/hid/usbhid/hiddev.c 的 hiddev_ioctl_usage 函数中多个基于堆的缓冲区溢出问题允许本地用户造成拒绝服务,或可能会通过特制的 (1) HIDIOCGUSAGES 或 (2) HIDIOCSUSAGES ioctl 调用造成其他不明影响。(CVE-2016-5829)

- 在 powerpc 平台上 4.3.5 之前的 Linux 内核中,信号实现不会检查同时设置 S 和 T 位的 MSR,这允许本地用户通过构建的应用程序造成拒绝服务(TM 不良对象异常和错误)。(CVE-2015-8844)

- 在 powerpc 平台 4.4.1 之前的 Linux 内核中,arch/powerpc/kernel/process.c 中的 tm_reclaim_thread 函数未确保存在 TM 暂停模式即继续 tm_reclaim 调用,这允许本地用户通过构建的应用程序造成拒绝服务(TM 不良对象异常与错误)。(CVE-2015-8845)

- 在 4.2 之前的 Linux 内核中,net/bluetooth/rfcomm/sock.c 的 rfcomm_sock_bind 函数允许本地用户通过涉及蓝牙 RFCOMM 套接字上的绑定系统调用的向量获取敏感信息,或造成拒服务(空指针取消引用)。(CVE-2015-8956)

- 在 4.3 之前的 Linux 内核中,lib/asn1_decoder.c 中的 asn1_ber_decoder 函数允许攻击者通过缺少公钥的 ASN.1 BER 文件造成拒绝服务(错误),导致 crypto/asymmetric_keys/public_key.c 中的 public_key_verify_signature 函数错误处理。(CVE-2016-2053)

- 在低于 4.5 的 Linux 内核版本中,sound/usb/midi.c 中的 snd_usbmidi_create 函数中存在双重释放漏洞,物理邻近攻击者可利用此漏洞,通过涉及无效 USB 描述符的向量,造成拒绝服务(错误),或可能造成其他不明影响。(CVE-2016-2384)

- 在 4.6 及之前的 Linux 内核中,sound/core/timer.c 的 snd_timer_user_params 函数未初始化某些数据结构,其允许本地用户通过使用构建的 ALSA timer 接口,从内核堆栈内存获取敏感信息。(CVE-2016-4569)

- 在 4.6 及之前的 Linux 内核中,sound/core/timer.c 未初始化某些 r1 数据结构,其允许本地用户通过使用构建的 ALSA 定时器接口,从内核堆栈内存获取敏感信息,这与 (1) snd_timer_user_ccallback 和 (2) snd_timer_user_tinterrupt 函数有关。
(CVE-2016-4578)

- 在 PowerPC 平台上 4.7 及之前的 Linux 内核中,arch/powerpc/kvm/book3s_hv_rmhandlers.S 在 CONFIG_KVM_BOOK3S_64_HV 启用时允许客户机操作系统用户通过在暂停事务存在期间进行 H_CEDE 超级调用造成拒绝服务(主机操作系统无限循环)。(CVE-2016-5412)

- 在 4.5.1 之前的 Linux 内核中,drivers/infiniband/ulp/srpt/ib_srpt.c 允许本地用户使用 ABORT_TASK 命令中止设备写入操作,从而造成拒绝服务(空指针取消引用和系统崩溃)。(CVE-2016-6327)

- 在 4.7 及之前的 Linux 内核中,drivers/scsi/aacraid/commctrl.c 的 ioctl_send_fib 函数有一个争用条件,其允许本地用户变更某个特定的大小值,进而造成拒绝服务(越界访问或系统崩溃),即“双重提取”漏洞。(CVE-2016-6480)

- 在 4.2.2 之前的 Linux 内核中,NFS 客户端的 fs/nfs/nfs4proc.c 未正确初始化用于迁移恢复操作的内存,这允许远程 NFS 服务器通过构建的网络流量造成拒绝服务(空指针取消引用和错误)。(CVE-2015-8746)

- 在 4.5 之前的 Linux 内核中,drivers/infiniband/hw/cxgb3/iwch_cm.c 未正确识别错误情况,进而允许远程攻击者通过特别构建的数据包,执行任意代码或造成拒绝服务(释放后使用)。(CVE-2015-8812)

- 在 4.4 之前的 Linux 内核中,include/trace/events/writeback.h 的 trace_writeback_dirty_page 实现与 mm/migrate.c 未正确交互,这允许本地用户通过触发特定页面移动造成拒绝服务(空指针取消引用和系统崩溃),或可能造成其他不明影响。(CVE-2016-3070)

- 在启用 UEFI Secure Boot 的情况下引导时,在 Red Hat Enterprise Linux 7.2 和 Red Hat Enterprise MRG 2 中使用的 Linux 内核允许本地用户通过将 ACPI 表附加到 initrd 来绕过预期安全引导限制和执行不受信任的代码。(CVE-2016-3699)

- 在 4.3.3 之前的 Linux 内核中,IPv6 堆栈不当处理选项数据,这允许本地用户通过构建的 sendmsg 系统调用获取权限或造成拒绝服务(释放后使用和系统崩溃)。(CVE-2016-3841)

- 在 4.6 及之前的 Linux 内核中,mm/percpu.c 存在释放后使用漏洞,这允许本地用户使用通过使用特别构建的 mmap 和 bpf 系统调用,造成拒绝服务(缺陷)或可能产生其他不明影响。(CVE-2016-4794)

- 在 powerpc 平台 4.6.3 及之前的 Linux 内核中,arch/powerpc/kernel/process.c 的 start_thread 函数不当处理交易状态,其允许本地用户在执行 exec 系统调用之前,启动和暂停交易,进而造成拒绝服务(无效进程状态或 TM Bad Thing 异常,以及系统崩溃),或可能造成其他不明影响。(CVE-2016-5828)

- 在 4.7 及之前的 Linux 内核中,kernel/auditsc.c 内的 audit_log_single_execve_arg 函数存在争用条件,这使得本地用户能够通过更改特定字符串绕过预期的字符集限制,或中断系统调用审核,又称为“双重提取”漏洞。(CVE-2016-6136)

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

解决方案

更新受影响的程序包。

另见

https://linux.oracle.com/errata/ELSA-2016-2574.html

插件详情

严重性: Critical

ID: 94697

文件名: oraclelinux_ELSA-2016-2574.nasl

版本: 2.15

类型: local

代理: unix

发布时间: 2016/11/11

最近更新时间: 2021/9/8

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

风险信息

VPR

风险因素: High

分数: 7.1

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 8.7

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

CVSS 分数来源: CVE-2015-8812

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: cpe:/o:oracle:linux:7, p-cpe:/a:oracle:linux:kernel, p-cpe:/a:oracle:linux:kernel-abi-whitelists, p-cpe:/a:oracle:linux:kernel-debug, p-cpe:/a:oracle:linux:kernel-debug-devel, p-cpe:/a:oracle:linux:kernel-devel, p-cpe:/a:oracle:linux:kernel-headers, p-cpe:/a:oracle:linux:kernel-tools, p-cpe:/a:oracle:linux:kernel-tools-libs, p-cpe:/a:oracle:linux:kernel-tools-libs-devel, p-cpe:/a:oracle:linux:perf, p-cpe:/a:oracle:linux:python-perf

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

可利用: true

易利用性: Exploits are available

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

漏洞发布日期: 2015/10/16

参考资料信息

CVE: CVE-2013-4312, CVE-2015-8374, CVE-2015-8543, CVE-2015-8746, CVE-2015-8812, CVE-2015-8844, CVE-2015-8845, CVE-2015-8956, CVE-2016-2053, CVE-2016-2069, CVE-2016-2117, CVE-2016-2384, CVE-2016-2847, CVE-2016-3044, CVE-2016-3070, CVE-2016-3156, CVE-2016-3699, CVE-2016-3841, CVE-2016-4569, CVE-2016-4578, CVE-2016-4581, CVE-2016-4794, CVE-2016-5412, CVE-2016-5828, CVE-2016-5829, CVE-2016-6136, CVE-2016-6198, CVE-2016-6327, CVE-2016-6480, CVE-2016-7914, CVE-2016-7915, CVE-2016-9794, CVE-2017-13167, CVE-2018-16597

RHSA: 2016:2574