[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87vbt6rao3.fsf@tassilo.jf.intel.com>
Date: Thu, 15 May 2014 14:31:40 -0700
From: Andi Kleen <andi@...stfloor.org>
To: Erik Bosman <erik@...emu.org>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/4] x86: SROP mitigation: implement signal canaries
Erik Bosman <erik@...emu.org> writes:
>
> diff --git a/arch/x86/ia32/ia32_signal.c b/arch/x86/ia32/ia32_signal.c
> index 2206757..1a9285a 100644
> --- a/arch/x86/ia32/ia32_signal.c
> +++ b/arch/x86/ia32/ia32_signal.c
> @@ -212,9 +212,18 @@ asmlinkage long sys32_sigreturn(void)
> struct sigframe_ia32 __user *frame = (struct sigframe_ia32 __user *)(regs->sp-8);
> sigset_t set;
> unsigned int ax;
> +#ifdef CONFIG_SIGNAL_CANARY
> + u32 canary;
> +#endif
Don't you completely break the ABI here? I'm sure there are programs out
there who hard code the offset into the FP state.
I think you either need to put it at the total end or somewhere
currently unused
Besides that I would remove the CONFIG_* once it works and just do it
unconditionally.
-Andi
--
ak@...ux.intel.com -- Speaking for myself only
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists