Re: [PATCH] x86: do not leak kernel page mapping locations

From: H. Peter Anvin
Date: Thu Feb 07 2013 - 14:26:37 EST


On 02/07/2013 09:44 AM, Kees Cook wrote:
> Without this patch, it is trivial to determine kernel page mappings by
> examining the error code reported to dmesg[1]. Instead, declare the entire
> kernel memory space as a violation of a present page.
>
> Additionally, since show_unhandled_signals is enabled by default, switch
> branch hinting to the more realistic expectation, and unobfuscate the
> setting of the PF_PROT bit to improve readability.
>
> [1] http://vulnfactory.org/blog/2013/02/06/a-linux-memory-trick/
>
> Reported-by: Dan Rosenberg <dan.j.rosenberg@xxxxxxxxx>
> Suggested-by: Brad Spengler <spender@xxxxxxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>

There is, of course, tons of information in dmesg which can be used for
nefarious purposes, and it is hard to avoid that without neutering dmesg
to uselessness.

So the question is to some degree how much this adds in isolation from
locking down dmesg (and if dmesg_restrict isn't enough, what more do we
need...)?

That being said, the patch doesn't seem to do any harm so I acked it and
Ingo is going to apply it.

-hpa



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/