Security update for the Linux Kernel

SUSE Security Update: Security update for the Linux Kernel
Announcement ID: SUSE-SU-2019:2984-1
Rating: important
References: #1068032 #1084878 #1092497 #1106913 #1117665 #1135966 #1135967 #1137865 #1139550 #1140671 #1141054 #1144338 #1144903 #1145477 #1146285 #1146361 #1146378 #1146391 #1146413 #1146425 #1146512 #1146514 #1146516 #1146519 #1146584 #1147122 #1148394 #1148938 #1149376 #1149522 #1149527 #1149555 #1149612 #1149849 #1150025 #1150112 #1150223 #1150452 #1150457 #1150465 #1150466 #1151347 #1151350 #1152685 #1152782 #1152788 #1153158 #1154372 #1155671 #1155898 #1156187
Cross-References: CVE-2016-10906 CVE-2017-18509 CVE-2017-18595 CVE-2018-12207 CVE-2018-20976 CVE-2019-0154 CVE-2019-0155 CVE-2019-10220 CVE-2019-11135 CVE-2019-13272 CVE-2019-14814 CVE-2019-14815 CVE-2019-14816 CVE-2019-14821 CVE-2019-14835 CVE-2019-15098 CVE-2019-15211 CVE-2019-15212 CVE-2019-15214 CVE-2019-15215 CVE-2019-15216 CVE-2019-15217 CVE-2019-15218 CVE-2019-15219 CVE-2019-15220 CVE-2019-15221 CVE-2019-15290 CVE-2019-15291 CVE-2019-15505 CVE-2019-15666 CVE-2019-15807 CVE-2019-15902 CVE-2019-15924 CVE-2019-15926 CVE-2019-15927 CVE-2019-16231 CVE-2019-16232 CVE-2019-16233 CVE-2019-16234 CVE-2019-16413 CVE-2019-16995 CVE-2019-17055 CVE-2019-17056 CVE-2019-17133 CVE-2019-17666 CVE-2019-18680 CVE-2019-18805 CVE-2019-9456 CVE-2019-9506
Affected Products:
  • SUSE OpenStack Cloud 7
  • SUSE Linux Enterprise Server for SAP 12-SP2
  • SUSE Linux Enterprise Server 12-SP2-LTSS
  • SUSE Linux Enterprise Server 12-SP2-BCL
  • SUSE Linux Enterprise High Availability 12-SP2

An update that solves 49 vulnerabilities and has two fixes is now available.

Description:



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

The following security bugs were fixed:

  • CVE-2018-12207: Untrusted virtual machines on Intel CPUs could exploit a race condition in the Instruction Fetch Unit of the Intel CPU to cause a Machine Exception during Page Size Change, causing the CPU core to be non-functional.

The Linux Kernel kvm hypervisor was adjusted to avoid page size changes in executable pages by splitting / merging huge pages into small pages as needed. More information can be found on https://www.suse.com/support/kb/doc/?id=7023735
  • CVE-2019-16995: Fix a memory leak in hsr_dev_finalize() if hsr_add_port failed to add a port, which may have caused denial of service (bsc#1152685).

  • CVE-2019-11135: Aborting an asynchronous TSX operation on Intel CPUs with Transactional Memory support could be used to facilitate sidechannel information leaks out of microarchitectural buffers, similar to the previously described "Microarchitectural Data Sampling" attack.

The Linux kernel was supplemented with the option to disable TSX operation altogether (requiring CPU Microcode updates on older systems) and better flushing of microarchitectural buffers (VERW).
The set of options available is described in our TID at https://www.suse.com/support/kb/doc/?id=7024251
  • CVE-2019-16233: drivers/scsi/qla2xxx/qla_os.c did not check the alloc_workqueue return value, leading to a NULL pointer dereference. (bsc#1150457).

  • CVE-2019-10220: Added sanity checks on the pathnames passed to the user space. (bsc#1144903).

  • CVE-2019-17666: rtlwifi: Fix potential overflow in P2P code (bsc#1154372).

  • CVE-2019-17133: cfg80211 wireless extension did not reject a long SSID IE, leading to a Buffer Overflow (bsc#1153158).

  • CVE-2019-16232: Fix a potential NULL pointer dereference in the Marwell libertas driver (bsc#1150465).

  • CVE-2019-16234: iwlwifi pcie driver did not check the alloc_workqueue return value, leading to a NULL pointer dereference. (bsc#1150452).

  • CVE-2019-17055: The AF_ISDN network module in the Linux kernel did not enforce CAP_NET_RAW, which meant that unprivileged users could create a raw socket (bnc#1152782).

  • CVE-2019-17056: The AF_NFC network module did not enforce CAP_NET_RAW, which meant that unprivileged users could create a raw socket (bsc#1152788).

  • CVE-2019-16413: The 9p filesystem did not protect i_size_write() properly, which caused an i_size_read() infinite loop and denial of service on SMP systems (bnc#1151347).

  • CVE-2019-15902: A backporting issue was discovered that re-introduced the Spectre vulnerability it had aimed to eliminate. This occurred because the backport process depends on cherry picking specific commits, and because two (correctly ordered) code lines were swapped (bnc#1149376).

  • CVE-2019-15291: Fixed a NULL pointer dereference issue that could be caused by a malicious USB device (bnc#1146519).

  • CVE-2019-15807: Fixed a memory leak in the SCSI module that could be abused to cause denial of service (bnc#1148938).

  • CVE-2019-13272: Fixed a mishandled the recording of the credentials of a process that wants to create a ptrace relationship, which allowed local users to obtain root access by leveraging certain scenarios with a parent-child process relationship, where a parent drops privileges and calls execve (potentially allowing control by an attacker). (bnc#1140671).

  • CVE-2019-14821: An out-of-bounds access issue was fixed in the kernel's kvm hypervisor. An unprivileged host user or process with access to '/dev/kvm' device could use this flaw to crash the host kernel, resulting in a denial of service or potentially escalating privileges on the system (bnc#1151350).

  • CVE-2019-15505: An out-of-bounds issue had been fixed that could be caused by crafted USB device traffic (bnc#1147122).

  • CVE-2017-18595: A double free in allocate_trace_buffer was fixed (bnc#1149555).

  • CVE-2019-14835: A buffer overflow flaw was found in the kernel's vhost functionality that translates virtqueue buffers to IOVs. A privileged guest user able to pass descriptors with invalid length to the host could use this flaw to increase their privileges on the host (bnc#1150112).

  • CVE-2019-15216: A NULL pointer dereference was fixed that could be malicious USB device (bnc#1146361).

  • CVE-2019-15924: A a NULL pointer dereference has been fixed in the drivers/net/ethernet/intel/fm10k module (bnc#1149612).

  • CVE-2019-9456: An out-of-bounds write in the USB monitor driver has been fixed. This issue could lead to local escalation of privilege with System execution privileges needed. (bnc#1150025).

  • CVE-2019-15926: An out-of-bounds access was fixed in the drivers/net/wireless/ath/ath6kl module. (bnc#1149527).

  • CVE-2019-15927: An out-of-bounds access was fixed in the sound/usb/mixer module (bnc#1149522).

  • CVE-2019-15666: There was an out-of-bounds array access in the net/xfrm module that could cause denial of service (bnc#1148394).

  • CVE-2019-15219: A NULL pointer dereference was fixed that could be abused by a malicious USB device (bnc#1146519 1146524).

  • CVE-2019-15220: A use-after-free issue was fixed that could be caused by a malicious USB device (bnc#1146519 1146526).

  • CVE-2019-15221: A NULL pointer dereference was fixed that could be caused by a malicious USB device (bnc#1146519 1146529).

  • CVE-2019-14814: A heap-based buffer overflow was fixed in the marvell wifi chip driver. That issue allowed local users to cause a denial of service (system crash) or possibly execute arbitrary code (bnc#1146512).

  • CVE-2019-14815: A missing length check while parsing WMM IEs was fixed (bsc#1146512, bsc#1146514, bsc#1146516).

  • CVE-2019-14816: A heap-based buffer overflow in the marvell wifi chip driver was fixed. Local users would have abused this issue to cause a denial of service (system crash) or possibly execute arbitrary code (bnc#1146516).

  • CVE-2017-18509: An issue in net/ipv6 as fixed. By setting a specific socket option, an attacker could control a pointer in kernel land and cause an inet_csk_listen_stop general protection fault, or potentially execute arbitrary code under certain circumstances. The issue can be triggered as root (e.g., inside a default LXC container or with the CAP_NET_ADMIN capability) or after namespace unsharing. (bnc#1145477)

  • CVE-2019-9506: The Bluetooth BR/EDR specification used to permit sufficiently low encryption key length and did not prevent an attacker from influencing the key length negotiation. This allowed practical brute-force attacks (aka "KNOB") that could decrypt traffic and inject arbitrary ciphertext without the victim noticing (bnc#1137865).

  • CVE-2019-15098: A NULL pointer dereference in drivers/net/wireless/ath was fixed (bnc#1146378).

  • CVE-2019-15290: A NULL pointer dereference in ath6kl_usb_alloc_urb_from_pipe was fixed (bsc#1146378).

  • CVE-2019-15212: A double-free issue was fixed in drivers/usb driver (bnc#1146391).

  • CVE-2016-10906: A use-after-free issue was fixed in drivers/net/ethernet/arc (bnc#1146584).

  • CVE-2019-15211: A use-after-free issue caused by a malicious USB device was fixed in the drivers/media/v4l2-core driver (bnc#1146519).

  • CVE-2019-15217: A a NULL pointer dereference issue caused by a malicious USB device was fixed in the drivers/media/usb/zr364xx driver (bnc#1146519).

  • CVE-2019-15214: An a use-after-free issue in the sound subsystem was fixed (bnc#1146519).

  • CVE-2019-15218: A NULL pointer dereference caused by a malicious USB device was fixed in the drivers/media/usb/siano driver (bnc#1146413).

  • CVE-2019-15215: A use-after-free issue caused by a malicious USB device was fixed in the drivers/media/usb/cpia2 driver (bnc#1146425).

  • CVE-2018-20976: A use-after-free issue was fixed in the fs/xfs driver (bnc#1146285).

  • CVE-2019-0154: An unprotected read access to i915 registers has been fixed that could have been abused to facilitate a local denial-of-service attack. (bsc#1135966)

  • CVE-2019-0155: A privilege escalation vulnerability has been fixed in the i915 module that allowed batch buffers from user mode to gain super user privileges. (bsc#1135967)

  • CVE-2019-16231: The fjes driver did not check the alloc_workqueue return value, leading to a NULL pointer dereference. (bnc#1150466)

  • CVE-2019-18805: Fix signed integer overflow in tcp_ack_update_rtt() that could have lead to a denial of service or possibly unspecified other impact (bsc#1156187)

  • CVE-2019-18680: A NULL pointer dereference in rds_tcp_kill_sock() could cause denial of service (bnc#1155898)

The following non-security bugs were fixed:
  • cpu/speculation: Uninline and export CPU mitigations helpers (bnc#1117665).
  • documentation: Add ITLB_MULTIHIT documentation (bnc#1117665).
  • ib/core: Add mitigation for Spectre V1 (bsc#1155671)
  • ib/core: array_index_nospec: Sanitize speculative array (bsc#1155671)
  • ipv6: Update ipv6 defrag code (add bsc#1141054).
  • ksm: cleanup stable_node chain collapse case (bnc#1144338).
  • ksm: fix use after free with merge_across_nodes = 0 (bnc#1144338).
  • ksm: introduce ksm_max_page_sharing per page deduplication limit (bnc#1144338).
  • ksm: optimize refile of stable_node_dup at the head of the chain (bnc#1144338).
  • ksm: swap the two output parameters of chain/chain_prune (bnc#1144338).
  • kvm kABI Fix for NX patches (bsc#1117665).
  • kvm: Convert kvm_lock to a mutex (bsc#1117665).
  • kvm: MMU: drop vcpu param in gpte_access (bsc#1117665).
  • kvm: MMU: introduce kvm_mmu_gfn_{allow,disallow}_lpage (bsc#1117665).
  • kvm: MMU: rename has_wrprotected_page to mmu_gfn_lpage_is_disallowed (bsc#1117665).
  • kvm: vmx, svm: always run with EFER.NXE=1 when shadow paging is active (bsc#1117665).
  • kvm: x86, powerpc: do not allow clearing largepages debugfs entry (bsc#1117665).
  • kvm: x86: Do not release the page inside mmu_set_spte() (bsc#1117665).
  • kvm: x86: MMU: Consolidate quickly_check_mmio_pf() and is_mmio_page_fault() (bsc#1117665).
  • kvm: x86: MMU: Encapsulate the type of rmap-chain head in a new struct (bsc#1117665).
  • kvm: x86: MMU: Move handle_mmio_page_fault() call to kvm_mmu_page_fault() (bsc#1117665).
  • kvm: x86: MMU: Move initialization of parent_ptes out from kvm_mmu_alloc_page() (bsc#1117665).
  • kvm: x86: MMU: Move parent_pte handling from kvm_mmu_get_page() to link_shadow_page() (bsc#1117665).
  • kvm: x86: MMU: Remove unused parameter parent_pte from kvm_mmu_get_page() (bsc#1117665).
  • kvm: x86: MMU: always set accessed bit in shadow PTEs (bsc#1117665).
  • kvm: x86: add tracepoints around __direct_map and FNAME(fetch) (bsc#1117665).
  • kvm: x86: adjust kvm_mmu_page member to save 8 bytes (bsc#1117665).
  • kvm: x86: change kvm_mmu_page_get_gfn BUG_ON to WARN_ON (bsc#1117665).
  • kvm: x86: extend usage of RET_MMIO_PF_* constants (bsc#1117665).
  • kvm: x86: make FNAME(fetch) and __direct_map more similar (bsc#1117665).
  • kvm: x86: mmu: Apply global mitigations knob to ITLB_MULTIHIT (bnc#1117665).
  • kvm: x86: remove now unneeded hugepage gfn adjustment (bsc#1117665).
  • kvm: x86: simplify ept_misconfig (bsc#1117665).
  • media: smsusb: better handle optional alignment (bsc#1146413).
  • mm: use upstream patch for bsc#1106913
  • scsi: scsi_transport_fc: Drop double list_del() (bsc#1084878)
  • x86/bugs: correctly force-disable IBRS on !SKL systems (bsc#1068032, bsc#1092497).
  • x86/cpu: Add Atom Tremont (Jacobsville) (bsc#1117665).
  • x86/headers: Do not include asm/processor.h in asm/atomic.h (bsc#1150223).
  • x86/mitigations: Backport the STIBP pile See bsc#1139550
  • xen-blkfront: avoid ENOMEM in blkif_recover after migration (bsc#1149849).

Special Instructions and Notes:

Please reboot the system after installing this update.

Patch Instructions:

To install this SUSE Security 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 OpenStack Cloud 7:
    zypper in -t patch SUSE-OpenStack-Cloud-7-2019-2984=1
  • SUSE Linux Enterprise Server for SAP 12-SP2:
    zypper in -t patch SUSE-SLE-SAP-12-SP2-2019-2984=1
  • SUSE Linux Enterprise Server 12-SP2-LTSS:
    zypper in -t patch SUSE-SLE-SERVER-12-SP2-2019-2984=1
  • SUSE Linux Enterprise Server 12-SP2-BCL:
    zypper in -t patch SUSE-SLE-SERVER-12-SP2-BCL-2019-2984=1
  • SUSE Linux Enterprise High Availability 12-SP2:
    zypper in -t patch SUSE-SLE-HA-12-SP2-2019-2984=1

Package List:

  • SUSE OpenStack Cloud 7 (s390x x86_64):
    • kernel-default-4.4.121-92.125.1
    • kernel-default-base-4.4.121-92.125.1
    • kernel-default-base-debuginfo-4.4.121-92.125.1
    • kernel-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debugsource-4.4.121-92.125.1
    • kernel-default-devel-4.4.121-92.125.1
    • kernel-syms-4.4.121-92.125.1
  • SUSE OpenStack Cloud 7 (noarch):
    • kernel-devel-4.4.121-92.125.1
    • kernel-macros-4.4.121-92.125.1
    • kernel-source-4.4.121-92.125.1
  • SUSE OpenStack Cloud 7 (s390x):
    • kernel-default-man-4.4.121-92.125.1
  • SUSE Linux Enterprise Server for SAP 12-SP2 (ppc64le x86_64):
    • kernel-default-4.4.121-92.125.1
    • kernel-default-base-4.4.121-92.125.1
    • kernel-default-base-debuginfo-4.4.121-92.125.1
    • kernel-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debugsource-4.4.121-92.125.1
    • kernel-default-devel-4.4.121-92.125.1
    • kernel-syms-4.4.121-92.125.1
  • SUSE Linux Enterprise Server for SAP 12-SP2 (noarch):
    • kernel-devel-4.4.121-92.125.1
    • kernel-macros-4.4.121-92.125.1
    • kernel-source-4.4.121-92.125.1
  • SUSE Linux Enterprise Server 12-SP2-LTSS (ppc64le s390x x86_64):
    • kernel-default-4.4.121-92.125.1
    • kernel-default-base-4.4.121-92.125.1
    • kernel-default-base-debuginfo-4.4.121-92.125.1
    • kernel-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debugsource-4.4.121-92.125.1
    • kernel-default-devel-4.4.121-92.125.1
    • kernel-syms-4.4.121-92.125.1
  • SUSE Linux Enterprise Server 12-SP2-LTSS (noarch):
    • kernel-devel-4.4.121-92.125.1
    • kernel-macros-4.4.121-92.125.1
    • kernel-source-4.4.121-92.125.1
  • SUSE Linux Enterprise Server 12-SP2-LTSS (s390x):
    • kernel-default-man-4.4.121-92.125.1
  • SUSE Linux Enterprise Server 12-SP2-BCL (x86_64):
    • kernel-default-4.4.121-92.125.1
    • kernel-default-base-4.4.121-92.125.1
    • kernel-default-base-debuginfo-4.4.121-92.125.1
    • kernel-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debugsource-4.4.121-92.125.1
    • kernel-default-devel-4.4.121-92.125.1
    • kernel-syms-4.4.121-92.125.1
  • SUSE Linux Enterprise Server 12-SP2-BCL (noarch):
    • kernel-devel-4.4.121-92.125.1
    • kernel-macros-4.4.121-92.125.1
    • kernel-source-4.4.121-92.125.1
  • SUSE Linux Enterprise High Availability 12-SP2 (ppc64le s390x x86_64):
    • cluster-md-kmp-default-4.4.121-92.125.1
    • cluster-md-kmp-default-debuginfo-4.4.121-92.125.1
    • cluster-network-kmp-default-4.4.121-92.125.1
    • cluster-network-kmp-default-debuginfo-4.4.121-92.125.1
    • dlm-kmp-default-4.4.121-92.125.1
    • dlm-kmp-default-debuginfo-4.4.121-92.125.1
    • gfs2-kmp-default-4.4.121-92.125.1
    • gfs2-kmp-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debuginfo-4.4.121-92.125.1
    • kernel-default-debugsource-4.4.121-92.125.1
    • ocfs2-kmp-default-4.4.121-92.125.1
    • ocfs2-kmp-default-debuginfo-4.4.121-92.125.1

References: