Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.03.1304082350540.25182@linux-mips.org>
Date:   Mon, 8 Apr 2013 23:56:29 +0100 (BST)
From:   "Maciej W. Rozycki" <macro@...ux-mips.org>
To:     Kees Cook <keescook@...omium.org>
cc:     Ingo Molnar <mingo@...hat.com>, linux-kernel@...r.kernel.org,
        Thomas Gleixner <tglx@...utronix.de>,
        "H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
        Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
        Jeremy Fitzhardinge <jeremy@...p.org>,
        Marcelo Tosatti <mtosatti@...hat.com>,
        Alex Shi <alex.shi@...el.com>,
        Borislav Petkov <borislav.petkov@....com>,
        Alexander Duyck <alexander.h.duyck@...el.com>,
        Frederic Weisbecker <fweisbec@...il.com>,
        Steven Rostedt <rostedt@...dmis.org>,
        "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
        xen-devel@...ts.xensource.com,
        virtualization@...ts.linux-foundation.org,
        kernel-hardening@...ts.openwall.com,
        Dan Rosenberg <drosenberg@...curity.com>,
        Julien Tinnes <jln@...gle.com>, Will Drewry <wad@...omium.org>,
        Eric Northup <digitaleric@...gle.com>
Subject: Re: [PATCH] x86: make IDT read-only

On Mon, 8 Apr 2013, Kees Cook wrote:

> This makes the IDT unconditionally read-only. This primarily removes
> the IDT from being a target for arbitrary memory write attacks. It has
> an added benefit of also not leaking (via the "sidt" instruction) the
> kernel base offset, if it has been relocated.
[...]
> --- a/arch/x86/kernel/cpu/intel.c
> +++ b/arch/x86/kernel/cpu/intel.c
> @@ -215,7 +201,6 @@ static void __cpuinit intel_workarounds(struct cpuinfo_x86 *c)
>  
>  		c->f00f_bug = 1;
>  		if (!f00f_workaround_enabled) {
> -			trap_init_f00f_bug();
>  			printk(KERN_NOTICE "Intel Pentium with F0 0F bug - workaround enabled.\n");
>  			f00f_workaround_enabled = 1;
>  		}

 FWIW the change looks reasonable to me, however given that that it makes 
the arrangement unconditional and there is no longer a workaround to 
enable I think it would make sense to remove the conditional block quoted 
above altogether, along with the f00f_workaround_enabled variable itself 
(alternatively "Intel Pentium with F0 0F bug" alone could be printed 
instead and the name of the variable adjusted to make sense with the new 
meaning -- up to you to decide).

  Maciej

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.