Cloudanix VulnDB

CVE-2014-3181

None

CVSS

—

EPSS

0.8%

Published

Sep 28, 2014

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in how certain Linux systems handle data from a specific type of mouse can let someone who plugs in a bad device crash the computer or take control of it.

Exploitation
Physical Access
Attacker needs
Physical Access
Complexity
Moderate
Impact
Remote Code Execution
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Multiple stack-based buffer overflows in the magicmouse_raw_event function allow memory corruption from excessive EHCI or XHCI data supplied by a crafted HID device, resulting in denial of service or arbitrary code execution.

Why it matters to the business

Affected Linux systems risk sudden crashes or full compromise when a malicious USB device is connected, potentially causing downtime or unauthorized access with physical proximity.

How an attack unfolds

An attacker with physical access attaches a crafted Magic Mouse-emulating device that floods the driver with oversized event data via EHCI or XHCI, triggering the buffer overflow to crash the system or run attacker code.

How to fix it

Upgrade the Linux kernel to a version containing the fix for hid-magicmouse.c. For the listed Ubuntu packages apply the following fixed versions: webkitgtk (Ubuntu:14.04:LTS) 2.4.8-1ubuntu1~ubuntu14.04.1 and webkitgtk (Ubuntu:16.04:LTS) 2.4.9-2ubuntu2.

How to confirm the fix worked

Verify the installed kernel or package version matches or exceeds the listed fixed versions and confirm the magicmouse_raw_event function no longer accepts unbounded data.

Typical attack path

  1. Obtain or fabricate a USB device that emulates a Magic Mouse
  2. Connect the device to a vulnerable Linux system
  3. Send large volumes of EHCI or XHCI event data
  4. Trigger the overflow in magicmouse_raw_event to achieve crash or code execution

How to detect it

Review system logs for unexpected crashes in the HID subsystem around the time of USB device connections; examine dmesg or kernel logs for stack overflow or magicmouse-related faults.

What your security team should do

  • Apply the kernel or package updates immediately on all affected systems
  • Disable the magicmouse HID driver if the hardware is not required
  • Restrict physical USB access where feasible

The record

Multiple stack-based buffer overflows in the magicmouse_raw_event function in drivers/hid/hid-magicmouse.c in the Magic Mouse HID driver in the Linux kernel through 3.16.3 allow physically proximate attackers to cause a denial of service (system crash) or possibly execute arbitrary code via a crafted device that provides a large amount of (1) EHCI or (2) XHCI data associated with an event.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 3.16.5-1
Debian:12 linux 0 3.16.5-1
Debian:13 linux 0 3.16.5-1
Red Hat:enterprise_linux:7::client kernel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-abi-whitelists 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-bootwrapper 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debug 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debug-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debug-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-ppc64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-s390x 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-debuginfo-common-x86_64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-doc 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-headers 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-kdump-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-tools 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client kernel-tools-libs-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client python-perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::client python-perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-abi-whitelists 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-bootwrapper 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debug-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-ppc64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-s390x 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-debuginfo-common-x86_64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-doc 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-headers 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-kdump-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode kernel-tools-libs-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode python-perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::computenode python-perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-abi-whitelists 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-bootwrapper 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debug 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debug-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debug-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-ppc64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-s390x 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-debuginfo-common-x86_64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-doc 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-headers 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-kdump-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-tools 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server kernel-tools-libs-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server python-perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::server python-perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-abi-whitelists 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-bootwrapper 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debug-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-ppc64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-s390x 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-debuginfo-common-x86_64 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-doc 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-headers 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-kdump-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation kernel-tools-libs-devel 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation python-perf 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_linux:7::workstation python-perf-debuginfo 0 0:3.10.0-123.13.1.el7
Red Hat:enterprise_mrg:2:server:el6 kernel-rt 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-debug 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-debug-debuginfo 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-debug-devel 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-debuginfo 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-debuginfo-common-x86_64 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-devel 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-doc 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-firmware 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-trace 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-trace-debuginfo 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-trace-devel 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-vanilla 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-vanilla-debuginfo 0 0:3.10.33-rt32.51.el6rt
Red Hat:enterprise_mrg:2:server:el6 kernel-rt-vanilla-devel 0 0:3.10.33-rt32.51.el6rt
Ubuntu:14.04:LTS linux 0 3.13.0-37.64
Ubuntu:14.04:LTS linux-aws 0 4.4.0-1002.2
Ubuntu:14.04:LTS linux-lts-utopic 0 3.16.0-25.33~14.04.2
Ubuntu:14.04:LTS linux-lts-vivid 0 3.19.0-18.18~14.04.1
Ubuntu:14.04:LTS linux-lts-wily 0 4.2.0-18.22~14.04.1
Ubuntu:14.04:LTS linux-lts-xenial 0 4.4.0-13.29~14.04.1
Ubuntu:16.04:LTS linux 0 4.2.0-16.19
Ubuntu:16.04:LTS linux-aws 0 4.4.0-1001.10
Ubuntu:16.04:LTS linux-gke 0 4.4.0-1003.3
Ubuntu:16.04:LTS linux-hwe 0 4.8.0-36.36~16.04.1
Ubuntu:16.04:LTS linux-raspi2 0 4.2.0-1013.19
Ubuntu:16.04:LTS linux-snapdragon 0 4.4.0-1012.12
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