RE: [PATCH v2] HID: intel-ish-hid: clamp HID device count to MAX_HID_DEVICES
"Zhang, Lixu" <[email protected]> Fri, 31 Jul 2026 06:46:56 +0000
| Newsgroups | org.kernel.vger.linux-input,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <SJ0PR11MB5613DA4C6E57F1BB3706BC0593C82@SJ0PR11MB5613.namprd11.prod.outlook.com> |
>-----Original Message----- >From: srinivas pandruvada <[email protected]> >Sent: Friday, July 31, 2026 2:11 AM >To: Shen Yongchao <[email protected]>; Greg Kroah-Hartman ><[email protected]>; Zhang, Lixu <[email protected]> >Cc: Jiri Kosina <[email protected]>; Benjamin Tissoires <[email protected]>; >[email protected]; [email protected] >Subject: Re: [PATCH v2] HID: intel-ish-hid: clamp HID device count to >MAX_HID_DEVICES > >+Lixu Code-wise, the changes look good to me. Tested-by: Zhang Lixu <[email protected]> Thanks, Lixu > >On Thu, 2026-07-30 at 20:25 +0800, Shen Yongchao wrote: >> The HOSTIF_DM_ENUM_DEVICES response handler takes the HID device >count >> from the first payload byte of the ISH firmware response (max 255) and >> stores it in hid_dev_count without any bounds check. This value >> propagates to num_hid_devices and is used to index five fixed-size >> arrays in struct ishtp_cl_data (MAX_HID_DEVICES = 32): report_descr[], >> report_descr_size[], hid_sensor_hubs[], hid_descr[], and >> hid_descr_size[]. >> >> If the firmware reports more than 32 devices, hid_ishtp_cl_init() >> writes past all five arrays, corrupting subsequent struct fields >> (including work_struct members with embedded function pointers) and >> potentially adjacent heap objects. >> >> Clamp hid_dev_count to MAX_HID_DEVICES at the single point where it >> enters the driver (process_recv, ENUM_DEVICES branch), which covers >> both the probe and the reset paths. >> >> This is a data-validation hardening fix: the ISH firmware is within >> the platform trust boundary (loaded via CSME). >> >> This patch was drafted with AI assistance; the vulnerability analysis >> and source-level verification were done manually. >> >> Signed-off-by: Shen Yongchao <[email protected]> >> Fixes: 0b28cb4bcb17 ("HID: intel-ish-hid: ISH HID client driver") >> Cc: [email protected] > >Missing > >Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2] > > >Thanks, >Srinivas >