SUSE-SU-2018:0115-1: important: Security update for the Linux Kernel

sle-security-updates at lists.suse.com sle-security-updates at lists.suse.com
Tue Jan 16 13:09:29 MST 2018


   SUSE Security Update: Security update for the Linux Kernel
______________________________________________________________________________

Announcement ID:    SUSE-SU-2018:0115-1
Rating:             important
References:         #1045205 #1050231 #1066569 #1066693 #1068032 
                    #1068671 #1070771 #1070781 #1071074 #1071470 
                    #1071693 #1071694 #1071695 #1072561 #1072876 
                    
Cross-References:   CVE-2017-11600 CVE-2017-13167 CVE-2017-15115
                    CVE-2017-15868 CVE-2017-16534 CVE-2017-16538
                    CVE-2017-17448 CVE-2017-17449 CVE-2017-17450
                    CVE-2017-17558 CVE-2017-5715 CVE-2017-5753
                    CVE-2017-5754 CVE-2017-8824
Affected Products:
                    SUSE Linux Enterprise Server 12-LTSS
                    SUSE Linux Enterprise Module for Public Cloud 12
______________________________________________________________________________

   An update that solves 14 vulnerabilities and has one errata
   is now available.

Description:



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

   This update adds mitigations for various side channel attacks against
   modern CPUs that could disclose content of otherwise unreadable memory
   (bnc#1068032).

   - CVE-2017-5753 / "SpectreAttack": Local attackers on systems with modern
     CPUs featuring deep instruction pipelining could use attacker
     controllable speculative execution over code patterns in the Linux
     Kernel to leak content from otherwise not readable memory in the same
     address space, allowing retrieval of passwords, cryptographic keys and
     other secrets.

     This problem is mitigated by adding speculative fencing on affected code
   paths throughout the Linux kernel.

     This issue is addressed for the x86_64, the IBM Power and IBM zSeries
   architecture.

   - CVE-2017-5715 / "SpectreAttack": Local attackers on systems with modern
     CPUs featuring branch prediction could use mispredicted branches to
     speculatively execute code patterns that in turn could be made to leak
     other non-readable content in the same address space, an attack similar
     to CVE-2017-5753.

     This problem is mitigated by disabling predictive branches, depending
     on CPU architecture either by firmware updates and/or fixes in the
      user-kernel privilege boundaries.

     This is done with help of Linux Kernel fixes on the Intel/AMD x86_64 and
   IBM zSeries architectures. On x86_64, this requires also updates
     of the CPU microcode packages, delivered in seperate updates.

     For IBM Power and zSeries the required firmware updates are supplied
     over regular channels by IBM.

     As this feature can have a performance impact, it can be disabled using
   the "nospec" kernel commandline option.

   - CVE-2017-5754 / "MeltdownAttack": Local attackers on systems with modern
     CPUs featuring deep instruction pipelining could use code patterns in
     userspace to speculative executive code that would read
     otherwise read protected memory, an attack similar to CVE-2017-5753.

     This problem is mitigated by unmapping the Linux Kernel from the user
   address space during user code execution, following a approach called
   "KAISER". The terms used here are "KAISER" / "Kernel Address Isolation"
   and "PTI" / "Page Table Isolation".

     This update does this on the x86_64 architecture, it is not required
     on the IBM zSeries architecture.

     This feature can be enabled / disabled by the "pti=[on|off|auto]" or
   "nopti" commandline options.

   The following security bugs were fixed:

   - CVE-2017-15868: The bnep_add_connection function in
     net/bluetooth/bnep/core.c in the Linux kernel did not ensure that an
     l2cap socket is available, which allowed local users to gain privileges
     via a crafted application (bnc#1071470).
   - CVE-2017-13167: An elevation of privilege vulnerability in the kernel
     sound timer. (bnc#1072876).
   - CVE-2017-16538: drivers/media/usb/dvb-usb-v2/lmedm04.c in the Linux
     kernel allowed local users to cause a denial of service (general
     protection fault and system crash) or possibly have unspecified other
     impact via a crafted USB device, related to a missing warm-start check
     and incorrect attach timing (dm04_lme2510_frontend_attach versus
     dm04_lme2510_tuner) (bnc#1066569).
   - CVE-2017-17558: The usb_destroy_configuration function in
     drivers/usb/core/config.c in the USB core subsystem in the Linux kernel
     did not consider the maximum number of configurations and interfaces
     before attempting to release resources, which allowed local users to
     cause a denial of service (out-of-bounds write access) or possibly have
     unspecified other impact via a crafted USB device (bnc#1072561).
   - CVE-2017-17450: net/netfilter/xt_osf.c in the Linux kernel did not
     require the CAP_NET_ADMIN capability for add_callback and
     remove_callback operations, which allowed local users to bypass intended
     access restrictions because the xt_osf_fingers data structure is shared
     across all net namespaces (bnc#1071695).
   - CVE-2017-17449: The __netlink_deliver_tap_skb function in
     net/netlink/af_netlink.c in the Linux kernel through 4.14.4, when
     CONFIG_NLMON is enabled, did not restrict observations of Netlink
     messages to a single net namespace, which allowed local users to obtain
     sensitive information by leveraging the CAP_NET_ADMIN capability to
     sniff an nlmon interface for all Netlink activity on the system
     (bnc#1071694).
   - CVE-2017-17448: net/netfilter/nfnetlink_cthelper.c in the Linux kernel
     did not require the CAP_NET_ADMIN capability for new, get, and del
     operations, which allowed local users to bypass intended access
     restrictions because the nfnl_cthelper_list data structure is shared
     across all net namespaces (bnc#1071693).
   - CVE-2017-8824: The dccp_disconnect function in net/dccp/proto.c in the
     Linux kernel allowed local users to gain privileges or cause a denial of
     service (use-after-free) via an AF_UNSPEC connect system call during the
     DCCP_LISTEN state (bnc#1070771).
   - CVE-2017-15115: The sctp_do_peeloff function in net/sctp/socket.c in the
     Linux kernel did not check whether the intended netns is used in a
     peel-off action, which allowed local users to cause a denial of service
     (use-after-free and system crash) or possibly have unspecified other
     impact via crafted system calls (bnc#1068671).
   - CVE-2017-11600: net/xfrm/xfrm_policy.c in the Linux kernel through
     4.12.3, when CONFIG_XFRM_MIGRATE is enabled, did not ensure that the dir
     value of xfrm_userpolicy_id is XFRM_POLICY_MAX or less, which allowed
     local users to cause a denial of service (out-of-bounds access) or
     possibly have unspecified other impact via an XFRM_MSG_MIGRATE xfrm
     Netlink message (bnc#1050231).
   - CVE-2017-16534: The cdc_parse_cdc_header function in
     drivers/usb/core/message.c in the Linux kernel allowed local users to
     cause a denial of service (out-of-bounds read and system crash) or
     possibly have unspecified other impact via a crafted USB device
     (bnc#1066693).

   The following non-security bugs were fixed:

   - kvm: svm: Do not intercept new speculative control MSRs (bsc#1068032).
   - audit: Fix use after free in audit_remove_watch_rule() (bsc#1045205).
   - bpf: prevent speculative execution in eBPF interpreter (bnc#1068032).
   - carl9170: prevent speculative execution (bnc#1068032).
   - fs: prevent speculative execution (bnc#1068032).
   - kaiser: make kernel_stack user-mapped
   - kvm: x86: Add speculative control CPUID support for guests (bsc#1068032).
   - locking/barriers: introduce new memory barrier gmb() (bnc#1068032).
   - p54: prevent speculative execution (bnc#1068032).
   - powerpc/barrier: add gmb.
   - powerpc: Convert cmp to cmpd in idle enter sequence (bsc#1070781).
   - powerpc/vdso64: Use double word compare on pointers (bsc#1070781).
     Conflicts: 	series.conf
   - ptrace: Add a new thread access check (bsc#1068032).
   - s390: introduce CPU alternatives (bsc#1068032).
   - s390/spinlock: add gmb memory barrier.
   - s390/spinlock: add ppa to system call path.
   - uas: Only complain about missing sg if all other checks succeed
     (bsc#1071074).
   - udf: prevent speculative execution (bnc#1068032).
   - usb: uas: fix bug in handling of alternate settings (bsc#1071074).
   - uvcvideo: prevent speculative execution (bnc#1068032).
   - x86/CPU/AMD: Add speculative control support for AMD (bsc#1068032).
   - x86/CPU/AMD: Make the LFENCE instruction serialized (bsc#1068032).
   - x86/CPU/AMD: Remove now unused definition of MFENCE_RDTSC feature
     (bsc#1068032).
   - x86/CPU: Check speculation control CPUID bit (bsc#1068032).
   - x86/enter: Add macros to set/clear IBRS and set IBPB (bsc#1068032).
   - x86/entry: Add a function to overwrite the RSB (bsc#1068032).
   - x86/entry: Stuff RSB for entry to kernel for non-SMEP platform
     (bsc#1068032).
   - x86/entry: Use IBRS on entry to kernel space (bsc#1068032).
   - x86/feature: Enable the x86 feature to control Speculation (bsc#1068032).
   - x86/idle: Disable IBRS when offlining a CPU and re-enable on wakeup
     (bsc#1068032).
   - x86/idle: Toggle IBRS when going idle (bsc#1068032).
   - x86/kaiser: Move feature detection up (bsc#1068032).
   - x86/kvm: Add MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD to kvm
     (bsc#1068032).
   - x86/kvm: Flush IBP when switching VMs (bsc#1068032).
   - x86/kvm: Pad RSB on VM transition (bsc#1068032).
   - x86/kvm: Toggle IBRS on VM entry and exit (bsc#1068032).
   - x86/microcode/AMD: Add support for fam17h microcode loading
     (bsc#1068032).
   - x86/mm: Only set IBPB when the new thread cannot ptrace current thread
     (bsc#1068032).
   - x86/mm: Set IBPB upon context switch (bsc#1068032).
   - x86/MSR: Move native_*msr(.. u64) to msr.h (bsc#1068032).
   - x86/spec: Add IBRS control functions (bsc#1068032).
   - x86/spec: Add "nospec" chicken bit (bsc#1068032).
   - x86/spec: Check CPUID direclty post microcode reload to support IBPB
     feature (bsc#1068032).
   - x86/spec_ctrl: Add an Indirect Branch Predictor barrier (bsc#1068032).
   - x86/spec_ctrl: Check whether IBPB is enabled before using it
     (bsc#1068032).
   - x86/spec_ctrl: Check whether IBRS is enabled before using it
     (bsc#1068032).
   - x86/svm: Add code to clear registers on VM exit (bsc#1068032).
   - x86/svm: Clobber the RSB on VM exit (bsc#1068032).
   - x86/svm: Set IBPB when running a different VCPU (bsc#1068032).
   - x86/svm: Set IBRS value on VM entry and exit (bsc#1068032).


Patch Instructions:

   To install this SUSE Security Update use YaST online_update.
   Alternatively you can run the command listed for your product:

   - SUSE Linux Enterprise Server 12-LTSS:

      zypper in -t patch SUSE-SLE-SERVER-12-2018-83=1

   - SUSE Linux Enterprise Module for Public Cloud 12:

      zypper in -t patch SUSE-SLE-Module-Public-Cloud-12-2018-83=1

   To bring your system up-to-date, use "zypper patch".


Package List:

   - SUSE Linux Enterprise Server 12-LTSS (ppc64le s390x x86_64):

      kernel-default-3.12.61-52.111.1
      kernel-default-base-3.12.61-52.111.1
      kernel-default-base-debuginfo-3.12.61-52.111.1
      kernel-default-debuginfo-3.12.61-52.111.1
      kernel-default-debugsource-3.12.61-52.111.1
      kernel-default-devel-3.12.61-52.111.1
      kernel-syms-3.12.61-52.111.1

   - SUSE Linux Enterprise Server 12-LTSS (x86_64):

      kernel-xen-3.12.61-52.111.1
      kernel-xen-base-3.12.61-52.111.1
      kernel-xen-base-debuginfo-3.12.61-52.111.1
      kernel-xen-debuginfo-3.12.61-52.111.1
      kernel-xen-debugsource-3.12.61-52.111.1
      kernel-xen-devel-3.12.61-52.111.1

   - SUSE Linux Enterprise Server 12-LTSS (noarch):

      kernel-devel-3.12.61-52.111.1
      kernel-macros-3.12.61-52.111.1
      kernel-source-3.12.61-52.111.1

   - SUSE Linux Enterprise Server 12-LTSS (s390x):

      kernel-default-man-3.12.61-52.111.1

   - SUSE Linux Enterprise Module for Public Cloud 12 (x86_64):

      kernel-ec2-3.12.61-52.111.1
      kernel-ec2-debuginfo-3.12.61-52.111.1
      kernel-ec2-debugsource-3.12.61-52.111.1
      kernel-ec2-devel-3.12.61-52.111.1
      kernel-ec2-extra-3.12.61-52.111.1
      kernel-ec2-extra-debuginfo-3.12.61-52.111.1


References:

   https://www.suse.com/security/cve/CVE-2017-11600.html
   https://www.suse.com/security/cve/CVE-2017-13167.html
   https://www.suse.com/security/cve/CVE-2017-15115.html
   https://www.suse.com/security/cve/CVE-2017-15868.html
   https://www.suse.com/security/cve/CVE-2017-16534.html
   https://www.suse.com/security/cve/CVE-2017-16538.html
   https://www.suse.com/security/cve/CVE-2017-17448.html
   https://www.suse.com/security/cve/CVE-2017-17449.html
   https://www.suse.com/security/cve/CVE-2017-17450.html
   https://www.suse.com/security/cve/CVE-2017-17558.html
   https://www.suse.com/security/cve/CVE-2017-5715.html
   https://www.suse.com/security/cve/CVE-2017-5753.html
   https://www.suse.com/security/cve/CVE-2017-5754.html
   https://www.suse.com/security/cve/CVE-2017-8824.html
   https://bugzilla.suse.com/1045205
   https://bugzilla.suse.com/1050231
   https://bugzilla.suse.com/1066569
   https://bugzilla.suse.com/1066693
   https://bugzilla.suse.com/1068032
   https://bugzilla.suse.com/1068671
   https://bugzilla.suse.com/1070771
   https://bugzilla.suse.com/1070781
   https://bugzilla.suse.com/1071074
   https://bugzilla.suse.com/1071470
   https://bugzilla.suse.com/1071693
   https://bugzilla.suse.com/1071694
   https://bugzilla.suse.com/1071695
   https://bugzilla.suse.com/1072561
   https://bugzilla.suse.com/1072876



More information about the sle-security-updates mailing list