Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Wed, 17 Feb 2010 11:29:46 +0100
From: Marcus Meissner <meissner@...e.de>
To: OSS Security List <oss-security@...ts.openwall.com>
Subject: CVE request: kernel information leak via userspace USB interface

Hi,

While programming a USB device using libusb I found that a usb read from
the device returned data it should not.

Looking into the code showed that in USB commands that fail during
device communication (with e.g. USB timeouts) return the transfer buffer
unmodified back to userspace.

This transfer buffer is allocated with kmalloc before and not initialized,
so userspace gets to see recently freed data of the kernel.

Greg, Linus and Alan produced a fix that was commited to mainline tonight:

commit d4a4683ca054ed9917dfc9e3ff0f7ecf74ad90d6
(full commit attached to the mail)

The issue seems to have been in the kernel for the whole 2.6 series (oldest kernel
I looked at was 2.6.5, I tested down to 2.6.25).

Access to USB userspace devices either requires root access or desktop user access
via udev/hal ACLs on non-mass-storage Digital Cameras or Media Players. (So the
desktop user needs to plugin such a ACL getting device before being able 
to read the memory).

Ciao, Marcus

View attachment "foo.pat" of type "text/plain" (1688 bytes)

Powered by blists - more mailing lists

Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.