Re: [PATCH v4 1/4] SROP Mitigation: Architecture independent code for signal cookies

From: Linus Torvalds
Date: Tue Mar 29 2016 - 19:04:29 EST

On Tue, Mar 29, 2016 at 2:53 PM, Scott Bauer <sbauer@xxxxxxxxxxxx> wrote:
> @@ -1231,6 +1232,8 @@ void setup_new_exec(struct linux_binprm * bprm)
> /* This is the point of no return */
> current->sas_ss_sp = current->sas_ss_size = 0;
> + get_random_bytes(&current->sig_cookie, sizeof(current->sig_cookie));
> +

This should probably just be

current->sig_cookie = get_random_long();

instead. That will use hardware random numbers if available, and be
*much* faster.

I realize that some people don't like the hardware random number
generators because they don't trust them, but quite frankly, for
something like this it's fine. If the attacker is in collusion with
the hardware manufacturer, you have way bigger problems than a SROP