Your submission was sent successfully! Close

Thank you for contacting us. A member of our team will be in touch shortly. Close

You have successfully unsubscribed! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates about Ubuntu and upcoming events where you can meet our team.Close

CVE-2016-9793

Publication date 28 December 2016

Last updated 24 July 2024


Ubuntu priority

Cvss 3 Severity Score

7.8 · High

Score breakdown

The sock_setsockopt function in net/core/sock.c in the Linux kernel before 4.8.14 mishandles negative values of sk_sndbuf and sk_rcvbuf, which allows local users to cause a denial of service (memory corruption and system crash) or possibly have unspecified other impact by leveraging the CAP_NET_ADMIN capability for a crafted setsockopt system call with the (1) SO_SNDBUFFORCE or (2) SO_RCVBUFFORCE option.

From the Ubuntu Security Team

Andrey Konovalov discovered that signed integer overflows existed in the setsockopt() system call when handling the SO_SNDBUFFORCE and SO_RCVBUFFORCE options. A local attacker with the CAP_NET_ADMIN capability could use this to cause a denial of service (system crash or memory corruption).

Read the notes from the security team

Status

Package Ubuntu Release Status
linux 17.04 zesty
Not affected
16.10 yakkety
Fixed 4.8.0-34.36
16.04 LTS xenial
Fixed 4.4.0-59.80
14.04 LTS trusty
Fixed 3.13.0-107.154
12.04 LTS precise
Not affected
linux-armadaxp 17.04 zesty Not in release
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 17.04 zesty Not in release
16.10 yakkety Not in release
16.04 LTS xenial
Fixed 4.4.0-1003.12
14.04 LTS trusty
Not affected
12.04 LTS precise Not in release
linux-flo 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty
Not affected
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty Not in release
12.04 LTS precise
Fixed 3.13.0-107.154~precise1
linux-lts-utopic 17.04 zesty Not in release
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 17.04 zesty Not in release
16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty
Fixed 3.19.0-79.87~14.04.1
12.04 LTS precise Not in release
linux-lts-wily 17.04 zesty Not in release
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 17.04 zesty Not in release
16.10 yakkety Not in release
16.04 LTS xenial Not in release
14.04 LTS trusty
Fixed 4.4.0-59.80~14.04.1
12.04 LTS precise Not in release
linux-maguro 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty Not in release
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 17.04 zesty
Not affected
16.10 yakkety
Fixed 4.8.0-1022.25
16.04 LTS xenial
Fixed 4.4.0-1040.47
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-snapdragon 17.04 zesty
Not affected
16.10 yakkety
Fixed 4.4.0-1046.50
16.04 LTS xenial
Fixed 4.4.0-1044.48
14.04 LTS trusty Not in release
12.04 LTS precise Not in release
linux-ti-omap4 17.04 zesty Not in release
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

the overflows exist for SO_{SND|RCV}BUFFORCE, so it's possible for a process with CAP_NET_ADMIN to do this. However, the check for CAP_NET_ADMIN is via capable() *not* ns_capable(), so the process attempting this has to have CAP_NET_ADMIN in the init_ns; having it in a new user namespace (i.e. via unshare()) is not sufficient. Thus, this cannot be exploited by an unprivileged user dropping into an unprivileged user namespace. Hence the low priority.

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 Low
User interaction None
Scope Unchanged
Confidentiality High
Integrity impact High
Availability impact High
Vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

References

Related Ubuntu Security Notices (USN)

    • USN-3169-3
    • Linux kernel (Raspberry Pi 2) vulnerabilities
    • 11 January 2017
    • USN-3168-2
    • Linux kernel (Trusty HWE) vulnerabilities
    • 11 January 2017
    • USN-3168-1
    • Linux kernel vulnerabilities
    • 11 January 2017
    • USN-3169-2
    • Linux kernel (Xenial HWE) vulnerabilities
    • 11 January 2017
    • USN-3169-1
    • Linux kernel vulnerabilities
    • 11 January 2017
    • USN-3169-4
    • Linux kernel (Qualcomm Snapdragon) vulnerabilities
    • 11 January 2017
    • USN-3170-2
    • Linux kernel (Raspberry Pi 2) vulnerabilities
    • 11 January 2017
    • USN-3170-1
    • Linux kernel vulnerabilities
    • 11 January 2017

Other references