SUSE SLED12 / SLES12 Security Update : kernel (SUSE-SU-2015:0068-1)

This script is Copyright (C) 2015-2016 Tenable Network Security, Inc.

Synopsis :

The remote SUSE host is missing one or more security updates.

Description :

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

Security issues fixed: CVE-2014-9322: A local privilege escalation in
the x86_64 32bit compatibility signal handling was fixed, which could
be used by local attackers to crash the machine or execute code.

- CVE-2014-9090: Various issues in LDT handling in 32bit
compatibility mode on the x86_64 platform were fixed,
where local attackers could crash the machine.

- CVE-2014-8133: Insufficient validation of TLS register
usage could leak information from the kernel stack to

- CVE-2014-7826: kernel/trace/trace_syscalls.c in the
Linux kernel did not properly handle private syscall
numbers during use of the ftrace subsystem, which
allowed local users to gain privileges or cause a denial
of service (invalid pointer dereference) via a crafted

- CVE-2014-3647: Nadav Amit reported that the KVM (Kernel
Virtual Machine) mishandled noncanonical addresses when
emulating instructions that change the rip (Instruction
Pointer). A guest user with access to I/O or the MMIO
could use this flaw to cause a denial of service (system
crash) of the guest.

- CVE-2014-3611: A race condition flaw was found in the
way the Linux kernel's KVM subsystem handled PIT
(Programmable Interval Timer) emulation. A guest user
who has access to the PIT I/O ports could use this flaw
to crash the host.

- CVE-2014-3610: If the guest writes a noncanonical value
to certain MSR registers, KVM will write that value to
the MSR in the host context and a #GP will be raised
leading to kernel panic. A privileged guest user could
have used this flaw to crash the host.

- CVE-2014-7841: A remote attacker could have used a flaw
in SCTP to crash the system by sending a maliciously
prepared SCTP packet in order to trigger a NULL pointer
dereference on the server.

- CVE-2014-3673: The SCTP implementation in the Linux
kernel allowed remote attackers to cause a denial of
service (system crash) via a malformed ASCONF chunk,
related to net/sctp/sm_make_chunk.c and

- CVE-2014-3185: Multiple buffer overflows in the
command_port_read_callback function in
drivers/usb/serial/whiteheat.c in the Whiteheat USB
Serial Driver in the Linux kernel allowed physically
proximate attackers to execute arbitrary code or cause a
denial of service (memory corruption and system crash)
via a crafted device that provides a large amount of (1)
EHCI or (2) XHCI data associated with a bulk response.

Bugs fixed: BTRFS :

- btrfs: fix race that makes btrfs_lookup_extent_info miss
skinny extent items (bnc#904077).

- btrfs: fix invalid leaf slot access in
btrfs_lookup_extent() (bnc#904077).

- btrfs: avoid returning -ENOMEM in convert_extent_bit()
too early (bnc#902016).

- btrfs: make find_first_extent_bit be able to cache any
state (bnc#902016).

- btrfs: deal with convert_extent_bit errors to avoid fs
corruption (bnc#902016).

- btrfs: be aware of btree inode write errors to avoid fs
corruption (bnc#899551).

- btrfs: add missing end_page_writeback on
submit_extent_page failure (bnc#899551).

- btrfs: fix crash of btrfs_release_extent_buffer_page

- btrfs: ensure readers see new data after a clone
operation (bnc#898234).

- btrfs: avoid visiting all extent items when cloning a
range (bnc#898234).

- btrfs: fix clone to deal with holes when NO_HOLES
feature is enabled (bnc#898234).

- btrfs: make fsync work after cloning into a file

- btrfs: fix use-after-free when cloning a trailing file
hole (bnc#898234).

- btrfs: clone, don't create invalid hole extent map

- btrfs: limit the path size in send to PATH_MAX

- btrfs: send, fix more issues related to directory
renames (bnc#897770).

- btrfs: send, remove dead code from
__get_cur_name_and_parent (bnc#897770).

- btrfs: send, account for orphan directories when
building path strings (bnc#897770).

- btrfs: send, avoid unnecessary inode item lookup in the
btree (bnc#897770).

- btrfs: send, fix incorrect ref access when using extrefs

- btrfs: send, build path string only once in send_hole

- btrfs: part 2, fix incremental send's decision to delay
a dir move/rename (bnc#897770).

- btrfs: fix incremental send's decision to delay a dir
move/rename (bnc#897770).

- btrfs: remove unnecessary inode generation lookup in
send (bnc#897770).

- btrfs: avoid unnecessary utimes update in incremental
send (bnc#897770).

- btrfs: fix send issuing outdated paths for utimes, chown
and chmod (bnc#897770).

- btrfs: fix send attempting to rmdir non-empty
directories (bnc#897770).

- btrfs: send, don't send rmdir for same target multiple
times (bnc#897770).

- btrfs: incremental send, fix invalid path after dir
rename (bnc#897770).

- btrfs: fix assert screwup for the pending move stuff

- btrfs: make some tree searches in send.c more efficient

- btrfs: use right extent item position in send when
finding extent clones (bnc#897770).

- btrfs: more send support for parent/child dir
relationship inversion (bnc#897770).

- btrfs: fix send dealing with file renames and directory
moves (bnc#897770).

- btrfs: add missing error check in incremental send

- btrfs: make send's file extent item search more
efficient (bnc#897770).

- btrfs: fix infinite path build loops in incremental send

- btrfs: send, don't delay dir move if there's a new
parent inode (bnc#897770).

- btrfs: add helper btrfs_fdatawrite_range (bnc#902010).

- btrfs: correctly flush compressed data before/after
direct IO (bnc#902010).

- btrfs: make inode.c:compress_file_range() return void

- btrfs: report error after failure inlining extent in
compressed write path (bnc#902010).

- btrfs: don't ignore compressed bio write errors

- btrfs: make inode.c:submit_compressed_extents() return
void (bnc#902010).

- btrfs: process all async extents on compressed write
failure (bnc#902010).

- btrfs: don't leak pages and memory on compressed write
error (bnc#902010).

- btrfs: fix hang on compressed write error (bnc#902010).

- btrfs: set page and mapping error on compressed write
failure (bnc#902010).

- btrfs: fix kfree on list_head in
btrfs_lookup_csums_range error cleanup (bnc#904115).

Hyper-V :

- hyperv: Fix a bug in netvsc_send().

- hyperv: Fix a bug in netvsc_start_xmit().

- drivers: hv: vmbus: Enable interrupt driven flow

- drivers: hv: vmbus: Properly protect calls to

- drivers: hv: vmbus: Cleanup hv_post_message().

- drivers: hv: vmbus: Cleanup vmbus_close_internal().

- drivers: hv: vmbus: Fix a bug in vmbus_open().

- drivers: hv: vmbus: Cleanup vmbus_establish_gpadl().

- drivers: hv: vmbus: Cleanup vmbus_teardown_gpadl().

- drivers: hv: vmbus: Cleanup vmbus_post_msg().

- storvsc: get rid of overly verbose warning messages.

- hyperv: NULL dereference on error.

- hyperv: Increase the buffer length for

zSeries / S390 :

- s390: pass march flag to assembly files as well
(bnc#903279, LTC#118177).

- kernel: reduce function tracer overhead (bnc#903279,

- SUNRPC: Handle EPIPE in xprt_connect_status

- SUNRPC: Ensure that we handle ENOBUFS errors correctly

- SUNRPC: Ensure call_connect_status() deals correctly
with SOFTCONN tasks (bnc#901090).

- SUNRPC: Ensure that call_connect times out correctly

- SUNRPC: Handle connect errors ECONNABORTED and
EHOSTUNREACH (bnc#901090).

- SUNRPC: Ensure xprt_connect_status handles all potential
connection errors (bnc#901090).

- SUNRPC: call_connect_status should recheck bind and
connect status on error (bnc#901090).

kGraft :

- kgr: force patching process to succeed (fate#313296).

- kgr: usb-storage, mark kthread safe (fate#313296

- Refresh patches.suse/kgr-0039-kgr-fix-ugly-race.patch.
Fix few bugs, and also races (immutable vs
mark_processes vs other threads).

- kgr: always use locked bit ops for thread_info->flags

- kgr: lower the workqueue scheduling timeout (fate#313296

- kgr: mark even more kthreads (fate#313296 bnc#904871).

- rpm/ Provide name-version-release
for kgraft packages (bnc#901925)

Other :

- NFSv4: test SECINFO RPC_AUTH_GSS pseudoflavors for
support (bnc#905758).

- Enable cmac(aes) and cmac(3des_ede) for FIPS mode
(bnc#905296 bnc#905772).

- scsi_dh_alua: disable ALUA handling for non-disk devices

- powerpc/vphn: NUMA node code expects big-endian

- net: fix checksum features handling in
netif_skb_features() (bnc#891259).

- be2net: Fix invocation of be_close() after be_clear()

- PCI: pciehp: Clear Data Link Layer State Changed during
init (bnc#898297).

- PCI: pciehp: Use symbolic constants, not hard-coded
bitmask (bnc#898297).

- PCI: pciehp: Use link change notifications for hot-plug
and removal (bnc#898297).

- PCI: pciehp: Make check_link_active() non-static

- PCI: pciehp: Enable link state change notifications

- ALSA: hda - Treat zero connection as non-error

- bcache: add mutex lock for bch_is_open (bnc#902893).

- futex: Fix a race condition between REQUEUE_PI and task
death (bcn #851603 (futex scalability series)).

- Linux 3.12.31 (bnc#895983 bnc#897912).

- futex: Ensure get_futex_key_refs() always implies a
barrier (bcn #851603 (futex scalability series)).

- usbback: don't access request fields in shared ring more
than once.

- Update Xen patches to 3.12.30.

- locking/rwsem: Avoid double checking before try
acquiring write lock (Locking scalability.).

- zcrypt: toleration of new crypto adapter hardware
(bnc#894057, LTC#117041).

- zcrypt: support for extended number of ap domains
(bnc#894057, LTC#117041).

- kABI: protect linux/fs.h include in mm/internal.h.

- Linux 3.12.30 (FATE#315482 bnc#862957 bnc#863526

- Update
ble.patch (bnc#899785).

- xfs: mark all internal workqueues as freezable.

- drm/i915: Move DP port disable to post_disable for pch
platforms (bnc#899787).

- pagecachelimit: reduce lru_lock congestion for heavy
parallel reclaim fix (bnc#895680).

- Linux 3.12.29 (bnc#879255 bnc#880892 bnc#887046
bnc#887418 bnc#891619 bnc#892612 bnc#892650 bnc#897101).

- iommu/vt-d: Work around broken RMRR firmware entries

- iommu/vt-d: Store bus information in RMRR PCI device
path (bnc#892860).

- iommu/vt-d: Only remove domain when device is removed

- driver core: Add BUS_NOTIFY_REMOVED_DEVICE event

- Update config files: Re-enable CONFIG_FUNCTION_PROFILER
(bnc#899489) Option FUNCTION_PROFILER was enabled in
debug and trace kernels so far, but it was accidentally
disabled before tracing features were merged into the
default kernel and the trace flavor was discarded. So
all kernels are missing the feature now. Re-enable it.

- xfs: xlog_cil_force_lsn doesn't always wait correctly.

- scsi: clear 'host_scribble' upon successful abort

- module: warn if module init + probe takes long
(bnc#889297 bnc#877622 bnc#889295 bnc#893454).

- mm, THP: don't hold mmap_sem in khugepaged when
allocating THP (bnc#880767, VM Performance).

- pagecache_limit: batch large nr_to_scan targets

- iommu/vt-d: Check return value of acpi_bus_get_device()

- rpm/ Fix including the secure boot
cert in /etc/uefi/certs

- sched: Reduce contention in update_cfs_rq_blocked_load()
(Scheduler/core performance).

- x86: use optimized ioresource lookup in ioremap function
(Boot time optimisations (bnc#895387)).

- x86: optimize resource lookups for ioremap (Boot time
optimisations (bnc#895387)).

- usb: Do not re-read descriptors for wired devices in
usb_authorize_device() (bnc#904354).

- netxen: Fix link event handling (bnc#873228).

- x86, cpu: Detect more TLB configuration -xen (TLB

- x86/mm: Fix RCU splat from new TLB tracepoints (TLB

- x86/mm: Set TLB flush tunable to sane value (33) (TLB

- x86/mm: New tunable for single vs full TLB flush (TLB

- x86/mm: Add tracepoints for TLB flushes (TLB

- x86/mm: Unify remote INVLPG code (TLB Performance).

- x86/mm: Fix missed global TLB flush stat (TLB

- x86/mm: Rip out complicated, out-of-date, buggy TLB
flushing (TLB Performance).

- x86, cpu: Detect more TLB configuration (TLB

- mm, x86: Revisit tlb_flushall_shift tuning for page
flushes except on IvyBridge (TLB Performance).

- x86/mm: Clean up the TLB flushing code (TLB

- mm: free compound page with correct order (VM

- bnx2x: Utilize FW 7.10.51 (bnc#887382).

- bnx2x: Remove unnecessary internal mem config

- rtnetlink: fix oops in
rtnl_link_get_slave_info_data_size (bnc#901774).

- dm: do not call dm_sync_table() when creating new
devices (bnc#901809).

- [media] uvc: Fix destruction order in uvc_delete()

- uas: replace WARN_ON_ONCE() with lockdep_assert_held()

- cxgb4/cxgb4vf: Add Devicde ID for two more adapter

- cxgb4/cxgb4vf: Add device ID for new adapter and remove
for dbg adapter (bsc#903999).

- cxgb4: Adds device ID for few more Chelsio T4 Adapters

- cxgb4: Check if rx checksum offload is enabled, while
reading hardware calculated checksum (bsc#903999).

- xen-pciback: drop SR-IOV VFs when PF driver unloads

This update also includes fixes contained in the Linux 3.12.stable
release series, not separately listed here.

Note that Tenable Network Security has extracted the preceding
description block directly from the SUSE security advisory. Tenable
has attempted to automatically clean and format it as much as possible
without introducing additional issues.

See also :

Solution :

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

SUSE Linux Enterprise Workstation Extension 12 :

zypper in -t patch SUSE-SLE-WE-12-2015-21

SUSE Linux Enterprise Software Development Kit 12 :

zypper in -t patch SUSE-SLE-SDK-12-2015-21

SUSE Linux Enterprise Server 12 :

zypper in -t patch SUSE-SLE-SERVER-12-2015-21

SUSE Linux Enterprise Module for Public Cloud 12 :

zypper in -t patch SUSE-SLE-Module-Public-Cloud-12-2015-21

SUSE Linux Enterprise Desktop 12 :

zypper in -t patch SUSE-SLE-DESKTOP-12-2015-21

SUSE Linux Enterprise Build System Kit 12 :

zypper in -t patch SUSE-SLE-BSK-12-2015-21

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

Risk factor :

High / CVSS Base Score : 7.8
CVSS Temporal Score : 5.8
Public Exploit Available : false

Ready to Amp Up Your Nessus Experience?

Get Nessus Professional to scan unlimited IPs, run compliance checks & more

Buy Nessus Professional Now