Cloudanix VulnDB

CVE-2017-2636

High · 7.0

CVSS

7.0

EPSS

1.0%

Published

Mar 7, 2017

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A timing flaw in the operating system's device communication code lets someone already logged into the computer take over the whole system or crash it.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
High
Impact
Privilege Gain
Component
OS kernel
Class
Race Condition
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Race condition in the kernel TTY HDLC line discipline handler allows local users to trigger a double-free condition leading to privilege escalation or denial of service.

Why it matters to the business

Local attackers can obtain full system control or disrupt operations on affected Linux systems, potentially leading to data breaches or extended downtime; the vulnerability is old with low current exploitation probability but still requires attention on unpatched hosts.

How an attack unfolds

An attacker with local shell access configures the HDLC line discipline on a TTY device in a timed sequence that wins the race, triggering the double-free to corrupt kernel memory for privilege escalation or crash.

How to fix it

Upgrade affected Linux kernels beyond version 4.10.1; apply the fix referenced in commit 4e31f50cf81a8660bb16b78d6da2072844617b92 where applicable and rebuild or reboot as needed.

How to confirm the fix worked

Verify kernel version is newer than 4.10.1, confirm absence of the vulnerable n_hdlc.c code path, and test that setting HDLC discipline no longer triggers double-free conditions under load.

Typical attack path

  1. Gain local user access to the system
  2. Open a TTY device and set the HDLC line discipline
  3. Trigger the race condition through concurrent operations
  4. Exploit resulting double-free for privilege escalation or DoS

How to detect it

Search kernel logs and audit records for TTY line discipline changes to HDLC followed by memory corruption indicators or crashes; review process execution involving TTY configuration utilities.

What your security team should do

  • Prioritize patching all Linux systems running kernels through 4.10.1
  • Restrict local user access to TTY devices where possible
  • Monitor for kernel oops or panic logs referencing n_hdlc
  • Review and remove unnecessary line discipline configurations

The record

Race condition in drivers/tty/n_hdlc.c in the Linux kernel through 4.10.1 allows local users to gain privileges or cause a denial of service (double free) by setting the HDLC line discipline.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 4.9.16-1
Debian:12 linux 0 4.9.16-1
Debian:13 linux 0 4.9.16-1
Debian:7 linux 0 3.2.86-1
Debian:8 linux 0 3.16.39-1+deb8u2
Mageia:5 kernel 0 4.4.55-1.mga5
Mageia:5 kernel-linus 0 4.4.55-1.mga5
Mageia:5 kernel-tmb 0 4.4.55-1.mga5
Mageia:5 kernel-userspace-headers 0 4.4.55-1.mga5
Mageia:5 kmod-vboxadditions 0 5.1.18-2.mga5
Mageia:5 kmod-virtualbox 0 5.1.18-2.mga5
Mageia:5 kmod-xtables-addons 0 2.10-35.mga5
Red Hat:enterprise_linux:6::client kernel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-abi-whitelists 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-bootwrapper 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debug 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debug-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debug-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debuginfo-common-i686 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debuginfo-common-ppc64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debuginfo-common-s390x 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-debuginfo-common-x86_64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-doc 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-firmware 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-headers 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-kdump 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-kdump-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client kernel-kdump-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client python-perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::client python-perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-abi-whitelists 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-bootwrapper 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debug 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debug-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debug-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debuginfo-common-i686 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debuginfo-common-ppc64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debuginfo-common-s390x 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-debuginfo-common-x86_64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-doc 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-firmware 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-headers 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-kdump 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-kdump-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode kernel-kdump-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode python-perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::computenode python-perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-abi-whitelists 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-bootwrapper 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debug 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debug-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debug-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debuginfo-common-i686 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debuginfo-common-ppc64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debuginfo-common-s390x 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-debuginfo-common-x86_64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-doc 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-firmware 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-headers 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-kdump 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-kdump-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server kernel-kdump-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server python-perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::server python-perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-abi-whitelists 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-bootwrapper 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debug 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debug-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debug-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debuginfo-common-i686 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debuginfo-common-ppc64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debuginfo-common-s390x 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-debuginfo-common-x86_64 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-doc 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-firmware 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-headers 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-kdump 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-kdump-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation kernel-kdump-devel 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation python-perf 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:6::workstation python-perf-debuginfo 0 0:2.6.32-696.1.1.el6
Red Hat:enterprise_linux:7::client kernel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-abi-whitelists 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-bootwrapper 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debug 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debug-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debug-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64le 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-s390x 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-x86_64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-doc 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-headers 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-tools 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client python-perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::client python-perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-abi-whitelists 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-bootwrapper 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64le 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-s390x 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-x86_64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-doc 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-headers 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode python-perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::computenode python-perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-abi-whitelists 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-bootwrapper 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debug 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debug-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debug-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64le 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-s390x 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-x86_64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-doc 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-headers 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-tools 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server python-perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::server python-perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-abi-whitelists 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-bootwrapper 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64le 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-s390x 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-x86_64 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-doc 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-headers 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs-devel 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation perf-debuginfo 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation python-perf 0 0:3.10.0-514.16.1.el7
Red Hat:enterprise_linux:7::workstation python-perf-debuginfo 0 0:3.10.0-514.16.1.el7

Related vulnerabilities