Patch "USB: cdc-acm: more sanity checking" has been added to the 4.4-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
USB: cdc-acm: more sanity checking
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
usb-cdc-acm-more-sanity-checking.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
8835ba4a39cf53f705417b3b3a94eb067673f2c9Mon Sep 17 00:00:00 2001
From: Oliver Neukum <[email protected]>
Date: Tue, 15 Mar 2016 10:14:04 +0100
Subject: USB: cdc-acm: more sanity checking
From: Oliver Neukum <[email protected]>
commit 8835ba4a39cf53f705417b3b3a94eb067673f2c9 upstream.
An attack has become available which pretends to be a quirky device circumventing normal sanity checks and crashes the kernel by an insufficient number of interfaces. This patch adds a check to the code path for quirky devices.
--- drivers/usb/class/cdc-acm.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/usb/class/cdc-acm.c +3 -0
@@ -1114,6 +1114,9 @@ static int acm_probe(struct usb_interfacif (quirks ==NO_UNION_NORMAL ) { data_interface =usb_ifnum_to_if (usb_dev,1 ); control_interface =usb_ifnum_to_if (usb_dev,0 ); +/* we would crash */ +if (!data_interface || !control_interface) +return -ENODEV ; goto skip_normal_probe; }
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/usb-cdc-acm-more-sanity-checking.patch queue-4.4/usb-mct_u232-add-sanity-checking-in-probe.patch queue-4.4/usb-digi_acceleport-do-sanity-checking-for-the-number-of-ports.patch queue-4.4/usb-cypress_m8-add-endpoint-sanity-check.patch queue-4.4/usb-retry-reset-if-a-device-times-out.patch queue-4.4/usb-hub-fix-a-typo-in-hub_port_init-leading-to-wrong-logic.patch queue-4.4/usb-usb_driver_claim_interface-add-sanity-checking.patch