Oracle Linux 6 / 7:Unbreakable Enterprise 内核 (ELSA-2018-4114)

high Nessus 插件 ID 110071

简介

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

描述

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

- 处理传入 L2CAP 命令 ConfigRequest 和 ConfigResponse 消息的过程中存在一个漏洞,可影响 Linux 内核 3.3-rc1 及更高版本。存在此信息泄露问题的原因是,未初始化的堆栈变量可在未初始化状态下返回给攻击者。通过操纵在处理这些配置消息之前的代码流,攻击者还可获取对未初始化堆栈变量中所保留数据的一些控制权。攻击者可利用此漏洞,绕过 KASLR 和堆栈 canary 保护,因为通过此方式可泄露指针和堆栈 canary。将此漏洞与(例如)之前在 L2CAP 配置解析中披露的 RCE 漏洞 (CVE-2017-1000251) 结合使用,攻击者可针对使用上述缓解措施构建的内核利用 RCE。此漏洞的详情如下:在 l2cap_parse_conf_rsp 函数和 l2cap_parse_conf_req 函数中,已在未初始化的情况下声明以下变量:struct l2cap_conf_efs efs;此外,在解析这两个函数中的输入配置参数时,处理 EFS 元素的 switch case 还可能会跳过将写入 efs 变量的 memcpy 调用:... case L2CAP_CONF_EFS: if (olen == sizeof(efs)) memcpy(&efs;, (void
*)val, olen); ... 上面 if 条件中的 olen 是受攻击者控制的,不论该 if 条件如何编写,这两个函数中的 efs 变量最终都会被添加到正在构建的传出配置请求中:l2cap_add_conf_opt(&ptr;, L2CAP_CONF_EFS, sizeof(efs), (unsigned long) &efs;);因此,通过发送包含 L2CAP_CONF_EFS 元素(元素长度不是 sizeof(efs))的配置请求或响应,可避免使用未初始化 efs 变量的 memcpy,并会将未初始化的变量返回给攻击者(16 字节)。(CVE-2017-1000410)

- 在 Linux 内核 4.14.15 及之前版本中,本地用户可利用 drivers/acpi/sbshc.c 中的 acpi_smbus_hc_add 函数,通过从 SBS HC printk 调用读取 dmesg 数据,获取敏感地址信息。
(CVE-2018-5750)

- 在低于 4.14.3 的 Linux 内核版本中,本地用户可利用 drivers/md/dm.c 中的 dm_get_from_kobject 函数,通过在创建和删除 DM 设备期间使用 __dm_destroy 争用条件,造成拒绝服务(错误)。(CVE-2017-18203)

- 在低于 4.14.15 的 Linux 内核版本中,攻击者可利用 kernel/futex.c 中的 futex_requeue 函数,通过触发负唤醒或重新排队值,造成拒绝服务(整数溢出),或可能造成其他不明影响。(CVE-2018-6927)

- 在不知道之前所有内存写入地址的情况下,使用推测执行和内存读取推测执行的微处理器所在的系统在未经授权的情况下,可通过边信道分析,向具有本地用户访问权限的攻击者泄露信息,亦即推测存储绕过 (SSB) 变体 4。(CVE-2018-3639)

- 在低于 4.12.9 的 Linux 内核版本中,本地用户可利用 mm/mempolicy.c 中的 do_get_mempolicy 函数,通过构建的系统调用,造成拒绝服务(释放后使用),或可能造成其他不明影响。(CVE-2018-10675)

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

- 在 Linux 内核 4.16.3 及之前版本中,本地用户可利用 fs/xfs/libxfs/xfs_bmap.c 中的 xfs_bmap_extents_to_btree 函数,通过构建的 xfs 映像,造成拒绝服务(xfs_bmapi_write 空指针取消引用)。(CVE-2018-10323)

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

解决方案

更新受影响的程序包。

另见

https://linux.oracle.com/errata/ELSA-2018-4114.html

插件详情

严重性: High

ID: 110071

文件名: oraclelinux_ELSA-2018-4114.nasl

版本: 1.12

类型: local

代理: unix

发布时间: 2018/5/24

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

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

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 7.2

时间分数: 5.6

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

CVSS 分数来源: CVE-2018-10675

CVSS v3

风险因素: High

基本分数: 7.8

时间分数: 7

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

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

漏洞信息

CPE: cpe:/o:oracle:linux:6, cpe:/o:oracle:linux:7, p-cpe:/a:oracle:linux:kernel-uek, p-cpe:/a:oracle:linux:kernel-uek-debug, p-cpe:/a:oracle:linux:kernel-uek-debug-devel, p-cpe:/a:oracle:linux:kernel-uek-devel, p-cpe:/a:oracle:linux:kernel-uek-doc, p-cpe:/a:oracle:linux:kernel-uek-firmware

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

可利用: true

易利用性: Exploits are available

补丁发布日期: 2018/5/22

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

可利用的方式

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

参考资料信息

CVE: CVE-2017-1000410, CVE-2017-18203, CVE-2018-10323, CVE-2018-10675, CVE-2018-3639, CVE-2018-5333, CVE-2018-5750, CVE-2018-6927, CVE-2018-8781

IAVA: 2018-A-0170, 2019-A-0025-S