Cloudanix VulnDB

CVE-2015-7566

Medium · 4.6

CVSS

4.6

EPSS

1.8%

Published

Feb 8, 2016

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

Anyone who can plug a specially made USB stick into a Linux computer can make that computer crash.

Exploit Available
Exploitation
Physical Access
Attacker needs
Physical Access
Complexity
Trivial
Impact
Denial Of Service
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw triggers a NULL pointer dereference in clie_5_attach when a USB device lacking a bulk-out endpoint is attached, causing a kernel crash.

Why it matters to the business

Systems can be crashed by anyone with brief physical access to a USB port, leading to unplanned downtime on servers, workstations, or embedded devices running affected kernels.

How an attack unfolds

An attacker with physical access crafts or selects a USB device that omits the bulk-out endpoint, inserts it into the target system, and the visor driver’s clie_5_attach function dereferences a NULL pointer, crashing the kernel. Public exploit code has been available for years.

How to fix it

Upgrade the Linux kernel to a version later than 4.4.1 that contains the fix for the visor driver; restrict physical USB access via port locks or policy where upgrades are delayed.

How to confirm the fix worked

Verify the running kernel version is newer than 4.4.1 and confirm the visor.c driver no longer contains the vulnerable clie_5_attach logic; test insertion of a non-bulk-out USB device in a lab environment and ensure no crash occurs.

Typical attack path

  1. Obtain brief physical access to a target machine’s USB ports
  2. Prepare or obtain a USB device missing a bulk-out endpoint
  3. Insert the device to trigger clie_5_attach
  4. Observe kernel panic and system reboot or halt

How to detect it

Review kernel logs (dmesg, /var/log/kern.log) for NULL pointer dereference panics occurring immediately after USB device insertion events; correlate with USB device addition timestamps in syslog or udev logs.

  • clie_5_attach
  • visor.c
  • usb serial NULL pointer dereference
  • usb 1-*: USB disconnect, device number

What your security team should do

  • Apply the kernel update immediately on all exposed systems
  • Disable unnecessary USB serial drivers via kernel configuration or blacklisting where feasible
  • Enforce physical security controls on USB ports for high-value assets
  • Monitor for kernel oops or panic events referencing visor or usb-serial

The record

The clie_5_attach function in drivers/usb/serial/visor.c in the Linux kernel through 4.4.1 allows physically proximate attackers to cause a denial of service (NULL pointer dereference and system crash) or possibly have unspecified other impact by inserting a USB device that lacks a bulk-out endpoint.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 4.3.3-6
Debian:12 linux 0 4.3.3-6
Debian:13 linux 0 4.3.3-6
Debian:6.0 linux-2.6 0 2.6.32-48squeeze19
Debian:8 linux 0 3.16.7-ckt20-1+deb8u3
SUSE:Linux Enterprise Real Time 11 SP4 kernel-rt 0 3.0.101.rt130-54.1
SUSE:Linux Enterprise Real Time 11 SP4 kernel-rt_trace 0 3.0.101.rt130-54.1
SUSE:Linux Enterprise Real Time 11 SP4 kernel-source-rt 0 3.0.101.rt130-54.1
SUSE:Linux Enterprise Real Time 11 SP4 kernel-syms-rt 0 3.0.101.rt130-54.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-compute 0 3.12.58-14.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-compute_debug 0 3.12.58-14.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-rt 0 3.12.58-14.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-rt_debug 0 3.12.58-14.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-source-rt 0 3.12.58-14.1
SUSE:Linux Enterprise Real Time 12 SP1 kernel-syms-rt 0 3.12.58-14.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-default 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-ec2 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-pae 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-source 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-syms 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-trace 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS kernel-xen 0 3.0.101-0.7.40.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-bigsmp 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-default 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-ec2 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-pae 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-source 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-syms 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-trace 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP3-LTSS kernel-xen 0 3.0.101-0.47.79.1
SUSE:Linux Enterprise Server 11 SP4 kernel-default 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-ec2 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-pae 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-ppc64 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-source 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-syms 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-trace 0 3.0.101-77.1
SUSE:Linux Enterprise Server 11 SP4 kernel-xen 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-default 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-ec2 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-pae 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-ppc64 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-source 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-syms 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-trace 0 3.0.101-77.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 kernel-xen 0 3.0.101-77.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 kernel-docs 0 3.0.101-77.2
SUSE:Manager 2.1 kernel-bigsmp 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-default 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-ec2 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-source 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-syms 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-trace 0 3.0.101-0.47.79.1
SUSE:Manager 2.1 kernel-xen 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-bigsmp 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-default 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-ec2 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-source 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-syms 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-trace 0 3.0.101-0.47.79.1
SUSE:Manager Proxy 2.1 kernel-xen 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-bigsmp 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-default 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-ec2 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-source 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-syms 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-trace 0 3.0.101-0.47.79.1
SUSE:OpenStack Cloud 5 kernel-xen 0 3.0.101-0.47.79.1
Ubuntu:14.04:LTS linux 0 3.13.0-83.127
Ubuntu:14.04:LTS linux-aws 0 4.4.0-1002.2
Ubuntu:14.04:LTS linux-lts-utopic 0 3.16.0-69.89~14.04.1
Ubuntu:14.04:LTS linux-lts-vivid 0 3.19.0-56.62~14.04.1
Ubuntu:14.04:LTS linux-lts-wily 0 4.2.0-34.39~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.4.0-7.22
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.4.0-1003.4
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