mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 13:44:15 +08:00
tty: Reset hupped state on open
A common security idiom is to hangup the current tty (via vhangup()) after forking but before execing a root shell. This hangs up any existing opens which other processes may have and ensures subsequent opens have the necessary permissions to open the root shell tty/pty. Reset the TTY_HUPPED state after the driver has successfully returned the opened tty (perform the reset while the tty is locked to avoid racing with concurrent hangups). Reported-by: Heorhi Valakhanovich <valahanovich@tut.by> Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Cc: stable <stable@vger.kernel.org> # 3.12 Tested-by: Heorhi Valakhanovich <valahanovich@tut.by> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
3dcf344bef
commit
d4855e1fc0
@ -2086,6 +2086,7 @@ retry_open:
|
||||
filp->f_op = &tty_fops;
|
||||
goto retry_open;
|
||||
}
|
||||
clear_bit(TTY_HUPPED, &tty->flags);
|
||||
tty_unlock(tty);
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user