<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/hid, branch v3.11.2</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.11.2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.11.2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2013-09-27T00:21:47Z</updated>
<entry>
<title>HID: usbhid: quirk for N-Trig DuoSense Touch Screen</title>
<updated>2013-09-27T00:21:47Z</updated>
<author>
<name>Vasily Titskiy</name>
<email>qehgt0@gmail.com</email>
</author>
<published>2013-08-30T22:25:04Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c2bb0ac102c4d80963c26a68aabd78faa173652e'/>
<id>urn:sha1:c2bb0ac102c4d80963c26a68aabd78faa173652e</id>
<content type='text'>
commit 9e0bf92c223dabe0789714f8f85f6e26f8f9cda4 upstream.

The DuoSense touchscreen device causes a 10 second timeout. This fix
removes the delay.

Signed-off-by: Vasily Titskiy &lt;qehgt0@gmail.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: check for NULL field when setting values</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-08-28T20:32:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b78f205047ea6dadfe560b696d99e374d0c497c0'/>
<id>urn:sha1:b78f205047ea6dadfe560b696d99e374d0c497c0</id>
<content type='text'>
commit be67b68d52fa28b9b721c47bb42068f0c1214855 upstream.

Defensively check that the field to be worked on is not NULL.

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: hidraw: correctly deallocate memory on device disconnect</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Manoj Chourasia</name>
<email>mchourasia@nvidia.com</email>
</author>
<published>2013-07-22T10:03:13Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=11c32876ee1e04043f251b4ffadae2e639f5bfdf'/>
<id>urn:sha1:11c32876ee1e04043f251b4ffadae2e639f5bfdf</id>
<content type='text'>
commit 212a871a3934beccf43431608c27ed2e05a476ec upstream.

This changes puts the commit 4fe9f8e203f back in place
with the fixes for slab corruption because of the commit.

When a device is unplugged, wait for all processes that
have opened the device to close before deallocating the device.

This commit was solving kernel crash because of the corruption in
rb tree of vmalloc. The rootcause was the device data pointer was
geting excessed after the memory associated with hidraw was freed.

The commit 4fe9f8e203f was buggy as it was also freeing the hidraw
first and then calling delete operation on the list associated with
that hidraw leading to slab corruption.

Signed-off-by: Manoj Chourasia &lt;mchourasia@nvidia.com&gt;
Tested-by: Peter Wu &lt;lekensteyn@gmail.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: battery: don't do DMA from stack</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Jiri Kosina</name>
<email>jkosina@suse.cz</email>
</author>
<published>2013-09-02T11:43:00Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=f0c298af1d7ac27bef191a8593c14244341efb01'/>
<id>urn:sha1:f0c298af1d7ac27bef191a8593c14244341efb01</id>
<content type='text'>
commit 6c2794a2984f4c17a58117a68703cc7640f01c5a upstream.

Instead of using data from stack for DMA in hidinput_get_battery_property(),
allocate the buffer dynamically.

Reported-by: Richard Ryniker &lt;ryniker@alum.mit.edu&gt;
Reported-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: picolcd: Prevent NULL pointer dereference on _remove()</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Bruno Prémont</name>
<email>bonbons@linux-vserver.org</email>
</author>
<published>2013-08-31T12:07:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=6794022829cf3bea51a4dc9c4e1ca94a42aaa677'/>
<id>urn:sha1:6794022829cf3bea51a4dc9c4e1ca94a42aaa677</id>
<content type='text'>
commit 1cde501bb4655e98fb832194beb88ac73be5a05d upstream.

When picolcd is switched into bootloader mode (for FW flashing) make
sure not to try to dereference NULL-pointers of feature-devices during
unplug/unbind.

This fixes following BUG:
  BUG: unable to handle kernel NULL pointer dereference at 00000298
  IP: [&lt;f811f56b&gt;] picolcd_exit_framebuffer+0x1b/0x80 [hid_picolcd]
  *pde = 00000000
  Oops: 0000 [#1]
  Modules linked in: hid_picolcd syscopyarea sysfillrect sysimgblt fb_sys_fops
  CPU: 0 PID: 15 Comm: khubd Not tainted 3.11.0-rc7-00002-g50d62d4 #2
  EIP: 0060:[&lt;f811f56b&gt;] EFLAGS: 00010292 CPU: 0
  EIP is at picolcd_exit_framebuffer+0x1b/0x80 [hid_picolcd]
  Call Trace:
   [&lt;f811d1ab&gt;] picolcd_remove+0xcb/0x120 [hid_picolcd]
   [&lt;c1469b09&gt;] hid_device_remove+0x59/0xc0
   [&lt;c13464ca&gt;] __device_release_driver+0x5a/0xb0
   [&lt;c134653f&gt;] device_release_driver+0x1f/0x30
   [&lt;c134603d&gt;] bus_remove_device+0x9d/0xd0
   [&lt;c13439a5&gt;] device_del+0xd5/0x150
   [&lt;c14696a4&gt;] hid_destroy_device+0x24/0x60
   [&lt;c1474cbb&gt;] usbhid_disconnect+0x1b/0x40
   ...

Signed-off-by: Bruno Prémont &lt;bonbons@linux-vserver.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: ntrig: validate feature report details</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-08-28T20:31:28Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fced5cedf4b0b2bc79413ac3c9498bbe2f98f7ba'/>
<id>urn:sha1:fced5cedf4b0b2bc79413ac3c9498bbe2f98f7ba</id>
<content type='text'>
commit 875b4e3763dbc941f15143dd1a18d10bb0be303b upstream.

A HID device could send a malicious feature report that would cause the
ntrig HID driver to trigger a NULL dereference during initialization:

[57383.031190] usb 3-1: New USB device found, idVendor=1b96, idProduct=0001
...
[57383.315193] BUG: unable to handle kernel NULL pointer dereference at 0000000000000030
[57383.315308] IP: [&lt;ffffffffa08102de&gt;] ntrig_probe+0x25e/0x420 [hid_ntrig]

CVE-2013-2896

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Rafi Rubin &lt;rafi@seas.upenn.edu&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: picolcd_core: validate output report details</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-08-28T20:31:52Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b6381b665759c46c1d0676b934a6129a20df7eef'/>
<id>urn:sha1:b6381b665759c46c1d0676b934a6129a20df7eef</id>
<content type='text'>
commit 1e87a2456b0227ca4ab881e19a11bb99d164e792 upstream.

A HID device could send a malicious output report that would cause the
picolcd HID driver to trigger a NULL dereference during attr file writing.

[jkosina@suse.cz: changed

	report-&gt;maxfield &lt; 1

to

	report-&gt;maxfield != 1

as suggested by Bruno].

CVE-2013-2899

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Reviewed-by: Bruno Prémont &lt;bonbons@linux-vserver.org&gt;
Acked-by: Bruno Prémont &lt;bonbons@linux-vserver.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: validate HID report id size</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-08-28T20:29:55Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=eedeac300ac807db2f7b035b93b4644e894656d7'/>
<id>urn:sha1:eedeac300ac807db2f7b035b93b4644e894656d7</id>
<content type='text'>
commit 43622021d2e2b82ea03d883926605bdd0525e1d1 upstream.

The "Report ID" field of a HID report is used to build indexes of
reports. The kernel's index of these is limited to 256 entries, so any
malicious device that sets a Report ID greater than 255 will trigger
memory corruption on the host:

[ 1347.156239] BUG: unable to handle kernel paging request at ffff88094958a878
[ 1347.156261] IP: [&lt;ffffffff813e4da0&gt;] hid_register_report+0x2a/0x8b

CVE-2013-2888

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: sensor-hub: validate feature report details</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-08-28T20:31:44Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0c268dc93631a821dc5cc323e77b8be51bc58ea5'/>
<id>urn:sha1:0c268dc93631a821dc5cc323e77b8be51bc58ea5</id>
<content type='text'>
commit 9e8910257397372633e74b333ef891f20c800ee4 upstream.

A HID device could send a malicious feature report that would cause the
sensor-hub HID driver to read past the end of heap allocation, leaking
kernel memory contents to the caller.

CVE-2013-2898

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Reviewed-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>HID: Fix Speedlink VAD Cezanne support for some devices</title>
<updated>2013-09-27T00:21:46Z</updated>
<author>
<name>Stefan Kriwanek</name>
<email>dev@stefankriwanek.de</email>
</author>
<published>2013-08-25T08:46:13Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2a767434dc7cd4cc3e188c20ba53a2f4ecd3f413'/>
<id>urn:sha1:2a767434dc7cd4cc3e188c20ba53a2f4ecd3f413</id>
<content type='text'>
commit 06bb5219118fb098f4b0c7dcb484b28a52bf1c14 upstream.

Some devices of the "Speedlink VAD Cezanne" model need more aggressive fixing
than already done.

I made sure through testing that this patch would not interfere with the proper
working of a device that is bug-free. (The driver drops EV_REL events with
abs(val) &gt;= 256, which are not achievable even on the highest laser resolution
hardware setting.)

Signed-off-by: Stefan Kriwanek &lt;mail@stefankriwanek.de&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
