|
Message-ID: <CAEih1qWG=Ww18e6j-07RKND47_xAbwvPyoyMyiiP8GgeE+fEJw@mail.gmail.com> Date: Wed, 18 Jan 2023 16:20:51 +0100 From: Pietro Borrello <borrello@...g.uniroma1.it> To: oss-security@...ts.openwall.com Subject: Linux Kernel: hid: NULL pointer dereference in hid_betopff_play() Hi all, I'm disclosing a possible DoS when plugging in a malicious USB device, which advertises itself as a betop USB device. A device driver must check that the device correctly registered the expected inputs and reports. Otherwise, a malicious USB device may violate assumptions throughout the driver's code. betopff_init() in the betop driver's code only checks that the device advertises at least 4 report values among all its fields, but hid_betopff_play() expects at least 4 report fields with a value each. A device advertising an output report with one field and 4 report values would pass the check but crash the kernel with a NULL pointer dereference in hid_betopff_play(), when accessing `betopff->report->field[2]->value[0]`. Best regards, Pietro Borrello
Powered by blists - more mailing lists
Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.