Security update for the Linux Kernel

SUSE Security Update: Security update for the Linux Kernel
Announcement ID: SUSE-SU-2018:3746-1
Rating: important
References: #1031240 #1047027 #1049128 #1050431 #1064861 #1065600 #1066674 #1071021 #1081680 #1094244 #1094825 #1103145 #1105799 #1106139 #1106240 #1107371 #1107829 #1107849 #1108314 #1108498 #1109806 #1109818 #1110006 #1110247 #1113337 #1113751 #1113769 #1114460 #923775
Cross-References:CVE-2017-1000407 CVE-2017-16533 CVE-2017-7273 CVE-2018-14633 CVE-2018-18281 CVE-2018-18386 CVE-2018-18710 CVE-2018-9516
Affected Products:
  • SUSE Linux Enterprise Software Development Kit 11-SP4
  • SUSE Linux Enterprise Server 11-SP4
  • SUSE Linux Enterprise Server 11-EXTRA
  • SUSE Linux Enterprise Debuginfo 11-SP4

An update that solves 8 vulnerabilities and has 21 fixes is now available.


The SUSE Linux Enterprise 11 SP4 kernel was updated to 3.0.101-108.81 to receive various security and bugfixes.

The following security bugs were fixed:

  • CVE-2018-18281: An issue was discovered in the Linux kernel, the mremap() syscall performs TLB flushes after dropping pagetable locks. If a syscall such as ftruncate() removes entries from the pagetables of a task that is in the middle of mremap(), a stale TLB entry can remain for a short time that permits access to a physical page after it has been released back to the page allocator and reused (bnc#1113769).
  • CVE-2018-18710: An issue was discovered in the Linux kernel, an information leak in cdrom_ioctl_select_disc in drivers/cdrom/cdrom.c could be used by local attackers to read kernel memory because a cast from unsigned long to int interferes with bounds checking. This is similar to CVE-2018-10940 and CVE-2018-16658 (bnc#1113751).
  • CVE-2018-18386: drivers/tty/n_tty.c in the Linux kernel allowed local attackers (who are able to access pseudo terminals) to hang/block further usage of any pseudo terminal devices due to an EXTPROC versus ICANON confusion in TIOCINQ (bnc#1094825).
  • CVE-2017-7273: The cp_report_fixup function in drivers/hid/hid-cypress.c in the Linux kernel 4.x allowed physically proximate attackers to cause a denial of service (integer underflow) or possibly have unspecified other impact via a crafted HID report (bnc#1031240).
  • CVE-2017-16533: The usbhid_parse function in drivers/hid/usbhid/hid-core.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#1066674).
  • CVE-2017-1000407: An denial of service issue was discovered in the Linux kernel, by flooding the diagnostic port 0x80 an exception can be triggered leading to a kernel panic (bnc#1071021).
  • CVE-2018-9516: An issue was discovered in the Linux kernel, the copy_to_user() inside the HID code does not correctly check the length before executing (bsc#1108498).
  • CVE-2018-14633: A security flaw was found in the chap_server_compute_md5() function in the ISCSI target code in the Linux kernel in a way an authentication request from an ISCSI initiator is processed. An unauthenticated remote attacker can cause a stack buffer overflow and smash up to 17 bytes of the stack. The attack requires the iSCSI target to be enabled on the victim host. Depending on how the target's code was built (i.e. depending on a compiler, compile flags and hardware architecture) an attack may lead to a system crash and thus to a denial-of-service or possibly to a non-authorized access to data exported by an iSCSI target. Due to the nature of the flaw, privilege escalation cannot be fully ruled out, although we believe it is highly unlikely (bnc#1107829).

The following non-security bugs were fixed:
  • Btrfs: fix deadlock when finalizing block group creation (bsc#1107849).
  • Btrfs: fix quick exhaustion of the system array in the superblock (bsc#1107849).
  • FS-Cache: Synchronise object death state change vs operation submission (bsc#1107371).
  • KABI: move the new handler to end of machdep_calls and hide it from genksyms (bsc#1094244).
  • KVM: Disable irq while unregistering user notifier (bsc#1106240).
  • KVM: SVM: obey guest PAT (bsc#1106240).
  • KVM: VMX: remove I/O port 0x80 bypass on Intel hosts (bsc#1106240).
  • KVM: emulate: fix CMPXCHG8B on 32-bit hosts (bsc#1106240).
  • KVM: x86: emulator: Return to user-mode on L1 CPL=0 emulation failure (bsc#1106240).
  • KVM: x86: fix use of uninitialized memory as segment descriptor in emulator (bsc#1106240).
  • KVM: x86: zero base3 of unusable segments (bsc#1106240).
  • NFS - do not hang if xdr decoded username is bad (bsc#1105799).
  • NFSv4.1 - Do not leak IO size from one mount to another (bsc#1103145).
  • PCI/AER: Report non-fatal errors only to the affected endpoint (bsc#1109806).
  • PCI: Supply CPU physical address (not bus address) to iomem_is_exclusive() (bsc#1109806).
  • PCI: shpchp: Check bridge's secondary (not primary) bus speed (bsc#1109806).
  • PCI: shpchp: Fix AMD POGO identification (bsc#1109806).
  • add kernel parameter to disable failfast on block devices (bsc#1081680).
  • block: add flag QUEUE_FLAG_REGISTERED (bsc#1047027).
  • block: allow gendisk's request_queue registration to be deferred (bsc#1047027).
  • crypto: ghash-clmulni-intel - use C implementation for setkey() (bsc#1110006).
  • dm: fix incomplete request_queue initialization (bsc#1047027).
  • dm: only initialize the request_queue once (bsc#1047027).
  • firmware/ihex2fw.c: restore missing default in switch statement (bsc#1114460).
  • kernel/relay.c: limit kmalloc size to KMALLOC_MAX_SIZE (git-fixes).
  • locks: fix unlock when fcntl_setlk races with a close (git-fixes).
  • media: Fix invalid free in the fix for mceusb (bsc#1050431).
  • media: cx25821: prevent out-of-bounds read on array card (bsc#1050431).
  • media: ite-cir: initialize use_demodulator before using it (bsc#1050431).
  • media: mceusb: fix NULL-deref at probe (bsc#1050431).
  • media: mceusb: fix memory leaks in error path.
  • percpu: make pcpu_alloc_chunk() use pcpu_mem_free() instead of kfree() (git fixes).
  • powerpc, KVM: Rework KVM checks in first-level interrupt handlers (bsc#1094244).
  • powerpc/64: Do load of PACAKBASE in LOAD_HANDLER (bsc#1094244).
  • powerpc/64: Fix smp_wmb barrier definition use use lwsync consistently (bsc#1064861).
  • powerpc/64: Initialise thread_info for emergency stacks (bsc#1094244).
  • powerpc/64s: Exception macro for stack frame and initial register save (bsc#1094244).
  • powerpc/64s: move machine check SLB flushing to mm/slb.c (bsc#1094244).
  • powerpc/asm: Mark cr0 as clobbered in mftb() (bsc#1049128).
  • powerpc/book3s: Introduce a early machine check hook in cpu_spec (bsc#1094244).
  • powerpc/book3s: Introduce exclusive emergency stack for machine check exception (bsc#1094244).
  • powerpc/book3s: Split the common exception prolog logic into two section (bsc#1094244).
  • powerpc/book3s: handle machine check in Linux host (bsc#1094244).
  • powerpc/mce: Fix SLB rebolting during MCE recovery path (bsc#1094244).
  • powerpc/pseries: Avoid using the size greater than (bsc#1094244).
  • powerpc/pseries: Defer the logging of rtas error to irq work queue (bsc#1094244).
  • powerpc/pseries: Dump the SLB contents on SLB MCE errors (bsc#1094244).
  • powerpc/pseries: Flush SLB contents on SLB MCE errors (bsc#1094244).
  • powerpc: Add a symbol for hypervisor trampolines (bsc#1094244).
  • powerpc: Fix smp_mb__before_spinlock() (bsc#1110247).
  • powerpc: Make load_hander handle upto 64k offset (bsc#1094244).
  • powerpc: Rework runlatch code (bsc#1094244).
  • powerpc: Save CFAR before branching in interrupt entry paths (bsc#1094244).
  • powerpc: cputable: KABI - hide new cpu_spec member from genksyms (bsc#1094244).
  • powerpc: move MCE handler out-of-line and consolidate with machine_check_fwnmi (bsc#1094244).
  • powerpc: move stab code into #ifndef CONFIG_POWER4_ONLY (bsc#1094244).
  • powerpc: replace open-coded EXCEPTION_PROLOG_1 with the macro in slb miss handlers (bsc#1094244).
  • reiserfs: add check to detect corrupted directory entry (bsc#1109818).
  • reiserfs: do not panic on bad directory entries (bsc#1109818).
  • retpoline: Introduce start/end markers of indirect thunk (bsc#1113337).
  • s390/facilites: use stfle_fac_list array size for MAX_FACILITY_BIT (bnc#1108314, LTC#171326).
  • s390/sclp: Change SCLP console default buffer-full behavior (bnc#1108314, LTC#171049).
  • scsi: libfc: Do not drop down to FLOGI for fc_rport_login() (bsc#1106139).
  • scsi: libfc: Do not login if the port is already started (bsc#1106139).
  • scsi: libfc: do not advance state machine for incoming FLOGI (bsc#1106139).
  • scsi: storvsc: fix memory leak on ring buffer busy (bnc#923775).
  • signals: avoid unnecessary taking of sighand->siglock (bsc#1110247).
  • x86/kexec: Avoid double free_page() upon do_kexec_load() failure (bsc#1110006).
  • x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init() (bsc#1110006).
  • x86/paravirt: Fix some warning messages (bnc#1065600).
  • x86/percpu: Fix this_cpu_read() (bsc#1110006).
  • x86/process: Re-export start_thread() (bsc#1110006).
  • x86/vdso: Fix asm constraints on vDSO syscall fallbacks (bsc#1110006).

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 Linux Enterprise Software Development Kit 11-SP4:
    zypper in -t patch sdksp4-kernel-source-13863=1
  • SUSE Linux Enterprise Server 11-SP4:
    zypper in -t patch slessp4-kernel-source-13863=1
  • SUSE Linux Enterprise Server 11-EXTRA:
    zypper in -t patch slexsp3-kernel-source-13863=1
  • SUSE Linux Enterprise Debuginfo 11-SP4:
    zypper in -t patch dbgsp4-kernel-source-13863=1

Package List:

  • SUSE Linux Enterprise Software Development Kit 11-SP4 (noarch):
    • kernel-docs-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-SP4 (i586 ia64 ppc64 s390x x86_64):
    • kernel-default-3.0.101-108.81.1
    • kernel-default-base-3.0.101-108.81.1
    • kernel-default-devel-3.0.101-108.81.1
    • kernel-source-3.0.101-108.81.1
    • kernel-syms-3.0.101-108.81.1
    • kernel-trace-3.0.101-108.81.1
    • kernel-trace-base-3.0.101-108.81.1
    • kernel-trace-devel-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-SP4 (i586 x86_64):
    • kernel-ec2-3.0.101-108.81.1
    • kernel-ec2-base-3.0.101-108.81.1
    • kernel-ec2-devel-3.0.101-108.81.1
    • kernel-xen-3.0.101-108.81.1
    • kernel-xen-base-3.0.101-108.81.1
    • kernel-xen-devel-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-SP4 (s390x):
    • kernel-default-man-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-SP4 (ppc64):
    • kernel-bigmem-3.0.101-108.81.1
    • kernel-bigmem-base-3.0.101-108.81.1
    • kernel-bigmem-devel-3.0.101-108.81.1
    • kernel-ppc64-3.0.101-108.81.1
    • kernel-ppc64-base-3.0.101-108.81.1
    • kernel-ppc64-devel-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-SP4 (i586):
    • kernel-pae-3.0.101-108.81.1
    • kernel-pae-base-3.0.101-108.81.1
    • kernel-pae-devel-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-EXTRA (i586 ia64 ppc64 s390x x86_64):
    • kernel-default-extra-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-EXTRA (i586 x86_64):
    • kernel-xen-extra-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-EXTRA (x86_64):
    • kernel-trace-extra-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-EXTRA (ppc64):
    • kernel-ppc64-extra-3.0.101-108.81.1
  • SUSE Linux Enterprise Server 11-EXTRA (i586):
    • kernel-pae-extra-3.0.101-108.81.1
  • SUSE Linux Enterprise Debuginfo 11-SP4 (i586 ia64 ppc64 s390x x86_64):
    • kernel-default-debuginfo-3.0.101-108.81.1
    • kernel-default-debugsource-3.0.101-108.81.1
    • kernel-trace-debuginfo-3.0.101-108.81.1
    • kernel-trace-debugsource-3.0.101-108.81.1
  • SUSE Linux Enterprise Debuginfo 11-SP4 (i586 ia64 s390x x86_64):
    • kernel-default-devel-debuginfo-3.0.101-108.81.1
    • kernel-trace-devel-debuginfo-3.0.101-108.81.1
  • SUSE Linux Enterprise Debuginfo 11-SP4 (i586 x86_64):
    • kernel-ec2-debuginfo-3.0.101-108.81.1
    • kernel-ec2-debugsource-3.0.101-108.81.1
    • kernel-xen-debuginfo-3.0.101-108.81.1
    • kernel-xen-debugsource-3.0.101-108.81.1
    • kernel-xen-devel-debuginfo-3.0.101-108.81.1
  • SUSE Linux Enterprise Debuginfo 11-SP4 (ppc64):
    • kernel-bigmem-debuginfo-3.0.101-108.81.1
    • kernel-bigmem-debugsource-3.0.101-108.81.1
    • kernel-ppc64-debuginfo-3.0.101-108.81.1
    • kernel-ppc64-debugsource-3.0.101-108.81.1
  • SUSE Linux Enterprise Debuginfo 11-SP4 (i586):
    • kernel-pae-debuginfo-3.0.101-108.81.1
    • kernel-pae-debugsource-3.0.101-108.81.1
    • kernel-pae-devel-debuginfo-3.0.101-108.81.1