Security update for the Linux Kernel

SUSE Security Update: Security update for the Linux Kernel
Announcement ID: SUSE-SU-2019:2949-1
Rating: important
References: #1051510 #1084878 #1117665 #1131107 #1133140 #1135966 #1135967 #1136261 #1137865 #1139073 #1140671 #1141013 #1141054 #1142458 #1143187 #1144123 #1144903 #1145477 #1146042 #1146163 #1146285 #1146361 #1146378 #1146391 #1146413 #1146425 #1146512 #1146514 #1146516 #1146519 #1146524 #1146526 #1146529 #1146540 #1146543 #1146547 #1146550 #1146584 #1146589 #1147022 #1147122 #1148394 #1148938 #1149083 #1149376 #1149522 #1149527 #1149555 #1149612 #1150025 #1150112 #1150452 #1150457 #1150465 #1150727 #1150942 #1151347 #1151350 #1152685 #1152782 #1152788 #1153158 #1153263 #1154103 #1154372 #1155131 #1155671
Cross-References: CVE-2016-10906 CVE-2017-18379 CVE-2017-18509 CVE-2017-18551 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-15239 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-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-9456 CVE-2019-9506
Affected Products:
  • SUSE OpenStack Cloud Crowbar 8
  • SUSE OpenStack Cloud 8
  • SUSE Linux Enterprise Server for SAP 12-SP3
  • SUSE Linux Enterprise Server 12-SP3-LTSS
  • SUSE Linux Enterprise Server 12-SP3-BCL
  • SUSE Linux Enterprise High Availability 12-SP3
  • SUSE Enterprise Storage 5
  • SUSE CaaS Platform 3.0
  • HPE Helion Openstack 8

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

Description:


The SUSE Linux Enterprise 12-SP3 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-2017-18379: An out-of-boundary access was fixed in the drivers/nvme/target module (bnc#1143187).

  • 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-15239: A incorrect patch to net/ipv4 was fixed. By adding to a write queue between disconnection and re-connection, a local attacker could trigger multiple use-after-free conditions. This could result in kernel crashes or potentially in privilege escalation. (bnc#1146589)

  • 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-2017-18551: An out-of-bounds write was fixed in the drivers/i2c driver (bnc#1146163).

  • 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)

The following non-security bugs were fixed:
  • array_index_nospec: Sanitize speculative array (bsc#1155671)
  • bonding/802.3ad: fix link_failure_count tracking (bsc#1141013).
  • bonding/802.3ad: fix slave link initialization transition states (bsc#1141013).
  • bonding: correctly update link status during mii-commit phase (bsc#1141013).
  • bonding: fix active-backup transition (bsc#1141013).
  • bonding: make speed, duplex setting consistent with link state (bsc#1141013).
  • bonding: ratelimit failed speed/duplex update warning (bsc#1141013).
  • bonding: require speed/duplex only for 802.3ad, alb and tlb (bsc#1141013).
  • bonding: set default miimon value for non-arp modes if not set (bsc#1141013).
  • bonding: speed/duplex update at NETDEV_UP event (bsc#1141013).
  • cifs: fix panic in smb2_reconnect (bsc#1142458).
  • cifs: handle netapp error codes (bsc#1136261).
  • cpu/speculation: Uninline and export CPU mitigations helpers (bnc#1117665).
  • ib/core, ipoib: Do not overreact to SM LID change event (bsc#1154103)
  • ib/core: Add mitigation for Spectre V1 (bsc#1155671)
  • ixgbe: sync the first fragment unconditionally (bsc#1133140).
  • kvm: Convert kvm_lock to a mutex (bsc#1117665).
  • kvm: lapic: cap __delay at lapic_timer_advance_ns (bsc#1149083).
  • 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: Reduce the overhead when lapic_timer_advance is disabled (bsc#1149083).
  • 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: move nsec_to_cycles from x86.c to x86.h (bsc#1149083).
  • 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).
  • pci: hv: Use bytes 4 and 5 from instance ID as the PCI domain numbers (bsc#1153263).
  • powerpc/64s: support nospectre_v2 cmdline option (bsc#1131107).
  • powerpc/pseries: correctly track irq state in default idle (bsc#1150727 bsc#1150942 ltc#178925 ltc#181484).
  • powerpc/rtas: use device model APIs and serialization during LPM (bsc#1144123 ltc#178840).
  • powerpc/security: Show powerpc_security_features in debugfs (bsc#1131107).
  • scsi: scsi_transport_fc: Drop double list_del() (bsc#1084878) During the backport of 260f4aeddb48 ("scsi: scsi_transport_fc: return -EBUSY for deleted vport") an additional list_del() was introduced. The list entry will be freed in fc_vport_terminate(). Do not free it premature in fc_remove_host().
  • swiotlb: Add support for DMA_ATTR_SKIP_CPU_SYNC in Xen-swiotlb unmap path (bsc#1133140).
  • vmci: Release resource if the work is already queued (bsc#1051510).
  • x86/cpu: Add Atom Tremont (Jacobsville) (bsc#1117665).

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 Crowbar 8:
    zypper in -t patch SUSE-OpenStack-Cloud-Crowbar-8-2019-2949=1
  • SUSE OpenStack Cloud 8:
    zypper in -t patch SUSE-OpenStack-Cloud-8-2019-2949=1
  • SUSE Linux Enterprise Server for SAP 12-SP3:
    zypper in -t patch SUSE-SLE-SAP-12-SP3-2019-2949=1
  • SUSE Linux Enterprise Server 12-SP3-LTSS:
    zypper in -t patch SUSE-SLE-SERVER-12-SP3-2019-2949=1
  • SUSE Linux Enterprise Server 12-SP3-BCL:
    zypper in -t patch SUSE-SLE-SERVER-12-SP3-BCL-2019-2949=1
  • SUSE Linux Enterprise High Availability 12-SP3:
    zypper in -t patch SUSE-SLE-HA-12-SP3-2019-2949=1
  • SUSE Enterprise Storage 5:
    zypper in -t patch SUSE-Storage-5-2019-2949=1
  • SUSE CaaS Platform 3.0:
    To install this update, use the SUSE CaaS Platform Velum dashboard. It will inform you if it detects new updates and let you then trigger updating of the complete cluster in a controlled way.
  • HPE Helion Openstack 8:
    zypper in -t patch HPE-Helion-OpenStack-8-2019-2949=1

Package List:

  • SUSE OpenStack Cloud Crowbar 8 (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE OpenStack Cloud Crowbar 8 (x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-default-kgraft-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE OpenStack Cloud 8 (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE OpenStack Cloud 8 (x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-default-kgraft-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE Linux Enterprise Server for SAP 12-SP3 (ppc64le x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-default-kgraft-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE Linux Enterprise Server for SAP 12-SP3 (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-LTSS (aarch64 ppc64le s390x x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-LTSS (ppc64le x86_64):
    • kernel-default-kgraft-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-LTSS (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-LTSS (s390x):
    • kernel-default-man-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-BCL (x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE Linux Enterprise Server 12-SP3-BCL (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE Linux Enterprise High Availability 12-SP3 (ppc64le s390x x86_64):
    • cluster-md-kmp-default-4.4.180-94.107.1
    • cluster-md-kmp-default-debuginfo-4.4.180-94.107.1
    • dlm-kmp-default-4.4.180-94.107.1
    • dlm-kmp-default-debuginfo-4.4.180-94.107.1
    • gfs2-kmp-default-4.4.180-94.107.1
    • gfs2-kmp-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • ocfs2-kmp-default-4.4.180-94.107.1
    • ocfs2-kmp-default-debuginfo-4.4.180-94.107.1
  • SUSE Enterprise Storage 5 (aarch64 x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1
  • SUSE Enterprise Storage 5 (x86_64):
    • kernel-default-kgraft-4.4.180-94.107.1
  • SUSE Enterprise Storage 5 (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • SUSE CaaS Platform 3.0 (x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
  • HPE Helion Openstack 8 (noarch):
    • kernel-devel-4.4.180-94.107.1
    • kernel-macros-4.4.180-94.107.1
    • kernel-source-4.4.180-94.107.1
  • HPE Helion Openstack 8 (x86_64):
    • kernel-default-4.4.180-94.107.1
    • kernel-default-base-4.4.180-94.107.1
    • kernel-default-base-debuginfo-4.4.180-94.107.1
    • kernel-default-debuginfo-4.4.180-94.107.1
    • kernel-default-debugsource-4.4.180-94.107.1
    • kernel-default-devel-4.4.180-94.107.1
    • kernel-default-kgraft-4.4.180-94.107.1
    • kernel-syms-4.4.180-94.107.1

References: