OpenCloudOS-Kernel/drivers/android
Carlos Llamas 1d7f104903 binder: check offset alignment in binder_get_object()
commit aaef73821a3b0194a01bd23ca77774f704a04d40 upstream.

Commit 6d98eb95b4 ("binder: avoid potential data leakage when copying
txn") introduced changes to how binder objects are copied. In doing so,
it unintentionally removed an offset alignment check done through calls
to binder_alloc_copy_from_buffer() -> check_buffer().

These calls were replaced in binder_get_object() with copy_from_user(),
so now an explicit offset alignment check is needed here. This avoids
later complications when unwinding the objects gets harder.

It is worth noting this check existed prior to commit 7a67a39320
("binder: add function to copy binder object from buffer"), likely
removed due to redundancy at the time.

Fixes: 6d98eb95b4 ("binder: avoid potential data leakage when copying txn")
Cc: stable@vger.kernel.org
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Acked-by: Todd Kjos <tkjos@google.com>
Link: https://lore.kernel.org/r/20240330190115.1877819-1-cmllamas@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-27 17:11:38 +02:00
..
Kconfig remove CONFIG_ANDROID 2022-07-01 10:41:09 +02:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
binder.c binder: check offset alignment in binder_get_object() 2024-04-27 17:11:38 +02:00
binder_alloc.c binder: fix race between mmput() and do_exit() 2024-01-25 15:35:42 -08:00
binder_alloc.h binder: fix memory leak in binder_init() 2023-08-04 15:25:01 +02:00
binder_alloc_selftest.c Revert "android: binder: stop saving a pointer to the VMA" 2023-05-13 20:30:16 +09:00
binder_internal.h Binder: Add async from to transaction record 2023-05-13 20:38:12 +09:00
binder_trace.h Binder: add TF_UPDATE_TXN to replace outdated txn 2022-06-27 16:16:30 +02:00
binderfs.c Char/Misc driver changes for 6.6-rc1 2023-09-01 09:53:54 -07:00