Cloudanix VulnDB

CVE-2018-19985

Medium · 4.6

CVSS

4.6

EPSS

1.0%

Published

Mar 21, 2019

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem handling certain USB devices could let someone who plugs one in read private information stored in the computer's memory.

Exploitation
Physical Access
Attacker needs
Physical Access
Complexity
Low
Impact
Data Exposure
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Out-of-bounds read in the hso USB driver that indexes a small array with an attacker-controlled u8 value from a USB device, enabling arbitrary kernel memory reads.

Why it matters to the business

Physical attackers can disclose sensitive kernel memory contents on affected Linux systems, risking exposure of credentials or other confidential data; low likelihood given physical access requirement and lack of known exploitation.

How an attack unfolds

An attacker with physical access connects a malicious USB device that supplies a crafted if_num value; the hso_get_config_data function reads this value and performs an OOB array access, leaking kernel memory back to the device.

How to fix it

Upgrade the Linux kernel to a version containing the fix for this driver flaw (post-4.19.8); apply vendor patches for debian linux, netapp active iq performance analytics services, and netapp element software management node; restrict physical USB port access as a compensating control.

How to confirm the fix worked

Verify kernel source no longer contains the vulnerable hso_get_config_data indexing logic or confirm updated package versions; test with a crafted USB device in a lab environment to ensure OOB read no longer occurs.

Typical attack path

  1. Prepare a USB device capable of responding with arbitrary if_num values during enumeration
  2. Physically connect the device to a target system running an affected kernel
  3. Trigger hso_get_config_data via device initialization to perform the OOB read
  4. Exfiltrate leaked kernel memory contents through the USB interface

How to detect it

Review kernel logs for hso driver activity around USB insertion events; inspect dmesg or syslog for references to hso_get_config_data or anomalous USB configuration reads; correlate with physical access logs.

  • hso_get_config_data
  • drivers/net/usb/hso.c
  • if_num
  • hso usb device enumeration

What your security team should do

  • Apply kernel updates to all affected distributions immediately
  • Disable or physically secure USB ports on high-value systems
  • Monitor for new exploit maturity indicators given the 2019 disclosure date

The record

The function hso_get_config_data in drivers/net/usb/hso.c in the Linux kernel through 4.19.8 reads if_num from the USB device (as a u8) and uses it to index a small array, resulting in an object out-of-bounds (OOB) read that potentially allows arbitrary read in the kernel address space.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 4.19.13-1
Debian:12 linux 0 4.19.13-1
Debian:13 linux 0 4.19.13-1
Debian:14 linux 0 4.19.13-1
Debian:8 linux 0 3.16.64-1
Debian:8 linux-4.9 0 4.9.168-1~deb8u1
Mageia:6 kernel 0 4.14.100-1.mga6
Mageia:6 kernel-linus 0 4.14.100-1.mga6
Mageia:6 kernel-tmb 0 4.14.119-1.mga6
Mageia:6 kernel-userspace-headers 0 4.14.100-1.mga6
Mageia:6 kmod-vboxadditions 0 5.2.24-4.mga6
Mageia:6 kmod-virtualbox 0 5.2.24-4.mga6
Mageia:6 kmod-xtables-addons 0 2.13-78.mga6
Mageia:6 ndiswrapper 0 1.62-1.mga6
Mageia:6 wireguard-tools 0 0.0.20190123-1.mga6
Red Hat:enterprise_linux:7::client bpftool 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client bpftool-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-abi-whitelists 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-bootwrapper 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debug 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debug-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debug-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64le 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-s390x 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-x86_64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-doc 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-headers 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-kdump 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-kdump-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-kdump-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-tools 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-tools-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client python-perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::client python-perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode bpftool 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode bpftool-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-abi-whitelists 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-bootwrapper 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debug 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64le 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-s390x 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-x86_64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-doc 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-headers 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-tools 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode python-perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::computenode python-perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server bpftool 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server bpftool-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-abi-whitelists 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-bootwrapper 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debug 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debug-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debug-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64le 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-s390x 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-x86_64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-doc 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-headers 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-kdump 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-kdump-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-kdump-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-tools 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-tools-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server python-perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::server python-perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation bpftool 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation bpftool-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-abi-whitelists 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-bootwrapper 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debug 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64le 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-s390x 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-x86_64 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-doc 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-headers 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-tools 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs-devel 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation python-perf 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:7::workstation python-perf-debuginfo 0 0:3.10.0-1127.el7
Red Hat:enterprise_linux:8::baseos bpftool 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos bpftool-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-abi-whitelists 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-cross-headers 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debug-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-aarch64 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-ppc64le 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-s390x 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-debuginfo-common-x86_64 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-doc 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-headers 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-tools 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-libs 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-tools-libs-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos kernel-zfcpdump-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos perf 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos perf-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos python3-perf 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::baseos python3-perf-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb bpftool 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb bpftool-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-abi-whitelists 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-cross-headers 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debug-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-aarch64 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-ppc64le 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-s390x 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-debuginfo-common-x86_64 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-doc 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-headers 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-tools 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-tools-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-tools-libs 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-tools-libs-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-core 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-devel 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb kernel-zfcpdump-modules-extra 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb perf 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb perf-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb python3-perf 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::crb python3-perf-debuginfo 0 0:4.18.0-147.el8
Red Hat:enterprise_linux:8::nfv kernel-rt 0 0:4.18.0-147.rt24.93.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-core 0 0:4.18.0-147.rt24.93.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug 0 0:4.18.0-147.rt24.93.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-core 0 0:4.18.0-147.rt24.93.el8
Red Hat:enterprise_linux:8::nfv kernel-rt-debug-debuginfo 0 0:4.18.0-147.rt24.93.el8

Related vulnerabilities