Advisories » MGASA-2019-0172

Updated kernel-linus packages fixes security vulnerabilities

Publication date: 16 May 2019
Type: security
Affected Mageia releases : 6
CVE: CVE-2018-12126 , CVE-2018-12127 , CVE-2018-12130 , CVE-2018-1000026 , CVE-2019-3882 , CVE-2019-7308 , CVE-2019-9213 , CVE-2019-11091 , CVE-2019-11486 , CVE-2019-11599


This kernel update provides the upstream 4.14.119 that adds the kernel side
mitigations for the Microarchitectural Data Sampling (MDS, also called
ZombieLoad attack) vulnerabilities in Intel processors that can allow
attackers to retrieve data being processed inside a CPU. To complete the
mitigations new microcode is also needed, either by installing the
microcode-0.20190514-1.mga6 package, or get an updated bios / uefi
firmware from the motherboard vendor.

The fixed / mitigated issues are:

Modern Intel microprocessors implement hardware-level micro-optimizations
to improve the performance of writing data back to CPU caches. The write
operation is split into STA (STore Address) and STD (STore Data)
sub-operations. These sub-operations allow the processor to hand-off
address generation logic into these sub-operations for optimized writes.
Both of these sub-operations write to a shared distributed processor
structure called the 'processor store buffer'. As a result, an
unprivileged attacker could use this flaw to read private data resident
within the CPU's processor store buffer. (CVE-2018-12126)

Microprocessors use a ‘load port’ subcomponent to perform load operations
from memory or IO. During a load operation, the load port receives data
from the memory or IO subsystem and then provides the data to the CPU
registers and operations in the CPU’s pipelines. Stale load operations
results are stored in the 'load port' table until overwritten by newer
operations. Certain load-port operations triggered by an attacker can be
used to reveal data about previous stale requests leaking data back to the
attacker via a timing side-channel. (CVE-2018-12127)

A flaw was found in the implementation of the "fill buffer", a mechanism
used by modern CPUs when a cache-miss is made on L1 CPU cache. If an
attacker can generate a load operation that would create a page fault,
the execution will continue speculatively with incorrect data from the
fill buffer while the data is fetched from higher level caches. This
response time can be measured to infer data in the fill buffer.

Uncacheable memory on some microprocessors utilizing speculative execution
may allow an authenticated user to potentially enable information disclosure
via a side channel with local access. (CVE-2019-11091)

It also fixes atleast the following security issues:

Linux Linux kernel version at least v4.8 onwards, probably well before
contains a Insufficient input validation vulnerability in bnx2x network
card driver that can result in DoS: Network card firmware assertion takes
card off-line. This attack appear to be exploitable via An attacker on a
must pass a very large, specially crafted packet to the bnx2x card.
This can be done from an untrusted guest VM (CVE-2018-1000026)

A flaw was found in the Linux kernel's vfio interface implementation that
permits violation of the user's locked memory limit. If a device is bound
to a vfio driver, such as vfio-pci, and the local attacker is
administratively granted ownership of the device, it may cause a system
memory exhaustion and thus a denial of service (DoS) (CVE-2019-3882).

kernel/bpf/verifier.c in the Linux kernel before 4.20.6 performs undesirable
out-of-bounds speculation on pointer arithmetic in various cases, including
cases of different branches with different state or limits to sanitize,
leading to side-channel attacks (CVE-2019-7308).

In the Linux kernel before 4.20.14, expand_downwards in mm/mmap.c lacks
a check for the mmap minimum address, which makes it easier for attackers
to exploit kernel NULL pointer dereferences on non-SMAP platforms. This is
related to a capability check for the wrong task (CVE-2019-9213).

The Siemens R3964 line discipline driver in drivers/tty/n_r3964.c in the
Linux kernel before 5.0.8 has multiple race conditions (CVE-2019-11486).

The coredump implementation in the Linux kernel before 5.0.10 does not use
locking or other mechanisms to prevent vma layout or vma flags changes while
it runs, which allows local users to obtain sensitive information, cause a
denial of service, or possibly have unspecified other impact by triggering
a race condition with mmget_not_zero or get_task_mm calls (CVE-2019-11599).

It also fixes signal handling issues causing powertop to crash and some
tracing tools to fail on execve tests.

For other uptstream fixes in this update, see the referenced changelogs.