Slackware Linux 15.0 kernel-generic 多个漏洞 (SSA:2023-172-02)

high Nessus 插件 ID 177495

简介

远程 Slackware Linux 主机缺少 kernel-generic 的安全更新。

描述

远程主机上安装的 kernel-generic 版本低于 5.15.118/5.15.118_smp。因此,该应用程序受到 SSA:2023-172-02 公告中提及的漏洞影响。

- KVM:VMX 内的 Linux 内核中存在回归漏洞,允许发起推测执行攻击。
在 KVM (L0) 宣称会向 L1 提供 eIBRS 支持的背景下, L1 认为在运行 L2 之后便不需要使用 retpoline 或 IBPB,导致 L2 可以对 L1 执行 Spectre v2 攻击。在 L2 上拥有代码执行权的攻击者可以在主机的间接分支上执行代码。我们建议升级到内核 6.2 或过去的提交 2e7eab81425a (CVE-2022-2196)

- 启用 SMT 后,某些 AMD 处理器可能在 SMT 模式切换后使用同级线程中的目标来推测性地执行指令,从而导致信息泄漏。 (CVE-2022-27672)

- 在 Linux 内核中发现双重释放内存缺陷。Intel GVT-g 图形驱动程序触发 VGA 卡系统资源过载,从而导致 intel_gvt_dma_map_guest_page 函数失败。本地用户可以利用此问题造成系统崩溃。(CVE-2022-3707)

- 在 Linux 内核流量控制 (TC) 子系统中发现缺陷。使用特定网络配置(使用 TC 操作镜像将出口数据包重定向到入口)时,本地非特权用户可在使用中的传输协议(TCP 或 SCTP)进行重新传输时触发 CPU 软锁定(ABBA 死锁),从而导致拒绝服务条件。(CVE-2022-4269)

- 在 Linux 内核的 fs/nfs/nfs4file.c 内的 __nfs42_ssc_open() 中发现一个释放后使用漏洞。
此缺陷允许攻击者进行远程拒绝 (CVE-2022-4379)

- 在 6.2.7 及之前版本的 Linux 内核中,fs/ntfs3/inode.c 在重播日志前未验证 MFT 标记,因而包含无效的 kfree。(CVE-2022-48425)

- Linux 内核 64 位版本上的 Copy_from_user 未实现 __uaccess_begin_nospec,这允许用户绕过 access_ok 检查并将内核指针传递到 copy_from_user()。这将允许攻击者泄漏信息。我们建议在提交 74e19ef0ff8061ef55957c3abd71614ef0f42f47 之后进行升级 (CVE-2023-0459)

- Linux 内核中发现缺陷。由于其初始化函数中存在类型混淆,tun/tap 套接字将其套接字 UID 硬编码为 0。虽然此编码通常正确无误,但由于 tuntap 设备需要 CAP_NET_ADMIN,故而也会出错,例如仅具有该功能的非根用户。这会让 tun/tap 套接字在过滤/路由决策中遭到错误处理,从而可能绕过网络过滤器。(CVE-2023-1076)

- 在 Linux 内核中,pick_next_rt_entity() 可能返回 BUG_ON 条件未检测到的类型混淆条目,因为混淆条目不是 NULL,而是 list_head。有缺陷的错误条件将导致具有列表标头的类型混淆的条目,随后其将被用作类型混淆的 sched_rt_entity,进而导致内存损坏。(CVE-2023-1077)

- 在 Linux 内核的可靠数据报套接字 (RDS) 协议实现中发现一个缺陷。rds_rm_zerocopy_callback() 在造成类型混淆的列表标头上使用 list_entry()。本地用户可通过 rds_message_put() 触发此漏洞。类型混淆导致“struct rds_msg_zcopy_info *info”实际上指向可能由本地用户控制的其他内容。触发此漏洞的方式已由用户所知,该漏洞将导致越界访问和锁定损坏。(CVE-2023-1078)

- Linux 内核中发现缺陷。当插入/断开宣称自己为 Asus 设备的恶意 USB 设备时,可能会在 asus_kbd_backlight_set 中触发释放后使用漏洞。与之前已知的 CVE-2023-25012 类似,但在 asus 设备中,LED 控制器可能会在设备断开连接时规划 work_struct,从而在 struct asus_kbd_leds *led 结构上触发释放后使用漏洞。恶意 USB 设备可能会利用此问题,通过受控数据造成内存损坏。
(CVE-2023-1079)

- 在用户分离 rc 设备的方式中,Linux 内核集成的红外接收器/收发器驱动程序中存在释放后使用缺陷。本地攻击者可利用此缺陷造成系统崩溃,或可能提升其在系统中的权限。(CVE-2023-1118)

- Linux 内核流量控制索引过滤器 (tcindex) 中存在释放后使用漏洞,可造成权限升级。遍历数据包时可更新不完全哈希区域,这将在通过破坏的 tcf_ext 调用“tcf_exts_exec()”时造成释放后使用。本地攻击者用户可利用此漏洞将其权限提升至 root。此问题影响 Linux 内核:从 4.14 版至 git commit ee059170b1f7e94e55fa6cadee544e176a6e59c2。(CVE-2023-1281)

- 在 Linux 内核的 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c 的 brcmf_get_assoc_ies 中发现越界读取问题。当 assoc_info->req_len 数据大于定义为 WL_EXTRA_BUF_MAX 的缓冲区大小时,可能会发生此问题,从而导致拒绝服务。(CVE-2023-1380)

- 在 KVM 中发现缺陷。在 32 位系统上调用 KVM_GET_DEBUGREGS ioctl 时,kvm_debugregs 结构的某些未初始化部分可能会被复制到用户空间,从而导致信息泄漏。(CVE-2023-1513)

- 在 Linux 内核中发现,btrfs 中 fs/btrfs/ctree.c 的 btrfs_search_slot 存在释放后使用缺陷。攻击者可利用此缺陷导致系统崩溃,并可能造成内核信息泄漏 (CVE-2023-1611)

- 在 Linux 内核 Xircom 16 位 PCMCIA(PC 卡)以太网驱动程序中发现了一个释放后使用缺陷。本地用户可利用此缺陷导致系统崩溃或可能提升其在系统中的特权。
(CVE-2023-1670)

- Linux 内核流量控制索引过滤器 (tcindex) 中存在释放后使用漏洞,可造成特权提升。在删除底层结构期间发生完美哈希时,tcindex_delete 函数未正确停用过滤器,这随后可能会导致双重释放该结构。本地攻击者用户可利用此漏洞将其权限提升至 root。
我们建议升级过去的提交 8c710f75256bb3cf05ac7b1672c82b92c43f3d28。(CVE-2023-1829)

- 在 Hardware Monitoring Linux Kernel Driver (xgene-hwmon) 的 drivers/hwmon/xgene-hwmon.c 内的 xgene_hwmon_remove 中发现一个释放后使用缺陷。由于争用问题,此缺陷可能会让本地攻击者造成系统崩溃。此漏洞甚至可能导致内核信息泄漏问题。
(CVE-2023-1855)

- 在 Linux 内核的 9pfs 的 Xen 传输中,在 net/9p/trans_xen.c 的 xen_9pfs_front_removet 中发现一个释放后使用缺陷。此缺陷让本地攻击者可以因争用问题造成系统崩溃,进而可能导致内核信息泄露。(CVE-2023-1859)

- 在 Linux 内核中 drivers\bluetooth\btsdio.c 的 btsdio_remove 中发现了一个释放后使用缺陷。在此缺陷中,若使用未完成的作业调用 btsdio_remove,可能会造成争用问题,从而在 hdev 设备上导致 UAF。(CVE-2023-1989)

- 在 Linux 内核中 drivers/nfc/st-nci/ndlc.c 的 ndlc_remove 中发现了一个释放后使用缺陷。由于争用问题,此缺陷可能会让攻击者造成系统崩溃。(CVE-2023-1990)

- 在 HCI 套接字实现中发现一个漏洞,出现此漏洞的原因是 Linux 内核的 net/bluetooth/hci_sock.c 中缺少功能检查。此缺陷让攻击者可以在未经授权的情况下执行管理命令,从而危害蓝牙通信的机密性、完整性和可用性。(CVE-2023-2002)

- 在处理 RPL 协议期间,在 Linux 内核的网络子系统中发现一个缺陷。
发生此问题的原因是未正确处理用户提供的数据,这可导致断言失败。这可能允许未经身份验证的远程攻击者在系统上创建拒绝服务情况。(CVE-2023-2156)

- 在 Linux 内核的 SCSI 子组件中,发现 drivers/scsi/iscsi_tcp.c 的 iscsi_sw_tcp_session_create 存在释放后使用漏洞。攻击者可利用此缺陷泄露内核内部信息。
(CVE-2023-2162)

- 在 Linux 内核的 SLIMpro I2C 设备驱动程序中发现越界写入漏洞。userspace data->block[0] 变量的上限未限定为 0-255 之间的数字,因而可将它用作 memcpy 的大小,这可能导致写入超出 dma_buffer 的末尾。有权限的本地用户可借此造成系统崩溃,或可能实现代码执行。(CVE-2023-2194)

- Linux 内核性能事件系统中存在一个释放后使用漏洞,攻击者可利用此漏洞实现本地特权提升。perf_group_detach 函数在调用 add_event_to_groups() 前未检查事件同级组件的 attach_state,但是 remove_on_exec 可以在从其群组分离之前调用 list_del_event(),从而可以使用悬摆指针造成释放后使用漏洞。我们建议升级过去的提交 fd0815f632c24878e325821943edccc7fde947a2。(CVE-2023-2235)

- ** REJECT ** 此 CVE ID 与 CVE-2023-31436 重复,已被其 CVE Numbering Authority 拒绝或撤回。(CVE-2023-2248)

- 发现可能因为存在递归锁定情形而产生的拒绝服务问题,导致 Linux 内核 Device Mapper Multipathing 子组件中 drivers/md/dm-ioctl.c 的 table_clear 发生死锁。(CVE-2023-2269)

- 在 Linux 内核 5.19 之前版本中,drivers/gpu/drm/arm/malidp_planes.c 会错译 get_sg_table 的返回值(预计在错误情况下会返回为 NULL,而实际上却是错误指针)。(CVE-2023-23004)

- 在 6.1.9 及之前版本的 Linux 内核中,drivers/hid/hid-bigbenff.c 中的 bigben_remove 中通过构建的 USB 设备造成了释放后使用,这是因为 LED 控制器保持注册的时间过长。(CVE-2023-25012)

- 在 6.1.13 版本之前的 Linux 内核中,由于设备重命名期间发生分配失败(用于在新位置注册 sysctl 表),net/mpls/af_mpls.c 中会存在双重释放漏洞。(CVE-2023-26545)

- 在 Linux 内核 6.2.6 及其之前所有版本中,net/tls/tls_main.c 的 do_tls_getsockopt 缺少 lock_sock 调用,从而导致争用条件(造成释放后使用或空指针取消引用)。(CVE-2023-28466)

- 在 Linux 内核的 fs/hfsplus/super.c 中,在 hfsplus_put_super 中发现一个释放后使用缺陷。此缺陷可能会让本地用户造成拒绝服务问题。(CVE-2023-2985)

- 在 6.2.8 及之前版本的 Linux 内核的 arch/x86/kvm/vmx/nested.c 中发现一个问题。x86_64 上的 nVMX 缺少对 CR0 和 CR4 的一致性检查。(CVE-2023-30456)

- 如果物理邻近攻击者拔出设备,则 Linux 内核 6.2.9 之前版本的 drivers/power/supply/da9150-charger.c 中会产生争用条件,并且由此导致释放后使用。
(CVE-2023-30772)

- 在 Linux 内核 6.2.13 之前版本的 net/sched/sch_qfq.c 中,qfq_change_class 允许越界写入,因为 lmax 可超过 QFQ_MIN_LMAX。(CVE-2023-31436)

- 在 Linux 内核 6.3.1 及更低的版本中,处理批处理请求时 Netfilter nf_tables 中的释放后使用可被滥用于在内核内存上执行任意读取和写入操作。非特权本地用户可获得根权限。发生这种情况的原因是未正确处理匿名集。(CVE-2023-32233)

- 在 Linux 内核 6.1.11 之前的版本中发现问题。 因为也允许接受成功连接的 AF_NETROM 套接字,所以 net/netrom/af_netrom.c 中存在释放后使用问题。但是要利用此漏洞,系统必须配置 netrom 路由,或者攻击者必须具有 CAP_NET_ADMIN 功能。(CVE-2023-32269)

- 如果物理邻近攻击者拔出基于 emac 的设备,则 Linux 内核 6.2.9 之前版本的 drivers/net/ethernet/qualcomm/emac/emac.c 中会产生争用条件,并且由此导致释放后使用。
(CVE-2023-33203)

- 在 Linux 内核 6.2.9 之前的版本中发现问题。 在 drivers/power/supply/bq24190_charger.c 的 bq24190_remove 中发现一个释放后使用问题。由于争用条件,此问题可能会让本地攻击者造成系统崩溃。(CVE-2023-33288)

- ** 有争议** 在 Linux 内核 6.3.3 之前版本中发现问题。由于 ext4_group_desc_csum 未正确检查偏移,因此当从 fs/ext4/super.c 调用时,lib/crc16.c 中的 crc16 发生越界读取。注意:第三方对此问题存在争议,因为该内核并非用于防御具有所述“在被文件系统挂载期间修改块设备”权限的攻击者。
(CVE-2023-34256)

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

解决方案

升级受影响的 kernel-generic 程序包。

另见

http://www.nessus.org/u?b44ee412

插件详情

严重性: High

ID: 177495

文件名: Slackware_SSA_2023-172-02.nasl

版本: 1.2

类型: local

发布时间: 2023/6/22

最近更新时间: 2024/3/4

支持的传感器: Nessus

风险信息

VPR

风险因素: High

分数: 8.9

CVSS v2

风险因素: High

基本分数: 7.2

时间分数: 6.3

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

CVSS 分数来源: CVE-2023-1079

CVSS v3

风险因素: High

基本分数: 8.8

时间分数: 8.4

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

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

CVSS 分数来源: CVE-2022-2196

漏洞信息

CPE: p-cpe:/a:slackware:slackware_linux:kernel-generic-smp, cpe:/o:slackware:slackware_linux:15.0, p-cpe:/a:slackware:slackware_linux:kernel-modules, p-cpe:/a:slackware:slackware_linux:kernel-modules-smp, p-cpe:/a:slackware:slackware_linux:kernel-source, p-cpe:/a:slackware:slackware_linux:kernel-huge, p-cpe:/a:slackware:slackware_linux:kernel-huge-smp, p-cpe:/a:slackware:slackware_linux:kernel-generic, p-cpe:/a:slackware:slackware_linux:kernel-headers

必需的 KB 项: Host/local_checks_enabled, Host/Slackware/release, Host/Slackware/packages

可利用: true

易利用性: Exploits are available

补丁发布日期: 2023/6/21

漏洞发布日期: 2022/12/5

可利用的方式

Core Impact

参考资料信息

CVE: CVE-2022-2196, CVE-2022-27672, CVE-2022-3707, CVE-2022-4269, CVE-2022-4379, CVE-2022-48425, CVE-2023-0459, CVE-2023-1076, CVE-2023-1077, CVE-2023-1078, CVE-2023-1079, CVE-2023-1118, CVE-2023-1281, CVE-2023-1380, CVE-2023-1513, CVE-2023-1611, CVE-2023-1670, CVE-2023-1829, CVE-2023-1855, CVE-2023-1859, CVE-2023-1989, CVE-2023-1990, CVE-2023-2002, CVE-2023-2156, CVE-2023-2162, CVE-2023-2194, CVE-2023-2235, CVE-2023-2248, CVE-2023-2269, CVE-2023-23004, CVE-2023-2483, CVE-2023-25012, CVE-2023-26545, CVE-2023-28466, CVE-2023-2985, CVE-2023-30456, CVE-2023-30772, CVE-2023-31436, CVE-2023-32233, CVE-2023-32269, CVE-2023-33203, CVE-2023-33288, CVE-2023-34256