RE: [PATCH] scsi: hpsa: fix information leak to userland

From: Miller, Mike (OS Dev)
Date: Wed Oct 27 2010 - 11:56:28 EST




> -----Original Message-----
> From: Vasiliy Kulikov [mailto:segooon@xxxxxxxxx]
> Sent: Wednesday, October 27, 2010 10:41 AM
> To: kernel-janitors@xxxxxxxxxxxxxxx
> Cc: Stephen M. Cameron; James E.J. Bottomley; Miller, Mike (OS Dev);
> ISS StorageDev; linux-scsi@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH] scsi: hpsa: fix information leak to userland
>
> Structure IOCTL_Command_struct is copied to userland with
> some padding fields at the end of the struct unitialized.
> It leads to leaking of contents of kernel stack memory.
>
> Signed-off-by: Vasiliy Kulikov <segooon@xxxxxxxxx>
> ---
> Compile tested.
>
> drivers/scsi/hpsa.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
> index c5d0606..641a38c 100644
> --- a/drivers/scsi/hpsa.c
> +++ b/drivers/scsi/hpsa.c
> @@ -2298,6 +2298,7 @@ static int hpsa_ioctl32_passthru(struct
> scsi_device *dev, int cmd, void *arg)
> int err;
> u32 cp;
>
> + memset(&arg64, 0, sizeof(arg64));
> err = 0;
> err |= copy_from_user(&arg64.LUN_info, &arg32->LUN_info,
> sizeof(arg64.LUN_info));
> @@ -2334,6 +2335,7 @@ static int hpsa_ioctl32_big_passthru(struct
> scsi_device *dev,
> int err;
> u32 cp;
>
> + memset(&arg64, 0, sizeof(arg64));
> err = 0;
> err |= copy_from_user(&arg64.LUN_info, &arg32->LUN_info,
> sizeof(arg64.LUN_info));
> --
> 1.7.0.4

Acked-by: Mike Milelr <mike.miller@xxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/