On Mon, Jul 15, 2019 at 12:18 PM Hridya Valsaraju <hridya@xxxxxxxxxx> wrote: > > Currently, a transaction to context manager from its own process > is prevented by checking if its binder_proc struct is the same as > that of the sender. However, this would not catch cases where the > process opens the binder device again and uses the new fd to send > a transaction to the context manager. > > Reported-by: syzbot+8b3c354d33c4ac78bfad@xxxxxxxxxxxxxxxxxxxxxxxxx > Signed-off-by: Hridya Valsaraju <hridya@xxxxxxxxxx> Acked-by: Todd Kjos <tkjos@xxxxxxxxxx> > --- > drivers/android/binder.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/android/binder.c b/drivers/android/binder.c > index e4d25ebec5be..89b9cedae088 100644 > --- a/drivers/android/binder.c > +++ b/drivers/android/binder.c > @@ -3138,7 +3138,7 @@ static void binder_transaction(struct binder_proc *proc, > else > return_error = BR_DEAD_REPLY; > mutex_unlock(&context->context_mgr_node_lock); > - if (target_node && target_proc == proc) { > + if (target_node && target_proc->pid == proc->pid) { > binder_user_error("%d:%d got transaction to context manager from process owning it\n", > proc->pid, thread->pid); > return_error = BR_FAILED_REPLY; > -- > 2.22.0.510.g264f2c817a-goog > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel