CVE-2016-10229
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.
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
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 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 10.0 High
AV: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 Critical
CVSS: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 Critical
CVSS: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 Critical
CVSS: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 Critical
CVSS: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 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 3.0
- 9.8 Critical
CVSS: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
| Package | Affected | Fixed |
|---|---|---|
linux-grsecAlpine:v3.3 |
before 4.1.39-r0 | 4.1.39-r0 |
linuxDebian:12 |
before 4.5.1-1 | 4.5.1-1 |
linuxDebian:13 |
before 4.5.1-1 | 4.5.1-1 |
linuxDebian:14 |
before 4.5.1-1 | 4.5.1-1 |
kernel-ec2SUSE:Linux Enterprise Module for Public Cloud 12 |
before 3.12.61-52.101.1 | 3.12.61-52.101.1 |
kernel-defaultSUSE:Linux Enterprise Server 12-LTSS |
before 3.12.61-52.101.1 | 3.12.61-52.101.1 |
kernel-sourceSUSE:Linux Enterprise Server 12-LTSS |
before 3.12.61-52.101.1 | 3.12.61-52.101.1 |
kernel-symsSUSE:Linux Enterprise Server 12-LTSS |
before 3.12.61-52.101.1 | 3.12.61-52.101.1 |
kernel-xenSUSE:Linux Enterprise Server 12-LTSS |
before 3.12.61-52.101.1 | 3.12.61-52.101.1 |
kgraft-patch-SLE12_Update_28SUSE:Linux Enterprise Server 12-LTSS |
before 1-8.1 | 1-8.1 |
linuxUbuntu: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 less3.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-vividUbuntu: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 less3.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
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE 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
securityfocus.com/bid/97397
source.android.com/security/bulletin/2017-04-01.html
github.com/torvalds/linux/commit/197c949e7798fbf28cfadc69d9ca0c2abbf93191
git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=197c949e7798fbf28cfadc69d9ca0c2abbf93191
securitytracker.com/id/1038201
security.paloaltonetworks.com/CVE-2016-10229
Show 102 moreShow less
security.netapp.com/advisory/ntap-20250103-0008
nvd.nist.gov/vuln/detail/CVE-2016-10229
github.com/advisories/GHSA-gm6m-fgmp-cp9x
security.alpinelinux.org/vuln/CVE-2016-10229
security-tracker.debian.org/tracker/CVE-2016-10229
suse.com/support/update/announcement/2017/suse-su-20172920-1
bugzilla.suse.com/1008353
bugzilla.suse.com/1012422
bugzilla.suse.com/1017941
bugzilla.suse.com/1029850
bugzilla.suse.com/1030593
bugzilla.suse.com/1032268
bugzilla.suse.com/1034405
bugzilla.suse.com/1034670
bugzilla.suse.com/1035576
bugzilla.suse.com/1035877
bugzilla.suse.com/1036752
bugzilla.suse.com/1037182
bugzilla.suse.com/1037183
bugzilla.suse.com/1037306
bugzilla.suse.com/1037994
bugzilla.suse.com/1038544
bugzilla.suse.com/1038879
bugzilla.suse.com/1038981
bugzilla.suse.com/1038982
bugzilla.suse.com/1039348
bugzilla.suse.com/1039349
bugzilla.suse.com/1039354
bugzilla.suse.com/1039456
bugzilla.suse.com/1039721
bugzilla.suse.com/1039882
bugzilla.suse.com/1039883
bugzilla.suse.com/1039885
bugzilla.suse.com/1040069
bugzilla.suse.com/1041431
bugzilla.suse.com/1041958
bugzilla.suse.com/1044125
bugzilla.suse.com/1045327
bugzilla.suse.com/1045487
bugzilla.suse.com/1045922
bugzilla.suse.com/1046107
bugzilla.suse.com/1047408
bugzilla.suse.com/1048275
bugzilla.suse.com/1049645
bugzilla.suse.com/1049882
bugzilla.suse.com/1052593
bugzilla.suse.com/1053148
bugzilla.suse.com/1053152
bugzilla.suse.com/1056588
bugzilla.suse.com/1056982
bugzilla.suse.com/1057179
bugzilla.suse.com/1058038
bugzilla.suse.com/1058410
bugzilla.suse.com/1058507
bugzilla.suse.com/1058524
bugzilla.suse.com/1062520
bugzilla.suse.com/1063667
bugzilla.suse.com/1064388
bugzilla.suse.com/938162
bugzilla.suse.com/975596
bugzilla.suse.com/977417
bugzilla.suse.com/984779
bugzilla.suse.com/985562
bugzilla.suse.com/990682
suse.com/security/cve/CVE-2015-9004
suse.com/security/cve/CVE-2016-10229
suse.com/security/cve/CVE-2016-9604
suse.com/security/cve/CVE-2017-1000363
suse.com/security/cve/CVE-2017-1000365
suse.com/security/cve/CVE-2017-1000380
suse.com/security/cve/CVE-2017-10661
suse.com/security/cve/CVE-2017-11176
suse.com/security/cve/CVE-2017-12153
suse.com/security/cve/CVE-2017-12154
suse.com/security/cve/CVE-2017-12762
suse.com/security/cve/CVE-2017-13080
suse.com/security/cve/CVE-2017-14051
suse.com/security/cve/CVE-2017-14106
suse.com/security/cve/CVE-2017-14140
suse.com/security/cve/CVE-2017-15265
suse.com/security/cve/CVE-2017-15274
suse.com/security/cve/CVE-2017-15649
suse.com/security/cve/CVE-2017-2647
suse.com/security/cve/CVE-2017-6951
suse.com/security/cve/CVE-2017-7482
suse.com/security/cve/CVE-2017-7487
suse.com/security/cve/CVE-2017-7518
suse.com/security/cve/CVE-2017-7541
suse.com/security/cve/CVE-2017-7542
suse.com/security/cve/CVE-2017-7889
suse.com/security/cve/CVE-2017-8106
suse.com/security/cve/CVE-2017-8831
suse.com/security/cve/CVE-2017-8890
suse.com/security/cve/CVE-2017-8924
suse.com/security/cve/CVE-2017-8925
suse.com/security/cve/CVE-2017-9074
suse.com/security/cve/CVE-2017-9075
suse.com/security/cve/CVE-2017-9076
suse.com/security/cve/CVE-2017-9077
suse.com/security/cve/CVE-2017-9242
ubuntu.com/security/CVE-2016-10229
cve.org/CVERecord?id=CVE-2016-10229
Left out here: 35 versions and the rest of 1 source description. The JSON record has them.