lkml.org 
[lkml]   [2010]   [Sep]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
Subject[PATCH] drivers/net/cxgb3/cxgb3_main.c: prevent reading uninitialized stack memory
From
The CHELSIO_GET_QSET_NUM device ioctl allows unprivileged users to
read 4 bytes of uninitialized stack memory, because the "addr" member
of the ch_reg struct declared on the stack in cxgb_extension_ioctl()
is not altered or zeroed before being copied back to the user. This
patch takes care of it.

Signed-off-by: Dan Rosenberg <dan.j.rosenberg@gmail.com>

--- linux-2.6.35.4.orig/drivers/net/cxgb3/cxgb3_main.c 2010-09-11
19:12:43.000000000 -0400
+++ linux-2.6.35.4/drivers/net/cxgb3/cxgb3_main.c 2010-09-11
19:18:42.000000000 -0400
@@ -2296,6 +2296,8 @@ static int cxgb_extension_ioctl(struct n
case CHELSIO_GET_QSET_NUM:{
struct ch_reg edata;

+ memset(&edata, 0, sizeof(struct ch_reg));
+
edata.cmd = CHELSIO_GET_QSET_NUM;
edata.val = pi->nqsets;
if (copy_to_user(useraddr, &edata, sizeof(edata)))

\
 
 \ /
  Last update: 2010-09-12 01:49    [from the cache]
©2003-2011 Jasper Spaans