CVE-2019-10639

Published: 05 July 2019

The Linux kernel 4.x (starting from 4.1) and 5.x before 5.0.8 allows Information Exposure (partial kernel address disclosure), leading to a KASLR bypass. Specifically, it is possible to extract the KASLR kernel image offset using the IP ID values the kernel produces for connection-less protocols (e.g., UDP and ICMP). When such traffic is sent to multiple destination IP addresses, it is possible to obtain hash collisions (of indices to the counter array) and thereby obtain the hashing key (via enumeration). This key contains enough bits from a kernel address (of a static variable) so when the key is extracted (via enumeration), the offset of the kernel image is exposed. This attack can be carried out remotely, by the attacker forcing the target device to send UDP or ICMP (or certain other) traffic to attacker-controlled IP addresses. Forcing a server to send UDP traffic is trivial if the server is a DNS server. ICMP traffic is trivial if the server answers ICMP Echo requests (ping). For client targets, if the target visits the attacker's web page, then WebRTC or gQUIC can be used to force UDP traffic to attacker-controlled IP addresses. NOTE: this attack against KASLR became viable in 4.1 because IP ID generation was changed to have a dependency on an address associated with a network namespace.

From the Ubuntu security team

Amit Klein and Benny Pinkas discovered that the location of kernel addresses could be exposed by the implementation of connection-less network protocols in the Linux kernel. A remote attacker could possibly use this to assist in the exploitation of another vulnerability in the Linux kernel.

Priority

Medium

CVSS 3 base score: 7.5

Status

Package Release Status
linux
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-60.67)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.4.0-150.176)
Ubuntu 14.04 ESM (Trusty Tahr) Ignored
(was needs-triage ESM criteria)
Patches:
Introduced by 0b4419162aa6c4204843f3a13b48d9ab821d3167
Fixed by 355b98553789b646ed97ad801a619ff898471b92
linux-aws
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1047.49)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.4.0-1084.94)
Ubuntu 14.04 ESM (Trusty Tahr) Ignored
(was needs-triage ESM criteria)
linux-aws-5.0
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.0.0-1021.24~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-aws-hwe
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-1047.49~16.04.1)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-azure
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (5.0.0-1014.14~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-1056.61)
Ubuntu 14.04 ESM (Trusty Tahr) Ignored
(was needs-triage ESM criteria)
linux-azure-5.3
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.3.0-1007.8~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-azure-edge
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (5.0.0-1014.14~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-1056.61)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-euclid
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(was needs-triage now end-of-life)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-flo
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(abandoned)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gcp
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1042.45)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-1041.43)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gcp-5.3
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.3.0-1008.9~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gcp-edge
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1042.45)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gke
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(end-of-life)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gke-4.15
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1041.43)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-gke-5.0
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.0.0-1011.11~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-goldfish
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(end-of-life)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-grouper
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-hwe
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (5.0.0-23.24~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-60.67~16.04.1)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-hwe-edge
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (5.0.0-16.17~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-60.67~16.04.1)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-kvm
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1043.43)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.4.0-1047.53)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-lts-trusty
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-lts-utopic
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-lts-vivid
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-lts-wily
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-lts-xenial
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Ignored
(was needs-triage ESM criteria)
linux-maguro
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-mako
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(abandoned)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-manta
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-oem
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1056.65)
Ubuntu 16.04 ESM (Xenial Xerus) Ignored
(was needs-triage now end-of-life)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-oem-5.4
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Does not exist

Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-oem-osp1
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.0.0-1010.11)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-oracle
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1022.25)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.15.0-1022.25~16.04.1)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-oracle-5.0
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.0.0-1007.12~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-raspi2
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1044.47)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.4.0-1110.118)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-raspi2-5.3
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver) Not vulnerable
(5.3.0-1017.19~18.04.1)
Ubuntu 16.04 ESM (Xenial Xerus) Does not exist

Ubuntu 14.04 ESM (Trusty Tahr) Does not exist

linux-snapdragon
Launchpad, Ubuntu, Debian
Upstream
Released (5.1~rc4)
Ubuntu 18.04 LTS (Bionic Beaver)
Released (4.15.0-1062.69)
Ubuntu 16.04 ESM (Xenial Xerus)
Released (4.4.0-1114.119)
Ubuntu 14.04 ESM (Trusty Tahr) Does not exist