From: Greg Kroah-Hartman Date: Mon, 8 Aug 2022 14:01:09 +0000 (+0200) Subject: 5.4-stable patches X-Git-Tag: v4.19.255~7 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2dad708c1623b5e033bf1ccd75547de8455fe428;p=thirdparty%2Fkernel%2Fstable-queue.git 5.4-stable patches added patches: macintosh-adb-fix-oob-read-in-do_adb_query-function.patch --- diff --git a/queue-5.4/macintosh-adb-fix-oob-read-in-do_adb_query-function.patch b/queue-5.4/macintosh-adb-fix-oob-read-in-do_adb_query-function.patch new file mode 100644 index 00000000000..8870d24ea97 --- /dev/null +++ b/queue-5.4/macintosh-adb-fix-oob-read-in-do_adb_query-function.patch @@ -0,0 +1,37 @@ +From fd97e4ad6d3b0c9fce3bca8ea8e6969d9ce7423b Mon Sep 17 00:00:00 2001 +From: Ning Qiang +Date: Wed, 13 Jul 2022 23:37:34 +0800 +Subject: macintosh/adb: fix oob read in do_adb_query() function + +From: Ning Qiang + +commit fd97e4ad6d3b0c9fce3bca8ea8e6969d9ce7423b upstream. + +In do_adb_query() function of drivers/macintosh/adb.c, req->data is copied +form userland. The parameter "req->data[2]" is missing check, the array +size of adb_handler[] is 16, so adb_handler[req->data[2]].original_address and +adb_handler[req->data[2]].handler_id will lead to oob read. + +Cc: stable +Signed-off-by: Ning Qiang +Reviewed-by: Kees Cook +Reviewed-by: Greg Kroah-Hartman +Acked-by: Benjamin Herrenschmidt +Signed-off-by: Michael Ellerman +Link: https://lore.kernel.org/r/20220713153734.2248-1-sohu0106@126.com +Signed-off-by: Greg Kroah-Hartman +--- + drivers/macintosh/adb.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/macintosh/adb.c ++++ b/drivers/macintosh/adb.c +@@ -647,7 +647,7 @@ do_adb_query(struct adb_request *req) + + switch(req->data[1]) { + case ADB_QUERY_GETDEVINFO: +- if (req->nbytes < 3) ++ if (req->nbytes < 3 || req->data[2] >= 16) + break; + mutex_lock(&adb_handler_mutex); + req->reply[0] = adb_handler[req->data[2]].original_address; diff --git a/queue-5.4/series b/queue-5.4/series index 6066f472279..0b71806cfd0 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -10,3 +10,4 @@ selftests-bpf-fix-dubious-pointer-arithmetic-test.patch kvm-don-t-null-dereference-ops-destroy.patch selftests-kvm-handle-compiler-optimizations-in-ucall.patch media-v4l2-mem2mem-apply-dst_queue_off_base-on-mmap-buffers-across-ioctls.patch +macintosh-adb-fix-oob-read-in-do_adb_query-function.patch