Cloudanix VulnDB

CVE-2016-10147

Medium · 5.5

CVSS

5.5

EPSS

0.4%

Published

Jan 18, 2017

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A local user on an old Linux system can deliberately crash the whole computer by asking the encryption subsystem to use an algorithm it cannot handle.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Local NULL pointer dereference in crypto/mcryptd.c triggered when an AF_ALG socket is bound to an incompatible algorithm such as mcryptd(md5), resulting in immediate kernel panic.

Why it matters to the business

A local user can crash the entire system at will, interrupting all services and workloads running on that host; the flaw has been public for nearly a decade with negligible exploitation activity and no ransomware usage.

How an attack unfolds

An attacker who already possesses a local shell on a vulnerable Linux kernel creates an AF_ALG socket, selects the mcryptd algorithm with an incompatible digest (md5), and triggers the NULL dereference path inside mcryptd.c, causing an immediate kernel crash.

How to fix it

Upgrade the Linux kernel to a version containing commit 48a992727d82cb7db076fa15d372178743b1f4cd (equivalent to 4.8.15 or later mainline) and reboot the affected hosts.

How to confirm the fix worked

Verify the running kernel is 4.8.15 or newer; attempt to reproduce the crash with a minimal AF_ALG test program on a non-production system to confirm the defect is absent.

Typical attack path

  1. Obtain local shell access on the target system
  2. Load or confirm presence of the mcryptd crypto module
  3. Invoke socket(AF_ALG, SOCK_SEQPACKET, 0) followed by bind() with an incompatible algorithm name
  4. Trigger the dereference to crash the kernel

How to detect it

Inspect kernel logs (dmesg, /var/log/kern.log, journalctl) for NULL pointer dereference crashes originating from mcryptd.c or crypto code paths; correlate with user processes that recently created AF_ALG sockets.

  • mcryptd(md5)
  • NULL pointer dereference in mcryptd
  • crypto/mcryptd.c

What your security team should do

  • Patch to a fixed kernel version at the next maintenance window
  • Restrict local user accounts that can create AF_ALG sockets via LSM or seccomp filters where patching is delayed
  • Monitor for kernel oops/panic logs containing mcryptd references

The record

crypto/mcryptd.c in the Linux kernel before 4.8.15 allows local users to cause a denial of service (NULL pointer dereference and system crash) by using an AF_ALG socket with an incompatible algorithm, as demonstrated by mcryptd(md5).

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 4.8.15-1
Debian:12 linux 0 4.8.15-1
Debian:13 linux 0 4.8.15-1
Debian:14 linux 0 4.8.15-1
Red Hat:enterprise_linux:7::client kernel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-abi-whitelists 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-bootwrapper 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debug 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debug-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debug-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64le 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-s390x 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-x86_64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-doc 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-headers 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-kdump 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-kdump-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-kdump-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-tools 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-tools-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client python-perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::client python-perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-abi-whitelists 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-bootwrapper 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debug 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64le 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-s390x 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-x86_64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-doc 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-headers 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-tools 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode python-perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::computenode python-perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-abi-whitelists 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-bootwrapper 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debug 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debug-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debug-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64le 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-s390x 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-x86_64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-doc 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-headers 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-kdump 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-kdump-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-kdump-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-tools 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-tools-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server python-perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::server python-perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-abi-whitelists 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-bootwrapper 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debug 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64le 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-s390x 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-x86_64 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-doc 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-headers 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-tools 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs-devel 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation python-perf 0 0:3.10.0-693.el7
Red Hat:enterprise_linux:7::workstation python-perf-debuginfo 0 0:3.10.0-693.el7
Red Hat:rhel_extras_rt:7 kernel-rt 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debug 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debug-debuginfo 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debug-devel 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debug-kvm 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debug-kvm-debuginfo 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debuginfo 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-debuginfo-common-x86_64 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-devel 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-doc 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-kvm 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-kvm-debuginfo 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-trace 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-trace-debuginfo 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-trace-devel 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-trace-kvm 0 0:3.10.0-693.rt56.617.el7
Red Hat:rhel_extras_rt:7 kernel-rt-trace-kvm-debuginfo 0 0:3.10.0-693.rt56.617.el7
Ubuntu:14.04:LTS linux-aws 0 4.4.0-1002.2
Ubuntu:14.04:LTS linux-azure 0 4.15.0-1023.24~14.04.1
Ubuntu:14.04:LTS linux-lts-xenial 0 4.4.0-62.83~14.04.1
Ubuntu:16.04:LTS linux 0 4.4.0-62.83
Ubuntu:16.04:LTS linux-aws 0 4.4.0-1003.12
Ubuntu:16.04:LTS linux-azure 0 4.11.0-1009.9
Ubuntu:16.04:LTS linux-euclid 0 4.4.0-9019.20
Ubuntu:16.04:LTS linux-gcp 0 4.10.0-1004.4
Ubuntu:16.04:LTS linux-gke 0 4.4.0-1003.3
Ubuntu:16.04:LTS linux-hwe 0 4.8.0-39.42~16.04.1
Ubuntu:16.04:LTS linux-kvm 0 4.4.0-1004.9
Ubuntu:16.04:LTS linux-oem 0 4.13.0-1008.9
Ubuntu:16.04:LTS linux-raspi2 0 4.4.0-1042.49
Ubuntu:16.04:LTS linux-snapdragon 0 4.4.0-1046.50
Ubuntu:18.04:LTS linux 0 4.13.0-16.19
Ubuntu:18.04:LTS linux-aws 0 4.15.0-1001.1
Ubuntu:18.04:LTS linux-azure 0 4.15.0-1002.2
Ubuntu:18.04:LTS linux-gcp 0 4.15.0-1001.1
Ubuntu:18.04:LTS linux-kvm 0 4.15.0-1002.2
Ubuntu:18.04:LTS linux-oem 0 4.15.0-1002.3
Ubuntu:18.04:LTS linux-raspi2 0 4.13.0-1005.5
Ubuntu:Pro:14.04:LTS linux-lts-vivid 0 No fix
Ubuntu:Pro:16.04:LTS linux-flo 0 No fix
Ubuntu:Pro:16.04:LTS linux-goldfish 0 No fix
Ubuntu:Pro:16.04:LTS linux-mako 0 No fix

Related vulnerabilities