CVE-2016-9644

Publication date 27 November 2016

Last updated 24 July 2024


Ubuntu priority

Cvss 3 Severity Score

7.8 · High

Score breakdown

The __get_user_asm_ex macro in arch/x86/include/asm/uaccess.h in the Linux kernel 4.4.22 through 4.4.28 contains extended asm statements that are incompatible with the exception table, which allows local users to obtain root access on non-SMEP platforms via a crafted application. NOTE: this vulnerability exists because of incorrect backporting of the CVE-2016-9178 patch to older kernels.

From the Ubuntu Security Team

It was discovered that the __get_user_asm_ex implementation in the Linux kernel for x86/x86_64 contained extended asm statements that were incompatible with the exception table. A local attacker could use this to gain administrative privileges.

Read the notes from the security team

Status

Package Ubuntu Release Status
linux 16.10 yakkety
Not affected
16.04 LTS xenial
Fixed 4.4.0-51.72
14.04 LTS trusty
Vulnerable, work in progress
12.04 LTS precise
Not affected
linux-armadaxp 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise
Not affected
linux-aws 16.10 yakkety Not in release
16.04 LTS xenial
Not affected
14.04 LTS trusty
Not affected
12.04 LTS precise Not in release
linux-flo 16.10 yakkety
Not affected
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-gke 16.10 yakkety Not in release
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-goldfish 16.10 yakkety
Not affected
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-grouper 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-hwe 16.10 yakkety Not in release
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-hwe-edge 16.10 yakkety Not in release
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-linaro-omap 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-linaro-shared 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-linaro-vexpress 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-lts-quantal 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-lts-raring 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-lts-saucy 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-lts-trusty 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise
Not affected
linux-lts-utopic 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-lts-vivid 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-lts-wily 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-lts-xenial 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty
Fixed 4.4.0-51.72~14.04.1
12.04 LTS precise Not in release
linux-maguro 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-mako 16.10 yakkety
Not affected
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-manta 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-qcm-msm 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise Ignored end of life
linux-raspi2 16.10 yakkety
Not affected
16.04 LTS xenial
Not affected
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-snapdragon 16.10 yakkety
Fixed 4.4.0-1046.50
16.04 LTS xenial
Fixed 4.4.0-1042.46
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-ti-omap4 16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise
Not affected

Notes


sbeattie

1c109fabbd51863475cd12ac206bdd249aee35af was applied to the 4.4 stable series (in xenial as 1c109fabbd51863475cd12ac206bdd249aee35af) to fix CVE-2016-9178, and then got reverted from stable in 4.4.30 (in xenial as 2da13e7f631bb13658e00e61fdea050da25e69e7). 548acf19234dbda5a52d5a8e7e205af46e9da840 was also very briefly applied to stable in 4.4.29, but reverted at the same time due to problems (in xenial as 102d19689b2dd4f639a14dfd3f52ce19b5d7bb17). For xenial/4.4 derived kernels, this CVE is fixed with the reversion in 2da13e7f631bb13658e00e61fdea050da25e69e7. However, this leaves CVE-2016-9178 unfixed.

Patch details

For informational purposes only. We recommend not to cherry-pick updates. How can I get the fixes?

Package Patch details
linux

Severity score breakdown

Parameter Value
Base score 7.8 · High
Attack vector Local
Attack complexity Low
Privileges required None
User interaction Required
Scope Unchanged
Confidentiality High
Integrity impact High
Availability impact High
Vector CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

References

Related Ubuntu Security Notices (USN)

    • USN-3161-4
    • Linux kernel (Qualcomm Snapdragon) vulnerabilities
    • 20 December 2016
    • USN-3146-2
    • Linux kernel (Xenial HWE) vulnerabilities
    • 30 November 2016
    • USN-3146-1
    • Linux kernel vulnerabilities
    • 30 November 2016

Other references