<<< Date Index >>>     <<< Thread Index >>>

Re: COSEINC Linux Advisory #1: Linux Kernel Parent Process Death Signal Vulnerability



> This doesn't change anything in what I said previously. If the sender's
> EUID or RUID equals to any of SUID or RUID of the victim or the sender
> process is root, the sender can send any signal to the victim; if none
> of those conditions are met, it obviously can't, no matter how and what
> signal it sends. For details look at check_kill_permission() and
> group_send_sig_info() in kernel/signal.c and reparent_thread() in
> kernel/exit.c in the kernel source tree (version 2.6.22).

Dan, could you take a closer look at what setuid(0) does? In the beggining
of setuid manual page you can read that:

       setuid  sets the effective user ID of the current process.
       If the effective userid of the caller is  root,  the  real
       and saved user ID's are also set.

In this case check_kill_permission() returns -EPERM for unprivileged
parent.