From: Vasiliy Kulikov Date: Sat, 6 Nov 2010 14:41:35 +0000 (+0300) Subject: usb: misc: sisusbvga: fix information leak to userland X-Git-Tag: v2.6.34.9~135 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0eea165a9835343972dcd47b1078da0f7b140d0f;p=thirdparty%2Fkernel%2Fstable.git usb: misc: sisusbvga: fix information leak to userland commit 5dc92cf1d0b4b0debbd2e333b83f9746c103533d upstream. Structure sisusb_info is copied to userland with "sisusb_reserved" field uninitialized. It leads to leaking of contents of kernel stack memory. Signed-off-by: Vasiliy Kulikov Signed-off-by: Greg Kroah-Hartman Signed-off-by: Paul Gortmaker --- diff --git a/drivers/usb/misc/sisusbvga/sisusb.c b/drivers/usb/misc/sisusbvga/sisusb.c index cf13923ef5e16..ba0a0bb46701c 100644 --- a/drivers/usb/misc/sisusbvga/sisusb.c +++ b/drivers/usb/misc/sisusbvga/sisusb.c @@ -3018,6 +3018,7 @@ sisusb_ioctl(struct file *file, unsigned int cmd, unsigned long arg) #else x.sisusb_conactive = 0; #endif + memset(x.sisusb_reserved, 0, sizeof(x.sisusb_reserved)); if (copy_to_user((void __user *)arg, &x, sizeof(x))) retval = -EFAULT;