From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruno =?UTF-8?B?UHLDqW1vbnQ=?= Subject: Re: [PATCH 13/14] HID: picolcd_core: validate output report details Date: Sat, 31 Aug 2013 14:04:15 +0200 Message-ID: <20130831140415.7837c1c9@neptune.home> References: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: Received: from smtprelay.restena.lu ([158.64.1.62]:36308 "EHLO smtprelay.restena.lu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752781Ab3HaMEV (ORCPT ); Sat, 31 Aug 2013 08:04:21 -0400 In-Reply-To: Sender: linux-input-owner@vger.kernel.org List-Id: linux-input@vger.kernel.org To: Jiri Kosina Cc: linux-input@vger.kernel.org, Kees Cook Hi Kees, Jiri, On Wed, 28 August 2013 Jiri Kosina wrote: > From: Kees Cook > > 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. > > CVE-2013-2899 > > Signed-off-by: Kees Cook > Cc: stable@kernel.org > --- > drivers/hid/hid-picolcd_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-picolcd_core.c b/drivers/hid/hid-picolcd_core.c > index b48092d..72bba1e 100644 > --- a/drivers/hid/hid-picolcd_core.c > +++ b/drivers/hid/hid-picolcd_core.c > @@ -290,7 +290,7 @@ static ssize_t picolcd_operation_mode_store(struct device *dev, > buf += 10; > cnt -= 10; > } > - if (!report) > + if (!report || report->maxfield < 1) Please do + if (!report || report->maxfield != 1) That way we are consistent with whole picolcd driver and a device deciding to change its HID-ABI will be properly detected. With that adjustment, Acked-by/Reviewed-by me Thanks, Bruno > return -EINVAL; > > while (cnt > 0 && (buf[cnt-1] == '\n' || buf[cnt-1] == '\r'))