PT-2014-1007 · Linux+5 · Linux Kernel+5

Published

2014-05-09

·

Updated

2023-10-03

·

CVE-2014-1737

CVSS v2.0

7.2

High

VectorAV:L/AC:L/Au:N/C:C/I:C/A:C
Name of the Vulnerable Software and Affected Versions Linux kernel versions through 3.14.3
Description The issue is related to the raw cmd copyin function in drivers/block/floppy.c, which does not properly handle error conditions during processing of an FDRAWCMD ioctl call. This allows local users to trigger kfree operations and gain privileges by leveraging write access to a /dev/fd device. The problem occurs when the function kmallocs space for a floppy raw cmd structure and stores the resulting allocation in the "rcmd" pointer argument. If the copy from user operation fails, an early EFAULT return is taken, but the pointer to the non-/partially-initialized floppy raw cmd structure has already been returned via the "rcmd" pointer. A malicious user can send a FDRAWCMD ioctl with a raw command argument structure that has some bytes inaccessible, causing the copy from user to fail but allowing raw cmd free to attempt to process the floppy raw cmd as if it had been fully initialized.
Recommendations For Linux kernel versions through 3.14.3, consider disabling the raw cmd copyin function or restricting access to the /dev/fd device to minimize the risk of exploitation until a patch is available. As a temporary workaround, avoid using the FDRAWCMD ioctl call with raw command argument structures that have inaccessible bytes. Restrict access to the vulnerable module drivers/block/floppy.c to minimize the risk of exploitation.

Exploit

Fix

Improper Check for Exceptional Conditions

Weakness Enumeration

Related Identifiers

ALT-PU-2014-1604
ALT-PU-2014-1605
ALT-PU-2014-1634
ALT-PU-2014-1802
ALT-PU-2014-1820
ALT-PU-2014-2064
BDU:2014-00053
BDU:2014-00110
BDU:2014-00334
CESA-2014_0771
CVE-2014-1737
DSA-2926-1
DSA-2928-1
MGASA-2014-0225
MGASA-2014-0226
MGASA-2014-0227
MGASA-2014-0228
MGASA-2014-0229
MGASA-2014-0234
MGASA-2014-0235
MGASA-2014-0236
MGASA-2014-0237
MGASA-2014-0238
OPENSUSE-SU-2014_0677-1
OPENSUSE-SU-2014_0678-1
RHSA-2014:0557
RHSA-2014:0740
RHSA-2014:0771
RHSA-2014:0772
RHSA-2014:0786
RHSA-2014:0800
RHSA-2014:0801
RHSA-2014:0900
RHSA-2014_0740
RHSA-2014_0771
RHSA-2014_0786
SUSE-RU-2015:0621-1
SUSE-SU-2015:0481-1
SUSE-SU-2015:0581-1
SUSE-SU-2015:0652-1
SUSE-SU-2015:0736-1
SUSE-SU-2015:1174-1
SUSE-SU-2015:1376-1
USN-2219-1
USN-2220-1
USN-2221-1
USN-2223-1
USN-2224-1
USN-2225-1
USN-2226-1
USN-2227-1
USN-2228-1
USN-2260-1

Affected Products

Alt Linux
Centos
Linux Kernel
Red Hat
Suse
Ubuntu