Cloudanix VulnDB

CVE-2020-12771

Medium · 5.5

CVSS

5.5

EPSS

0.5%

Published

May 9, 2020

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in the Linux kernel can make storage systems that use caching stop working, forcing restarts and causing downtime.

Exploit Available
Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Race Condition
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

A deadlock occurs in btree_gc_coalesce when a coalescing operation fails, leaving the bcache subsystem unable to proceed and causing kernel thread hangs.

Why it matters to the business

Linux systems and storage appliances using bcache may experience prolonged unavailability or require reboots, disrupting workloads on servers and network-attached storage across many distributions and vendor products.

How an attack unfolds

A local attacker triggers failure paths during bcache garbage collection coalescing to induce the deadlock, resulting in denial of service without needing elevated privileges beyond local access.

How to fix it

Upgrade the Linux kernel to a version newer than 5.6.11 that contains the fix for the deadlock in drivers/md/bcache/btree.c. Apply the latest updates from distribution vendors and NetApp for all affected products.

How to confirm the fix worked

Confirm the running kernel version exceeds 5.6.11, review the btree.c source for corrected locking around coalescing, and exercise bcache workloads to verify absence of hangs.

Typical attack path

  1. Obtain local shell access on an affected system
  2. Perform or induce bcache operations that reach the coalescing code path
  3. Force a failure condition in btree_gc_coalesce to trigger the deadlock

How to detect it

Inspect kernel logs and dmesg for messages about blocked tasks or bcache coalescing failures; correlate with system hangs on hosts running affected kernel versions.

  • btree_gc_coalesce
  • drivers/md/bcache/btree.c

What your security team should do

  • Apply kernel updates immediately on any systems exposing bcache
  • Audit bcache usage and disable where updates are delayed
  • Monitor kernel logs for hung-task warnings related to bcache

The record

An issue was discovered in the Linux kernel through 5.6.11. btree_gc_coalesce in drivers/md/bcache/btree.c has a deadlock if a coalescing operation fails.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 5.7.6-1
Debian:12 linux 0 5.7.6-1
Debian:13 linux 0 5.7.6-1
Debian:9 linux 0 4.9.240-1
Debian:9 linux-4.19 0 4.19.132-1~deb9u2
SUSE:Enterprise Storage 5 kernel-default 0 4.4.180-94.127.1
SUSE:Enterprise Storage 5 kernel-source 0 4.4.180-94.127.1
SUSE:Enterprise Storage 5 kernel-syms 0 4.4.180-94.127.1
SUSE:Enterprise Storage 5 kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:HPE Helion OpenStack 8 kernel-default 0 4.4.180-94.127.1
SUSE:HPE Helion OpenStack 8 kernel-source 0 4.4.180-94.127.1
SUSE:HPE Helion OpenStack 8 kernel-syms 0 4.4.180-94.127.1
SUSE:HPE Helion OpenStack 8 kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:Linux Enterprise High Availability Extension 12 SP2 kernel-default 0 4.4.121-92.138.1
SUSE:Linux Enterprise High Availability Extension 12 SP3 kernel-default 0 4.4.180-94.127.1
SUSE:Linux Enterprise High Availability Extension 12 SP4 kernel-default 0 4.12.14-95.57.1
SUSE:Linux Enterprise High Availability Extension 12 SP5 kernel-default 0 4.12.14-122.29.1
SUSE:Linux Enterprise High Availability Extension 15 kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Availability Extension 15 SP1 kernel-default 0 4.12.14-197.48.1
SUSE:Linux Enterprise High Availability Extension 15 SP2 kernel-default 0 5.3.18-24.9.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-docs 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-obs-build 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-source 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-syms 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-ESPOS kernel-vanilla 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-docs 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-obs-build 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-source 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-syms 0 4.12.14-150.55.1
SUSE:Linux Enterprise High Performance Computing 15-LTSS kernel-vanilla 0 4.12.14-150.55.1
SUSE:Linux Enterprise Live Patching 12 SP4 kernel-default 0 4.12.14-95.57.1
SUSE:Linux Enterprise Live Patching 12 SP4 kgraft-patch-SLE12-SP4_Update_15 0 1-6.3.1
SUSE:Linux Enterprise Live Patching 12 SP5 kernel-default 0 4.12.14-122.29.1
SUSE:Linux Enterprise Live Patching 12 SP5 kgraft-patch-SLE12-SP5_Update_7 0 1-8.3.1
SUSE:Linux Enterprise Live Patching 15 kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise Live Patching 15 kernel-livepatch-SLE15_Update_19 0 1-1.3.1
SUSE:Linux Enterprise Live Patching 15 SP1 kernel-default 0 4.12.14-197.48.1
SUSE:Linux Enterprise Live Patching 15 SP1 kernel-livepatch-SLE15-SP1_Update_13 0 1-3.3.1
SUSE:Linux Enterprise Live Patching 15 SP2 kernel-default 0 5.3.18-24.9.1
SUSE:Linux Enterprise Live Patching 15 SP2 kernel-livepatch-SLE15-SP2_Update_1 0 1-5.3.6
SUSE:Linux Enterprise Module for Basesystem 15 SP1 kernel-default 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Basesystem 15 SP1 kernel-source 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Basesystem 15 SP1 kernel-zfcpdump 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Basesystem 15 SP2 kernel-default 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Basesystem 15 SP2 kernel-default-base 0 5.3.18-24.9.1.9.2.6
SUSE:Linux Enterprise Module for Basesystem 15 SP2 kernel-preempt 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Basesystem 15 SP2 kernel-source 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Development Tools 15 SP1 kernel-docs 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Development Tools 15 SP1 kernel-obs-build 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Development Tools 15 SP1 kernel-source 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Development Tools 15 SP1 kernel-syms 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Development Tools 15 SP2 kernel-docs 0 5.3.18-24.9.2
SUSE:Linux Enterprise Module for Development Tools 15 SP2 kernel-obs-build 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Development Tools 15 SP2 kernel-preempt 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Development Tools 15 SP2 kernel-source 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Development Tools 15 SP2 kernel-syms 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Legacy 15 SP1 kernel-default 0 4.12.14-197.48.1
SUSE:Linux Enterprise Module for Legacy 15 SP2 kernel-default 0 5.3.18-24.9.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 kernel-azure 0 4.12.14-8.38.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 kernel-source-azure 0 4.12.14-8.38.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 kernel-syms-azure 0 4.12.14-8.38.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP2 kernel-azure 0 5.3.18-18.5.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP2 kernel-source-azure 0 5.3.18-18.5.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP2 kernel-syms-azure 0 5.3.18-18.5.1
SUSE:Linux Enterprise Real Time 12 SP5 kernel-rt 0 4.12.14-10.13.1
SUSE:Linux Enterprise Real Time 12 SP5 kernel-rt_debug 0 4.12.14-10.13.1
SUSE:Linux Enterprise Real Time 12 SP5 kernel-source-rt 0 4.12.14-10.13.1
SUSE:Linux Enterprise Real Time 12 SP5 kernel-syms-rt 0 4.12.14-10.13.1
SUSE:Linux Enterprise Server 12 SP2-BCL kernel-default 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-BCL kernel-source 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-BCL kernel-syms 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-LTSS kernel-default 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-LTSS kernel-source 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-LTSS kernel-syms 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server 12 SP2-LTSS kgraft-patch-SLE12-SP2_Update_36 0 1-3.3.1
SUSE:Linux Enterprise Server 12 SP3-BCL kernel-default 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-BCL kernel-source 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-BCL kernel-syms 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-LTSS kernel-default 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-LTSS kernel-source 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-LTSS kernel-syms 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server 12 SP3-LTSS kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:Linux Enterprise Server 12 SP4-LTSS kernel-default 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server 12 SP4-LTSS kernel-source 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server 12 SP4-LTSS kernel-syms 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server 12 SP5 kernel-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server 12 SP5 kernel-default 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server 12 SP5 kernel-source 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server 12 SP5 kernel-source-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server 12 SP5 kernel-syms 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server 12 SP5 kernel-syms-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server 15-LTSS kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-docs 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-obs-build 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-source 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-syms 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-vanilla 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server 15-LTSS kernel-zfcpdump 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 kernel-default 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 kernel-source 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 kernel-syms 0 4.4.121-92.138.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 kgraft-patch-SLE12-SP2_Update_36 0 1-3.3.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 kernel-default 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 kernel-source 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 kernel-syms 0 4.4.180-94.127.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 kernel-default 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 kernel-source 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 kernel-syms 0 4.12.14-95.57.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-default 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-source 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-source-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-syms 0 4.12.14-122.29.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 kernel-syms-azure 0 4.12.14-16.22.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-default 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-docs 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-obs-build 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-source 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-syms 0 4.12.14-150.55.1
SUSE:Linux Enterprise Server for SAP Applications 15 kernel-vanilla 0 4.12.14-150.55.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 kernel-docs 0 4.12.14-122.29.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 kernel-obs-build 0 4.12.14-122.29.1
SUSE:Linux Enterprise Workstation Extension 12 SP5 kernel-default 0 4.12.14-122.29.1
SUSE:Linux Enterprise Workstation Extension 15 SP1 kernel-default 0 4.12.14-197.48.1
SUSE:Linux Enterprise Workstation Extension 15 SP2 kernel-default 0 5.3.18-24.9.1
SUSE:OpenStack Cloud 7 kernel-default 0 4.4.121-92.138.1
SUSE:OpenStack Cloud 7 kernel-source 0 4.4.121-92.138.1
SUSE:OpenStack Cloud 7 kernel-syms 0 4.4.121-92.138.1
SUSE:OpenStack Cloud 7 kgraft-patch-SLE12-SP2_Update_36 0 1-3.3.1
SUSE:OpenStack Cloud 8 kernel-default 0 4.4.180-94.127.1
SUSE:OpenStack Cloud 8 kernel-source 0 4.4.180-94.127.1
SUSE:OpenStack Cloud 8 kernel-syms 0 4.4.180-94.127.1
SUSE:OpenStack Cloud 8 kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:OpenStack Cloud 9 kernel-default 0 4.12.14-95.57.1
SUSE:OpenStack Cloud 9 kernel-source 0 4.12.14-95.57.1
SUSE:OpenStack Cloud 9 kernel-syms 0 4.12.14-95.57.1
SUSE:OpenStack Cloud Crowbar 8 kernel-default 0 4.4.180-94.127.1
SUSE:OpenStack Cloud Crowbar 8 kernel-source 0 4.4.180-94.127.1
SUSE:OpenStack Cloud Crowbar 8 kernel-syms 0 4.4.180-94.127.1
SUSE:OpenStack Cloud Crowbar 8 kgraft-patch-SLE12-SP3_Update_34 0 1-4.3.1
SUSE:OpenStack Cloud Crowbar 9 kernel-default 0 4.12.14-95.57.1
SUSE:OpenStack Cloud Crowbar 9 kernel-source 0 4.12.14-95.57.1
SUSE:OpenStack Cloud Crowbar 9 kernel-syms 0 4.12.14-95.57.1
SUSE:Real Time Module 15 SP1 kernel-rt 0 4.12.14-14.28.1
SUSE:Real Time Module 15 SP1 kernel-rt_debug 0 4.12.14-14.28.1
SUSE:Real Time Module 15 SP1 kernel-source-rt 0 4.12.14-14.28.1
SUSE:Real Time Module 15 SP1 kernel-syms-rt 0 4.12.14-14.28.1
Ubuntu:14.04:LTS linux 0 3.11.0-12.19
Ubuntu:14.04:LTS linux-aws 0 4.4.0-1076.80
Ubuntu:14.04:LTS linux-azure 0 4.15.0-1093.103~14.04.1
Ubuntu:14.04:LTS linux-lts-xenial 0 4.4.0-187.217~14.04.1
Ubuntu:16.04:LTS linux 0 4.4.0-187.217
Ubuntu:16.04:LTS linux-aws 0 4.4.0-1112.124
Ubuntu:16.04:LTS linux-aws-hwe 0 4.15.0-1080.84~16.04.1
Ubuntu:16.04:LTS linux-azure 0 4.15.0-1093.103~16.04.1
Ubuntu:16.04:LTS linux-gcp 0 4.15.0-1081.92~16.04.1
Ubuntu:16.04:LTS linux-hwe 0 4.15.0-115.116~16.04.1
Ubuntu:16.04:LTS linux-hwe-edge 0 No fix
Ubuntu:16.04:LTS linux-kvm 0 4.4.0-1078.85
Ubuntu:16.04:LTS linux-oracle 0 4.15.0-1051.55~16.04.1
Ubuntu:16.04:LTS linux-raspi2 0 4.4.0-1137.146
Ubuntu:16.04:LTS linux-snapdragon 0 4.4.0-1141.149
Ubuntu:18.04:LTS linux 0 4.15.0-115.116
Ubuntu:18.04:LTS linux-aws 0 4.15.0-1080.84
Ubuntu:18.04:LTS linux-aws-5.0 0 No fix
Ubuntu:18.04:LTS linux-aws-5.3 0 5.3.0-1033.35
Ubuntu:18.04:LTS linux-aws-5.4 0 5.4.0-1022.22~18.04.1
Ubuntu:18.04:LTS linux-azure 0 No fix
Ubuntu:18.04:LTS linux-azure-4.15 0 4.15.0-1093.103
Ubuntu:18.04:LTS linux-azure-5.3 0 5.3.0-1035.36
Ubuntu:18.04:LTS linux-azure-5.4 0 5.4.0-1023.23~18.04.1
Ubuntu:18.04:LTS linux-azure-edge 0 No fix
Ubuntu:18.04:LTS linux-gcp 0 No fix
Ubuntu:18.04:LTS linux-gcp-4.15 0 4.15.0-1081.92
Ubuntu:18.04:LTS linux-gcp-5.3 0 No fix
Ubuntu:18.04:LTS linux-gcp-5.4 0 5.4.0-1022.22~18.04.1
Ubuntu:18.04:LTS linux-gcp-edge 0 No fix
Ubuntu:18.04:LTS linux-gke-4.15 0 4.15.0-1067.70
Ubuntu:18.04:LTS linux-gke-5.0 0 5.0.0-1046.47
Ubuntu:18.04:LTS linux-gke-5.3 0 5.3.0-1033.35
Ubuntu:18.04:LTS linux-gke-5.4 0 5.4.0-1025.25~18.04.1
Ubuntu:18.04:LTS linux-gkeop-5.4 0 5.4.0-1001.1
Ubuntu:18.04:LTS linux-hwe 0 5.3.0-65.59
Ubuntu:18.04:LTS linux-hwe-5.4 0 5.4.0-45.49~18.04.2
Ubuntu:18.04:LTS linux-hwe-edge 0 No fix
Ubuntu:18.04:LTS linux-ibm-5.4 0 5.4.0-1010.11~18.04.2
Ubuntu:18.04:LTS linux-kvm 0 4.15.0-1072.73
Ubuntu:18.04:LTS linux-oem 0 4.15.0-1094.104
Ubuntu:18.04:LTS linux-oem-osp1 0 5.0.0-1067.72
Ubuntu:18.04:LTS linux-oracle 0 4.15.0-1051.55
Ubuntu:18.04:LTS linux-oracle-5.0 0 No fix
Ubuntu:18.04:LTS linux-oracle-5.3 0 No fix
Ubuntu:18.04:LTS linux-oracle-5.4 0 5.4.0-1022.22~18.04.1
Ubuntu:18.04:LTS linux-raspi-5.4 0 5.4.0-1016.17~18.04.1
Ubuntu:18.04:LTS linux-raspi2 0 4.15.0-1068.72
Ubuntu:18.04:LTS linux-raspi2-5.3 0 5.3.0-1032.34
Ubuntu:18.04:LTS linux-snapdragon 0 4.15.0-1084.92

Related vulnerabilities