Security update for the Linux RT Kernel

Announcement ID: SUSE-SU-2022:0555-1
Rating: critical
References:
Cross-References:
CVSS scores:
  • CVE-2020-28097 ( SUSE ): 6.2 CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
  • CVE-2020-28097 ( NVD ): 5.9 CVSS:3.1/AV:P/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
  • CVE-2021-3564 ( SUSE ): 4.7 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2021-3564 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2021-39648 ( SUSE ): 4.4 CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
  • CVE-2021-39648 ( NVD ): 4.1 CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N
  • CVE-2021-39657 ( SUSE ): 3.3 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
  • CVE-2021-39657 ( NVD ): 4.4 CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
  • CVE-2021-4083 ( SUSE ): 7.4 CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-4083 ( NVD ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-4135 ( SUSE ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
  • CVE-2021-4135 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
  • CVE-2021-4149 ( SUSE ): 4.7 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2021-4149 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2021-4197 ( SUSE ): 6.3 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N
  • CVE-2021-4197 ( NVD ): 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-4202 ( SUSE ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-4202 ( NVD ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-44733 ( SUSE ): 4.2 CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
  • CVE-2021-44733 ( NVD ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2021-45095 ( SUSE ): 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
  • CVE-2021-45095 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
  • CVE-2022-0322 ( SUSE ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2022-0322 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
  • CVE-2022-0330 ( SUSE ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-0330 ( NVD ): 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-0435 ( SUSE ): 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-0435 ( NVD ): 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-22942 ( SUSE ): 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-22942 ( NVD ): 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • CVE-2022-24448 ( SUSE ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
  • CVE-2022-24448 ( NVD ): 3.3 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Affected Products:
  • SUSE Linux Enterprise High Performance Computing 12 SP5
  • SUSE Linux Enterprise Real Time 12 SP5
  • SUSE Linux Enterprise Server 12 SP5

An update that solves 16 vulnerabilities and has 31 security fixes can now be installed.

Description:

The SUSE Linux Enterprise 12 SP5 RT kernel was updated to receive various security and bugfixes.

The following security bugs were fixed:

  • CVE-2022-0435: Fixed remote stack overflow in net/tipc module that validate domain record count on input (bsc#1195254).
  • CVE-2022-24448: Fixed an issue inside fs/nfs/dir.c if an application sets the O_DIRECTORY flag, and tries to open a regular file, nfs_atomic_open() performs a regular lookup (bnc#1195612).
  • CVE-2021-3564: Fixed double-free memory corruption in the Linux kernel HCI device initialization subsystem that could have been used by attaching malicious HCI TTY Bluetooth devices. A local user could use this flaw to crash the system (bnc#1186207).
  • CVE-2020-28097: Fixed out-of-bounds read in vgacon subsystem that mishandled software scrollback (bnc#1187723).
  • CVE-2021-45095: Fixed refcount leak in pep_sock_accept in net/phonet/pep.c (bnc#1193867).
  • CVE-2022-22942: Fixed stale file descriptors on failed usercopy (bsc#1195065).
  • CVE-2021-39657: Fixed out of bounds read due to a missing bounds check in ufshcd_eh_device_reset_handler of ufshcd.c. This could lead to local information disclosure with System execution privileges needed (bnc#1193864).
  • CVE-2021-39648: Fixed possible disclosure of kernel heap memory due to a race condition in gadget_dev_desc_UDC_show of configfs.c. This could lead to local information disclosure with System execution privileges needed. User interaction is not needed for exploitation (bnc#1193861).
  • CVE-2021-44733: Fixed a use-after-free exists in drivers/tee/tee_shm.c in the TEE subsystem, that could have occured because of a race condition in tee_shm_get_from_id during an attempt to free a shared memory object (bnc#1193767).
  • CVE-2022-0330: Fixed flush TLBs before releasing backing store (bsc#1194880).
  • CVE-2022-0322: Fixed SCTP issue with account stream padding length for reconf chunk (bsc#1194985).
  • CVE-2021-4197: Use cgroup open-time credentials for process migraton perm checks (bsc#1194302).
  • CVE-2021-4202: Fixed NFC race condition by adding NCI_UNREG flag (bsc#1194529).
  • CVE-2021-4083: Fixed a read-after-free memory flaw inside the garbage collection for Unix domain socket file handlers when users call close() and fget() simultaneouslyand can potentially trigger a race condition (bnc#1193727).
  • CVE-2021-4149: Fixed btrfs unlock newly allocated extent buffer after error (bsc#1194001).
  • CVE-2021-4135: Fixed zero-initialize memory inside netdevsim for new map's value in function nsim_bpf_map_alloc (bsc#1193927).

The following non-security bugs were fixed:

  • KVM: remember position in kvm->vcpus array (bsc#1190973).
  • KVM: s390: index kvm->arch.idle_mask by vcpu_idx (bsc#1190973).
  • SUNRPC: Add basic load balancing to the transport switch - kabi fix. (bnc#1192729).
  • SUNRPC: Add basic load balancing to the transport switch. (bnc#1192729)
  • SUNRPC: Fix initialisation of struct rpc_xprt_switch (bnc#1192729).
  • SUNRPC: Optimise transport balancing code (bnc#1192729).
  • SUNRPC: Replace division by multiplication in calculation of queue length (bnc#1192729).
  • SUNRPC: Skip zero-refcount transports (bnc#1192729).
  • USB: serial: option: add Telit FN990 compositions (git-fixes).
  • bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() (bsc#1194227).
  • crypto: qat - fix undetected PFVF timeout in ACK loop (git-fixes).
  • ext4: set csum seed in tmp inode while migrating to extents (bsc#1195272).
  • fget: clarify and improve __fget_files() implementation (bsc#1193727).
  • hv_netvsc: Set needed_headroom according to VF (bsc#1193507).
  • ibmvnic: Allow extra failures before disabling (bsc#1195073 ltc#195713).
  • ibmvnic: do not spin in tasklet (bsc#1195073 ltc#195713).
  • ibmvnic: init ->running_cap_crqs early (bsc#1195073 ltc#195713).
  • ibmvnic: remove unused ->wait_capability (bsc#1195073 ltc#195713).
  • kABI fixup after adding vcpu_idx to struct kvm_cpu (bsc#1190973).
  • kabi: mask new member "empty" of struct Qdisc (bsc#1183405).
  • kabi: revert drop of Qdisc::atomic_qlen (bsc#1183405).
  • kprobes: Limit max data_size of the kretprobe instances (bsc#1193669).
  • livepatch: Avoid CPU hogging with cond_resched (bsc#1071995).
  • memstick: rtsx_usb_ms: fix UAF (bsc#1194516).
  • mm/hwpoison: do not lock page again when me_huge_page() successfully recovers (bsc#1194814).
  • mm/slab: Using proper atomic helper (bsc#1186222).
  • moxart: fix potential use-after-free on remove path (bsc#1194516).
  • net, xdp: Introduce xdp_init_buff utility routine (bsc#1193507).
  • net, xdp: Introduce xdp_prepare_buff utility routine (bsc#1193507).
  • net/sched: annotate lockless accesses to qdisc->empty (bsc#1183405).
  • net/sched: fix race between deactivation and dequeue for NOLOCK qdisc (bsc#1183405).
  • net/sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue (bsc#1183405).
  • net/sched: pfifo_fast: fix wrong dereference when qdisc is reset (bsc#1183405).
  • net: allow retransmitting a TCP packet if original is still in queue (bsc#1188605 bsc#1187428).
  • net: caif: avoid using qdisc_qlen() (bsc#1183405).
  • net: cdc_ncm: Allow for dwNtbOutMaxSize to be unset or zero (git-fixes).
  • net: dev: introduce support for sch BYPASS for lockless qdisc (bsc#1183405).
  • net: mana: Add RX fencing (bsc#1193507).
  • net: mana: Add XDP support (bsc#1193507).
  • net: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc (bsc#1183405).
  • net: sched: Avoid using yield() in a busy waiting loop (bsc#1183405).
  • net: sched: add barrier to ensure correct ordering for lockless qdisc (bsc#1183405).
  • net: sched: add empty status flag for NOLOCK qdisc (bsc#1183405).
  • net: sched: always do stats accounting according to TCQ_F_CPUSTATS (bsc#1183405).
  • net: sched: avoid unnecessary seqcount operation for lockless qdisc (bsc#1183405).
  • net: sched: fix packet stuck problem for lockless qdisc (bsc#1183405).
  • net: sched: fix tx action reschedule issue with stopped queue (bsc#1183405).
  • net: sched: fix tx action rescheduling issue during deactivation (bsc#1183405).
  • net: sched: prefer qdisc_is_empty() over direct qlen access (bsc#1183405).
  • net: sched: replaced invalid qdisc tree flush helper in qdisc_replace (bsc#1183405).
  • net: sched: when clearing NOLOCK, clear TCQ_F_CPUSTATS, too (bsc#1183405).
  • net: usb: lan78xx: add Allied Telesis AT29M2-AF (git-fixes).
  • net_sched: avoid resetting active qdisc for multiple times (bsc#1183405).
  • net_sched: get rid of unnecessary dev_qdisc_reset() (bsc#1183405).
  • net_sched: use qdisc_reset() in qdisc_destroy() (bsc#1183405).
  • nfs: do not dirty kernel pages read by direct-io (bsc#1194410).
  • nvme: add 'iopolicy' module parameter (bsc#1177599 bsc#1193096).
  • nvme: return BLK_STS_TRANSPORT unless DNR for NVME_SC_NS_NOT_READY (bsc#1163405).
  • of: Add cpu node iterator for_each_of_cpu_node() (bsc#1065729).
  • of: Add device_type access helper functions (bsc#1065729).
  • of: Fix cpu node iterator to not ignore disabled cpu nodes (bsc#1065729).
  • of: Fix property name in of_node_get_device_type (bsc#1065729).
  • of: add node name compare helper functions (bsc#1065729).
  • powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses (bsc#1065729).
  • powerpc/prom_init: Fix improper check of prom_getprop() (bsc#1065729).
  • powerpc/pseries/cpuhp: cache node corrections (bsc#1065729).
  • powerpc/pseries/cpuhp: delete add/remove_by_count code (bsc#1065729).
  • powerpc/pseries/mobility: ignore ibm, platform-facilities updates (bsc#1065729).
  • powerpc/traps: do not enable irqs in _exception (bsc#1065729).
  • powerpc: add interrupt_cond_local_irq_enable helper (bsc#1065729).
  • s390/cio: make ccw_device_dma_* more robust (bsc#1193242).
  • s390/pci: add s390_iommu_aperture kernel parameter (bsc#1193234).
  • s390/pci: move pseudo-MMIO to prevent MIO overlap (bsc#1194965).
  • select: Fix indefinitely sleeping task in poll_schedule_timeout() (bsc#1194027).
  • tpm: Check for integer overflow in tpm2_map_response_body() (bsc#1082555).
  • tpm: add request_locality before write TPM_INT_ENABLE (bsc#1082555).
  • tpm: fix potential NULL pointer access in tpm_del_char_device (bsc#1184209 ltc#190917 git-fixes bsc#1193660 ltc#195634).
  • tracing/kprobes: 'nmissed' not showed correctly for kretprobe (git-fixes).
  • tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() (git-fixes).
  • ucsi_ccg: Check DEV_INT bit only when starting CCG4 (git-fixes).
  • usb: core: config: fix validation of wMaxPacketValue entries (git-fixes).
  • usbnet: fix error return code in usbnet_probe() (git-fixes).
  • usbnet: sanity check for maxpacket (git-fixes).
  • vfs: check fd has read access in kernel_read_file_from_fd() (bsc#1194888).
  • virtio: write back F_VERSION_1 before validate (bsc#1193235).
  • x86/platform/uv: Add more to secondary CPU kdump info (bsc#1194493).
  • xfrm: fix MTU regression (bsc#1185377, bsc#1194048).

Special Instructions and Notes:

  • Please reboot the system after installing this update.

Patch Instructions:

To install this SUSE update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:

  • SUSE Linux Enterprise Real Time 12 SP5
    zypper in -t patch SUSE-SLE-RT-12-SP5-2022-555=1

Package List:

  • SUSE Linux Enterprise Real Time 12 SP5 (x86_64)
    • gfs2-kmp-rt-debuginfo-4.12.14-10.78.1
    • cluster-md-kmp-rt-debuginfo-4.12.14-10.78.1
    • kernel-rt_debug-devel-4.12.14-10.78.1
    • kernel-rt-devel-debuginfo-4.12.14-10.78.1
    • dlm-kmp-rt-debuginfo-4.12.14-10.78.1
    • kernel-rt-debugsource-4.12.14-10.78.1
    • kernel-rt_debug-devel-debuginfo-4.12.14-10.78.1
    • kernel-rt_debug-debuginfo-4.12.14-10.78.1
    • cluster-md-kmp-rt-4.12.14-10.78.1
    • dlm-kmp-rt-4.12.14-10.78.1
    • kernel-syms-rt-4.12.14-10.78.1
    • kernel-rt-base-debuginfo-4.12.14-10.78.1
    • kernel-rt-devel-4.12.14-10.78.1
    • ocfs2-kmp-rt-4.12.14-10.78.1
    • kernel-rt-debuginfo-4.12.14-10.78.1
    • kernel-rt_debug-debugsource-4.12.14-10.78.1
    • ocfs2-kmp-rt-debuginfo-4.12.14-10.78.1
    • kernel-rt-base-4.12.14-10.78.1
    • gfs2-kmp-rt-4.12.14-10.78.1
  • SUSE Linux Enterprise Real Time 12 SP5 (noarch)
    • kernel-source-rt-4.12.14-10.78.1
    • kernel-devel-rt-4.12.14-10.78.1
  • SUSE Linux Enterprise Real Time 12 SP5 (nosrc x86_64)
    • kernel-rt_debug-4.12.14-10.78.1
    • kernel-rt-4.12.14-10.78.1

References: