Synopsis: Important: kernel security and bug fix update
Advisory ID: SLSA-2015:0674-1
Issue Date: 2015-03-11
CVE Numbers: CVE-2014-7822
* It was found that the Linux kernel’s Infiniband subsystem did not
properly sanitize input parameters while registering memory regions from
user space via the (u)verbs API. A local user with access to a
/dev/infiniband/uverbsX device could use this flaw to crash the system or,
potentially, escalate their privileges on the system. (CVE-2014-8159,
* A flaw was found in the way the Linux kernel’s splice() system call
validated its parameters. On certain file systems, a local, unprivileged
user could use this flaw to write past the maximum file size, and thus
crash the system. (CVE-2014-7822, Moderate)
* A flaw was found in the way the Linux kernel’s netfilter subsystem
handled generic protocol tracking. As demonstrated in the Stream Control
Transmission Protocol (SCTP) case, a remote attacker could use this flaw
to bypass intended iptables rule restrictions when the associated
connection tracking module was not loaded on the system. (CVE-2014-8160,
* It was found that the fix for CVE-2014-3601 was incomplete: the Linux
kernel’s kvm_iommu_map_pages() function still handled IOMMU mapping
failures incorrectly. A privileged user in a guest with an assigned host
device could use this flaw to crash the host. (CVE-2014-8369, Moderate)
* The maximum amount of entries in the IPv6 route table
(net.ipv6.route.max_size) was 4096, and every route towards this maximum
size limit was counted. Communication to more systems was impossible when
the limit was exceeded. Now, only cached routes are counted, which
guarantees that the kernel does not run out of memory, but the user can
now install as many routes as the memory allows until the kernel indicates
it can no longer handle the amount of memory and returns an error message.
In addition, the default “net.ipv6.route.max_size” value has been
increased to 16384 for performance improvement reasons.
* When the user attempted to scan for an FCOE-served Logical Unit Number
(LUN), after an initial LUN scan, a kernel panic occurred in
bnx2fc_init_task. System scanning for LUNs is now stable after LUNs have
* Under certain conditions, such as when attempting to scan the network
for LUNs, a race condition in the bnx2fc driver could trigger a kernel
panic in bnx2fc_init_task. A patch fixing a locking issue that caused the
race condition has been applied, and scanning the network for LUNs no
longer leads to a kernel panic.
* Previously, it was not possible to boot the kernel on Xen hypervisor in
PVHVM mode if more than 32 vCPUs were specified in the guest
configuration. Support for more than 32 vCPUs has been added, and the
kernel now boots successfully in the described situation.
* When the NVMe driver allocated a namespace queue, it indicated that it
was a request-based driver when it was actually a block I/O-based driver.
Consequently, when NVMe driver was loaded along with a request-based dm
device, the system could terminate unexpectedly or become unresponsive
when attempting to access data. The NVMe driver no longer sets the
QUEUE_FLAG_STACKABLE bit when allocating a namespace queue and device-
mapper no longer perceives NVMe driver as request-based; system hangs or
crashes no longer occur.
* If a user attempted to apply an NVRAM firmware update when running the
tg3 module provided with Scientific Linux 6.6 kernels, the update could
fail. As a consequence, the Network Interface Card (NIC) could stay in an
unusable state and this could prevent the entire system from booting. The
tg3 module has been updated to correctly apply firmware updates.
* Support for key sizes of 256 and 192 bits has been added to AES-NI.
– Scientific Linux Development Team