CVE-2020-16166: Infoleak
A flaw was found in the Linux kernel. The generation of the device ID from the network RNG internal state is predictable. The highest threat from this vulnerability is to data confidentiality.
Other sources
A flaw was found in the way the Linux kernel derived the network RNG's internal state making the device ID predictable. Adding netrandstate (randomness) on interrupt and CPU activity makes speculation complicated by a remote observer.
This modifies the first 32 bits out of the 128 bits of a random CPU's netrandstate on interrupt or CPU activity to complicate remote observations that could lead to guessing the network RNG's internal state.
In addition, with NOHZ some CPUs might not even get timer interrupts, leaving their local state rarely updated, while they are running networked processes making use of the random state. For this reason, we also perform this update in updateprocesstimes() in order to at least update the state when there is user or system activity, since it's the only case we care about.
References: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=f227e3ec3b5cad859ad15666874405e8c1bbc1d4 https://github.com/torvalds/linux/commit/f227e3ec3b5cad859ad15666874405e8c1bbc1d4
— Red Hat
The Linux kernel through 5.7.11 allows remote attackers to make observations that help to obtain sensitive information about the internal state of the network RNG, aka CID-f227e3ec3b5c. This is related to drivers/char/random.c and kernel/time/timer.c.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/kernel-altto a version that resolves this vulnerability.Fixed in 0:4.14.0-115.32.1.el7a - Upgrade
Upgrade
redhat/kernel-rtto a version that resolves this vulnerability.Fixed in 0:4.18.0-240.8.1.rt7.62.el8_3 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:4.18.0-240.8.1.el8_3 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:4.18.0-147.38.1.el8_1 - Upgrade
Upgrade
redhat/kernel-rtto a version that resolves this vulnerability.Fixed in 0:4.18.0-193.37.1.rt13.87.el8_2 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:4.18.0-193.37.1.el8_2 - Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 5.10.223-1Fixed in 5.10.262-1Fixed in 6.1.176-1Fixed in 6.1.180-1Fixed in 6.12.94-1Fixed in 6.12.101-1Fixed in 7.1.7-1Fixed in 7.1.8-1 - Upgrade
Upgrade
linux kernelto a version that resolves this vulnerability.Fixed in 5.7.11Patch CID-f227e3ec3b5c
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is the severity of CVE-2020-16166?
CVE-2020-16166 is classified as having a high severity level due to its potential impact on data confidentiality.
Which systems are affected by CVE-2020-16166?
CVE-2020-16166 affects multiple versions of the Linux kernel and various distributions including Red Hat, OpenSUSE, Fedora, and Debian.
How do I fix CVE-2020-16166?
To mitigate CVE-2020-16166, update to the latest patched versions of the affected Linux kernel packages as specified by your distribution.
How does CVE-2020-16166 impact data confidentiality?
CVE-2020-16166 can lead to predictable device IDs from the network RNG, posing a risk to data confidentiality.
What are the specific kernel versions that address CVE-2020-16166?
The fixed versions for the Linux kernel addressing CVE-2020-16166 include 4.14.0-115.32.1.el7a, 4.18.0-240.8.1.el8_3, among others, depending on the distribution.