Every CVE Search/ Get API key

CVE-2016-10229

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP...

9.8 CriticalFix available

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

12.9%Up 6.0 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
CVE-2016-10229
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
10.0 HighAV:N/AC:L/Au:N/C:C/I:C/A:C
Weakness
CWE-358
Updated
2026-11-02
CVE List No score

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
CVE-2016-10229
Updated
2026-11-02
EUVDEUVD-2016-1414 No score

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
EUVD-2016-1414
Updated
2026-11-03
GitHub AdvisoriesGHSA-gm6m-fgmp-cp9x 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP...

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
GHSA-gm6m-fgmp-cp9x
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-358
Updated
2026-11-02
OSVALPINE-CVE-2016-10229 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
ALPINE-CVE-2016-10229
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSV 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
CVE-2016-10229
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2016-10229 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
DEBIAN-CVE-2016-10229
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2016-10229 9.8

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

Record
UBUNTU-CVE-2016-10229
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVSUSE-SU-2017:2920-1 No score

Security update for the Linux Kernel

The SUSE Linux Enterprise 12 GA LTS kernel was updated to receive various security and bugfixes.

The following security bugs were fixed:

  • CVE-2017-15649: net/packet/af_packet.c in the Linux kernel allowed local users to gain privileges via crafted system calls that trigger mishandling of packet_fanout data structures, because of a race condition (involving fanout_add and packet_do_bind) that leads to a use-after-free, a different vulnerability than CVE-2017-6346 (bnc#1064388).
  • CVE-2015-9004: kernel/events/core.c in the Linux kernel mishandled counter grouping, which allowed local users to gain privileges via a crafted application, related to the perf_pmu_register and perf_event_open functions (bnc#1037306).
  • CVE-2016-10229: udp.c in the Linux kernel allowed remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag (bnc#1032268).
  • CVE-2016-9604: The handling of keyrings starting with '.' in KEYCTL_JOIN_SESSION_KEYRING, which could have allowed local users to manipulate privileged keyrings, was fixed (bsc#1035576)
  • CVE-2017-1000363: Linux drivers/char/lp.c Out-of-Bounds Write. Due to a missing bounds check, and the fact that parport_ptr integer is static, a 'secure boot' kernel command line adversary (can happen due to bootloader vulns, e.g. Google Nexus 6's CVE-2016-10277, where due to a vulnerability the adversary has partial control over the command line) can overflow the parport_nr array in the following code, by appending many (>LP_NO) 'lp=none' arguments to the command line (bnc#1039456).
  • CVE-2017-1000365: The Linux Kernel imposes a size restriction on the arguments and environmental strings passed through RLIMIT_STACK/RLIM_INFINITY (1/4 of the size), but did not take the argument and environment pointers into account, which allowed attackers to bypass this limitation. (bnc#1039354).
  • CVE-2017-1000380: sound/core/timer.c in the Linux kernel is vulnerable to a data race in the ALSA /dev/snd/timer driver resulting in local users being able to read information belonging to other users, i.e., uninitialized memory contents may be disclosed when a read and an ioctl happen at the same time (bnc#1044125).
  • CVE-2017-10661: Race condition in fs/timerfd.c in the Linux kernel allowed local users to gain privileges or cause a denial of service (list corruption or use-after-free) via simultaneous file-descriptor operations that leverage improper might_cancel queueing (bnc#1053152).
  • CVE-2017-11176: The mq_notify function in the Linux kernel did not set the sock pointer to NULL upon entry into the retry logic. During a user-space close of a Netlink socket, it allowed attackers to cause a denial of service (use-after-free) or possibly have unspecified other impact (bnc#1048275).
  • CVE-2017-12153: A security flaw was discovered in the nl80211_set_rekey_data() function in net/wireless/nl80211.c in the Linux kernel This function did not check whether the required attributes are present in a Netlink request. This request can be issued by a user with the CAP_NET_ADMIN capability and may result in a NULL pointer dereference and system crash (bnc#1058410).
  • CVE-2017-12154: The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel did not ensure that the 'CR8-load exiting' and 'CR8-store exiting' L0 vmcs02 controls exist in cases where L1 omits the 'use TPR shadow' vmcs12 control, which allowed KVM L2 guest OS users to obtain read and write access to the hardware CR8 register (bnc#1058507).
  • CVE-2017-12762: In /drivers/isdn/i4l/isdn_net.c: A user-controlled buffer is copied into a local buffer of constant size using strcpy without a length check which can cause a buffer overflow. (bnc#1053148).
  • CVE-2017-13080: Wi-Fi Protected Access (WPA and WPA2) allowed reinstallation of the Group Temporal Key (GTK) during the group key handshake, allowing an attacker within radio range to replay frames from access…
Record
SUSE-SU-2017:2920-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
linux-grsec
Alpine:v3.3
before 4.1.39-r0
4.1.39-r0
linux
Debian:12
before 4.5.1-1
4.5.1-1
linux
Debian:13
before 4.5.1-1
4.5.1-1
linux
Debian:14
before 4.5.1-1
4.5.1-1
kernel-ec2
SUSE:Linux Enterprise Module for Public Cloud 12
before 3.12.61-52.101.1
3.12.61-52.101.1
kernel-default
SUSE:Linux Enterprise Server 12-LTSS
before 3.12.61-52.101.1
3.12.61-52.101.1
kernel-source
SUSE:Linux Enterprise Server 12-LTSS
before 3.12.61-52.101.1
3.12.61-52.101.1
kernel-syms
SUSE:Linux Enterprise Server 12-LTSS
before 3.12.61-52.101.1
3.12.61-52.101.1
kernel-xen
SUSE:Linux Enterprise Server 12-LTSS
before 3.12.61-52.101.1
3.12.61-52.101.1
kgraft-patch-SLE12_Update_28
SUSE:Linux Enterprise Server 12-LTSS
before 1-8.1
1-8.1
linux
Ubuntu:14.04:LTS
before 3.13.0-79.123, plus listed versions
3.11.0-12.193.12.0-1.33.12.0-2.53.12.0-2.73.12.0-3.8
Show 45 moreShow less
3.12.0-3.93.12.0-4.103.12.0-4.123.12.0-5.133.12.0-7.153.13.0-1.163.13.0-2.173.13.0-3.183.13.0-4.193.13.0-5.203.13.0-6.233.13.0-7.253.13.0-7.263.13.0-8.273.13.0-8.283.13.0-10.303.13.0-11.313.13.0-12.323.13.0-13.333.13.0-14.343.13.0-15.353.13.0-16.363.13.0-17.373.13.0-18.383.13.0-19.393.13.0-19.403.13.0-20.423.13.0-21.433.13.0-22.443.13.0-23.453.13.0-24.463.13.0-24.473.13.0-27.503.13.0-29.533.13.0-30.543.13.0-30.553.13.0-32.573.13.0-33.583.13.0-34.603.13.0-35.623.13.0-36.633.13.0-37.643.13.0-39.663.13.0-40.693.13.0-41.70
3.13.0-79.123
linux-lts-vivid
Ubuntu:14.04:LTS
before 3.19.0-49.55~14.04.1, plus listed versions
3.19.0-18.18~14.04.13.19.0-20.20~14.04.13.19.0-21.21~14.04.13.19.0-22.22~14.04.13.19.0-23.24~14.04.1
Show 14 moreShow less
3.19.0-25.26~14.04.13.19.0-26.28~14.04.13.19.0-28.30~14.04.13.19.0-30.33~14.04.13.19.0-30.34~14.04.13.19.0-31.36~14.04.13.19.0-32.37~14.04.13.19.0-33.38~14.04.13.19.0-37.42~14.04.13.19.0-39.44~14.04.13.19.0-41.46~14.04.23.19.0-42.48~14.04.13.19.0-43.49~14.04.13.19.0-47.53~14.04.1
3.19.0-49.55~14.04.1

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2016-10229 is a critical vulnerability (CVSS 9.8) in Linux Kernel, published April 4, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 12.9%, the 96th percentile. Fixed in linux-grsec 4.1.39-r0.

References

Show 102 moreShow less
This page doesn't list everything

Left out here: 35 versions and the rest of 1 source description. The JSON record has them.

MoveEnter Open